All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Sasha Levin <sashal@kernel.org>,
	pasha.tatashin@soleen.com, rppt@kernel.org
Cc: oe-kbuild-all@lists.linux.dev, pratyush@kernel.org,
	linux-kernel@vger.kernel.org, surenb@google.com,
	Sasha Levin <sashal@kernel.org>
Subject: Re: [PATCH] kexec: allow KEXEC_HANDOVER to build with COMPILE_TEST
Date: Thu, 5 Feb 2026 10:05:58 +0800	[thread overview]
Message-ID: <202602050952.VeOX2Uoh-lkp@intel.com> (raw)
In-Reply-To: <20260204182816.2463931-1-sashal@kernel.org>

Hi Sasha,

kernel test robot noticed the following build warnings:

[auto build test WARNING on linus/master]
[also build test WARNING on v6.19-rc8 next-20260204]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Sasha-Levin/kexec-allow-KEXEC_HANDOVER-to-build-with-COMPILE_TEST/20260205-023202
base:   linus/master
patch link:    https://lore.kernel.org/r/20260204182816.2463931-1-sashal%40kernel.org
patch subject: [PATCH] kexec: allow KEXEC_HANDOVER to build with COMPILE_TEST
config: um-allyesconfig (https://download.01.org/0day-ci/archive/20260205/202602050952.VeOX2Uoh-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260205/202602050952.VeOX2Uoh-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202602050952.VeOX2Uoh-lkp@intel.com/

All warnings (new ones prefixed by >>):

   kernel/liveupdate/kexec_handover.c: In function 'kho_fill_kimage':
   kernel/liveupdate/kexec_handover.c:1547:26: error: storage size of 'scratch' isn't known
    1547 |         struct kexec_buf scratch;
         |                          ^~~~~~~
   kernel/liveupdate/kexec_handover.c:1552:14: error: invalid use of undefined type 'struct kimage'
    1552 |         image->kho.fdt = virt_to_phys(kho_out.fdt);
         |              ^~
   kernel/liveupdate/kexec_handover.c:1556:18: error: 'struct kexec_buf' has no member named 'image'
    1556 |                 .image = image,
         |                  ^~~~~
>> kernel/liveupdate/kexec_handover.c:1556:26: warning: excess elements in struct initializer
    1556 |                 .image = image,
         |                          ^~~~~
   kernel/liveupdate/kexec_handover.c:1556:26: note: (near initialization for '(anonymous)')
   kernel/liveupdate/kexec_handover.c:1557:18: error: 'struct kexec_buf' has no member named 'buffer'
    1557 |                 .buffer = kho_scratch,
         |                  ^~~~~~
   kernel/liveupdate/kexec_handover.c:1557:27: warning: excess elements in struct initializer
    1557 |                 .buffer = kho_scratch,
         |                           ^~~~~~~~~~~
   kernel/liveupdate/kexec_handover.c:1557:27: note: (near initialization for '(anonymous)')
   kernel/liveupdate/kexec_handover.c:1558:18: error: 'struct kexec_buf' has no member named 'bufsz'
    1558 |                 .bufsz = scratch_size,
         |                  ^~~~~
   kernel/liveupdate/kexec_handover.c:1558:26: warning: excess elements in struct initializer
    1558 |                 .bufsz = scratch_size,
         |                          ^~~~~~~~~~~~
   kernel/liveupdate/kexec_handover.c:1558:26: note: (near initialization for '(anonymous)')
   kernel/liveupdate/kexec_handover.c:1559:18: error: 'struct kexec_buf' has no member named 'mem'
    1559 |                 .mem = KEXEC_BUF_MEM_UNKNOWN,
         |                  ^~~
   kernel/liveupdate/kexec_handover.c:1559:24: error: 'KEXEC_BUF_MEM_UNKNOWN' undeclared (first use in this function)
    1559 |                 .mem = KEXEC_BUF_MEM_UNKNOWN,
         |                        ^~~~~~~~~~~~~~~~~~~~~
   kernel/liveupdate/kexec_handover.c:1559:24: note: each undeclared identifier is reported only once for each function it appears in
   kernel/liveupdate/kexec_handover.c:1559:24: warning: excess elements in struct initializer
   kernel/liveupdate/kexec_handover.c:1559:24: note: (near initialization for '(anonymous)')
   kernel/liveupdate/kexec_handover.c:1560:18: error: 'struct kexec_buf' has no member named 'memsz'
    1560 |                 .memsz = scratch_size,
         |                  ^~~~~
   kernel/liveupdate/kexec_handover.c:1560:26: warning: excess elements in struct initializer
    1560 |                 .memsz = scratch_size,
         |                          ^~~~~~~~~~~~
   kernel/liveupdate/kexec_handover.c:1560:26: note: (near initialization for '(anonymous)')
   kernel/liveupdate/kexec_handover.c:1561:18: error: 'struct kexec_buf' has no member named 'buf_align'
    1561 |                 .buf_align = SZ_64K, /* Makes it easier to map */
         |                  ^~~~~~~~~
   In file included from include/linux/mm.h:29,
                    from include/linux/pid_namespace.h:7,
                    from include/linux/ptrace.h:10,
                    from include/linux/elfcore.h:11,
                    from include/linux/vmcore_info.h:6,
                    from include/linux/kexec.h:18,
                    from kernel/liveupdate/kexec_handover.c:16:
>> include/linux/sizes.h:28:41: warning: excess elements in struct initializer
      28 | #define SZ_64K                          0x00010000
         |                                         ^~~~~~~~~~
   kernel/liveupdate/kexec_handover.c:1561:30: note: in expansion of macro 'SZ_64K'
    1561 |                 .buf_align = SZ_64K, /* Makes it easier to map */
         |                              ^~~~~~
   include/linux/sizes.h:28:41: note: (near initialization for '(anonymous)')
      28 | #define SZ_64K                          0x00010000
         |                                         ^~~~~~~~~~
   kernel/liveupdate/kexec_handover.c:1561:30: note: in expansion of macro 'SZ_64K'
    1561 |                 .buf_align = SZ_64K, /* Makes it easier to map */
         |                              ^~~~~~
   kernel/liveupdate/kexec_handover.c:1562:18: error: 'struct kexec_buf' has no member named 'buf_max'
    1562 |                 .buf_max = ULONG_MAX,
         |                  ^~~~~~~
   In file included from include/linux/limits.h:7,
                    from include/linux/overflow.h:6,
                    from include/linux/bits.h:32,
                    from include/linux/bitops.h:6,
                    from include/linux/bitmap.h:8,
                    from include/linux/nodemask.h:91,
                    from include/linux/numa.h:6,
                    from include/linux/cma.h:7,
                    from kernel/liveupdate/kexec_handover.c:13:
>> include/vdso/limits.h:13:25: warning: excess elements in struct initializer
      13 | #define ULONG_MAX       (~0UL)
         |                         ^
   kernel/liveupdate/kexec_handover.c:1562:28: note: in expansion of macro 'ULONG_MAX'
    1562 |                 .buf_max = ULONG_MAX,
         |                            ^~~~~~~~~
   include/vdso/limits.h:13:25: note: (near initialization for '(anonymous)')
      13 | #define ULONG_MAX       (~0UL)
         |                         ^
   kernel/liveupdate/kexec_handover.c:1562:28: note: in expansion of macro 'ULONG_MAX'
    1562 |                 .buf_max = ULONG_MAX,
         |                            ^~~~~~~~~
   kernel/liveupdate/kexec_handover.c:1563:18: error: 'struct kexec_buf' has no member named 'top_down'
    1563 |                 .top_down = true,
         |                  ^~~~~~~~
   kernel/liveupdate/kexec_handover.c:1563:29: warning: excess elements in struct initializer
    1563 |                 .top_down = true,
         |                             ^~~~
   kernel/liveupdate/kexec_handover.c:1563:29: note: (near initialization for '(anonymous)')
   kernel/liveupdate/kexec_handover.c:1555:37: error: invalid use of undefined type 'struct kexec_buf'
    1555 |         scratch = (struct kexec_buf){
         |                                     ^
   kernel/liveupdate/kexec_handover.c:1565:15: error: implicit declaration of function 'kexec_add_buffer' [-Wimplicit-function-declaration]
    1565 |         err = kexec_add_buffer(&scratch);
         |               ^~~~~~~~~~~~~~~~
   kernel/liveupdate/kexec_handover.c:1568:14: error: invalid use of undefined type 'struct kimage'
    1568 |         image->kho.scratch = &image->segment[image->nr_segments - 1];
         |              ^~
   kernel/liveupdate/kexec_handover.c:1568:36: error: invalid use of undefined type 'struct kimage'
    1568 |         image->kho.scratch = &image->segment[image->nr_segments - 1];
         |                                    ^~
   kernel/liveupdate/kexec_handover.c:1568:51: error: invalid use of undefined type 'struct kimage'
    1568 |         image->kho.scratch = &image->segment[image->nr_segments - 1];
         |                                                   ^~
>> kernel/liveupdate/kexec_handover.c:1547:26: warning: unused variable 'scratch' [-Wunused-variable]
    1547 |         struct kexec_buf scratch;
         |                          ^~~~~~~
   kernel/liveupdate/kexec_handover.c: In function 'kho_locate_mem_hole':
   kernel/liveupdate/kexec_handover.c:1599:32: error: invalid use of undefined type 'struct kexec_buf'
    1599 |         if (!kho_enable || kbuf->image->type == KEXEC_TYPE_CRASH)
         |                                ^~
   kernel/liveupdate/kexec_handover.c:1599:49: error: 'KEXEC_TYPE_CRASH' undeclared (first use in this function); did you mean 'KEXEC_ON_CRASH'?
    1599 |         if (!kho_enable || kbuf->image->type == KEXEC_TYPE_CRASH)
         |                                                 ^~~~~~~~~~~~~~~~
         |                                                 KEXEC_ON_CRASH


vim +1556 kernel/liveupdate/kexec_handover.c

3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1542  
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1543  int kho_fill_kimage(struct kimage *image)
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1544  {
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1545  	ssize_t scratch_size;
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1546  	int err = 0;
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09 @1547  	struct kexec_buf scratch;
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1548  
d7255959b69a4e kernel/liveupdate/kexec_handover.c Pasha Tatashin            2025-11-14  1549  	if (!kho_enable)
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1550  		return 0;
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1551  
70f9133096c833 kernel/kexec_handover.c            Mike Rapoport (Microsoft  2025-11-01  1552) 	image->kho.fdt = virt_to_phys(kho_out.fdt);
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1553  
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1554  	scratch_size = sizeof(*kho_scratch) * kho_scratch_cnt;
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1555  	scratch = (struct kexec_buf){
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09 @1556  		.image = image,
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1557  		.buffer = kho_scratch,
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1558  		.bufsz = scratch_size,
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1559  		.mem = KEXEC_BUF_MEM_UNKNOWN,
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1560  		.memsz = scratch_size,
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1561  		.buf_align = SZ_64K, /* Makes it easier to map */
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1562  		.buf_max = ULONG_MAX,
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1563  		.top_down = true,
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1564  	};
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1565  	err = kexec_add_buffer(&scratch);
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1566  	if (err)
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1567  		return err;
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09 @1568  	image->kho.scratch = &image->segment[image->nr_segments - 1];
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1569  
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1570  	return 0;
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1571  }
3bdecc3c93f9f6 kernel/kexec_handover.c            Alexander Graf            2025-05-09  1572  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

  parent reply	other threads:[~2026-02-05  2:06 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-04 18:28 [PATCH] kexec: allow KEXEC_HANDOVER to build with COMPILE_TEST Sasha Levin
2026-02-04 22:32 ` Suren Baghdasaryan
2026-02-05  0:22 ` kernel test robot
2026-02-05  2:05 ` kernel test robot [this message]
2026-02-05  2:05 ` kernel test robot
2026-02-05 12:00 ` Mike Rapoport
2026-02-05 12:07   ` Pratyush Yadav
2026-02-05 12:05 ` kernel test robot
2026-02-06 21:52 ` [PATCH v2] " Sasha Levin
2026-02-07  7:40   ` Mike Rapoport
2026-02-07 16:06   ` Pasha Tatashin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202602050952.VeOX2Uoh-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=pasha.tatashin@soleen.com \
    --cc=pratyush@kernel.org \
    --cc=rppt@kernel.org \
    --cc=sashal@kernel.org \
    --cc=surenb@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.