[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202410292237.HA9vMqbC-lkp@intel.com>
Date: Tue, 29 Oct 2024 22:41:50 +0800
From: kernel test robot <lkp@...el.com>
To: Coiby Xu <coxu@...hat.com>, kexec@...ts.infradead.org
Cc: oe-kbuild-all@...ts.linux.dev, Ondrej Kozina <okozina@...hat.com>,
Milan Broz <gmazyland@...il.com>,
Thomas Staudt <tstaudt@...ibm.com>,
Daniel P . Berrangé <berrange@...hat.com>,
Kairui Song <ryncsn@...il.com>,
Jan Pazdziora <jpazdziora@...hat.com>,
Pingfan Liu <kernelfans@...il.com>, Baoquan He <bhe@...hat.com>,
Dave Young <dyoung@...hat.com>, linux-kernel@...r.kernel.org,
x86@...nel.org, Dave Hansen <dave.hansen@...el.com>,
Vitaly Kuznetsov <vkuznets@...hat.com>, Greg KH <greg@...ah.com>,
Vivek Goyal <vgoyal@...hat.com>,
Eric Biederman <ebiederm@...ssion.com>, Kees Cook <kees@...nel.org>,
"Gustavo A. R. Silva" <gustavoars@...nel.org>,
"(open list:KERNEL HARDENING (not covered by other areas):Keyword:b__counted_byb)" <linux-hardening@...r.kernel.org>
Subject: Re: [PATCH v6 3/7] crash_dump: store dm crypt keys in kdump reserved
memory
Hi Coiby,
kernel test robot noticed the following build errors:
[auto build test ERROR on e42b1a9a2557aa94fee47f078633677198386a52]
url: https://github.com/intel-lab-lkp/linux/commits/Coiby-Xu/kexec_file-allow-to-place-kexec_buf-randomly/20241029-135449
base: e42b1a9a2557aa94fee47f078633677198386a52
patch link: https://lore.kernel.org/r/20241029055223.210039-4-coxu%40redhat.com
patch subject: [PATCH v6 3/7] crash_dump: store dm crypt keys in kdump reserved memory
config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20241029/202410292237.HA9vMqbC-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 14.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241029/202410292237.HA9vMqbC-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202410292237.HA9vMqbC-lkp@intel.com/
All error/warnings (new ones prefixed by >>):
kernel/crash_dump_dm_crypt.c: In function 'crash_load_dm_crypt_keys':
>> kernel/crash_dump_dm_crypt.c:221:16: error: variable 'kbuf' has initializer but incomplete type
221 | struct kexec_buf kbuf = {
| ^~~~~~~~~
>> kernel/crash_dump_dm_crypt.c:222:18: error: 'struct kexec_buf' has no member named 'image'
222 | .image = image,
| ^~~~~
>> kernel/crash_dump_dm_crypt.c:222:26: warning: excess elements in struct initializer
222 | .image = image,
| ^~~~~
kernel/crash_dump_dm_crypt.c:222:26: note: (near initialization for 'kbuf')
>> kernel/crash_dump_dm_crypt.c:223:18: error: 'struct kexec_buf' has no member named 'buf_min'
223 | .buf_min = 0,
| ^~~~~~~
kernel/crash_dump_dm_crypt.c:223:28: warning: excess elements in struct initializer
223 | .buf_min = 0,
| ^
kernel/crash_dump_dm_crypt.c:223:28: note: (near initialization for 'kbuf')
>> kernel/crash_dump_dm_crypt.c:224:18: error: 'struct kexec_buf' has no member named 'buf_max'
224 | .buf_max = ULONG_MAX,
| ^~~~~~~
In file included from include/linux/limits.h:7,
from include/linux/thread_info.h:12,
from include/asm-generic/preempt.h:5,
from ./arch/loongarch/include/generated/asm/preempt.h:1,
from include/linux/preempt.h:79,
from include/linux/rcupdate.h:27,
from include/linux/rbtree.h:24,
from include/linux/key.h:15,
from kernel/crash_dump_dm_crypt.c:2:
>> include/vdso/limits.h:13:25: warning: excess elements in struct initializer
13 | #define ULONG_MAX (~0UL)
| ^
kernel/crash_dump_dm_crypt.c:224:28: note: in expansion of macro 'ULONG_MAX'
224 | .buf_max = ULONG_MAX,
| ^~~~~~~~~
include/vdso/limits.h:13:25: note: (near initialization for 'kbuf')
13 | #define ULONG_MAX (~0UL)
| ^
kernel/crash_dump_dm_crypt.c:224:28: note: in expansion of macro 'ULONG_MAX'
224 | .buf_max = ULONG_MAX,
| ^~~~~~~~~
>> kernel/crash_dump_dm_crypt.c:225:18: error: 'struct kexec_buf' has no member named 'top_down'
225 | .top_down = false,
| ^~~~~~~~
kernel/crash_dump_dm_crypt.c:225:29: warning: excess elements in struct initializer
225 | .top_down = false,
| ^~~~~
kernel/crash_dump_dm_crypt.c:225:29: note: (near initialization for 'kbuf')
>> kernel/crash_dump_dm_crypt.c:226:18: error: 'struct kexec_buf' has no member named 'random'
226 | .random = true,
| ^~~~~~
kernel/crash_dump_dm_crypt.c:226:27: warning: excess elements in struct initializer
226 | .random = true,
| ^~~~
kernel/crash_dump_dm_crypt.c:226:27: note: (near initialization for 'kbuf')
>> kernel/crash_dump_dm_crypt.c:221:26: error: storage size of 'kbuf' isn't known
221 | struct kexec_buf kbuf = {
| ^~~~
>> kernel/crash_dump_dm_crypt.c:246:20: error: 'KEXEC_BUF_MEM_UNKNOWN' undeclared (first use in this function)
246 | kbuf.mem = KEXEC_BUF_MEM_UNKNOWN;
| ^~~~~~~~~~~~~~~~~~~~~
kernel/crash_dump_dm_crypt.c:246:20: note: each undeclared identifier is reported only once for each function it appears in
>> kernel/crash_dump_dm_crypt.c:247:13: error: implicit declaration of function 'kexec_add_buffer' [-Wimplicit-function-declaration]
247 | r = kexec_add_buffer(&kbuf);
| ^~~~~~~~~~~~~~~~
>> kernel/crash_dump_dm_crypt.c:221:26: warning: unused variable 'kbuf' [-Wunused-variable]
221 | struct kexec_buf kbuf = {
| ^~~~
vim +/kbuf +221 kernel/crash_dump_dm_crypt.c
218
219 int crash_load_dm_crypt_keys(struct kimage *image)
220 {
> 221 struct kexec_buf kbuf = {
> 222 .image = image,
> 223 .buf_min = 0,
> 224 .buf_max = ULONG_MAX,
> 225 .top_down = false,
> 226 .random = true,
227 };
228 int r;
229
230
231 if (key_count <= 0) {
232 kexec_dprintk("No dm-crypt keys\n");
233 return -EINVAL;
234 }
235
236 image->dm_crypt_keys_addr = 0;
237 r = build_keys_header();
238 if (r)
239 return r;
240
241 kbuf.buffer = keys_header;
242 kbuf.bufsz = get_keys_header_size(key_count);
243
244 kbuf.memsz = kbuf.bufsz;
245 kbuf.buf_align = ELF_CORE_HEADER_ALIGN;
> 246 kbuf.mem = KEXEC_BUF_MEM_UNKNOWN;
> 247 r = kexec_add_buffer(&kbuf);
248 if (r) {
249 kvfree((void *)kbuf.buffer);
250 return r;
251 }
252 image->dm_crypt_keys_addr = kbuf.mem;
253 image->dm_crypt_keys_sz = kbuf.bufsz;
254 kexec_dprintk(
255 "Loaded dm crypt keys to kexec_buffer bufsz=0x%lx memsz=0x%lx\n",
256 kbuf.bufsz, kbuf.bufsz);
257
258 return r;
259 }
260
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists