lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <59fbd119-495a-4d00-9738-98c22b276c1f@redhat.com>
Date:   Thu, 14 Nov 2019 22:20:42 +0800
From:   lijiang <lijiang@...hat.com>
To:     Borislav Petkov <bp@...en8.de>
Cc:     linux-kernel@...r.kernel.org, tglx@...utronix.de, mingo@...hat.com,
        hpa@...or.com, x86@...nel.org, bhe@...hat.com, dyoung@...hat.com,
        jgross@...e.com, dhowells@...hat.com, Thomas.Lendacky@....com,
        ebiederm@...ssion.com, vgoyal@...hat.com, d.hatayama@...itsu.com,
        horms@...ge.net.au, kexec@...ts.infradead.org
Subject: Re: [PATCH 3/3 v9] kexec: Fix i386 build warnings that missed
 declaration of struct kimage

在 2019年11月14日 20:39, Borislav Petkov 写道:
> On Fri, Nov 08, 2019 at 05:00:27PM +0800, Lianbo Jiang wrote:
>> Kbuild test robot reported some build warnings as follow:
>>
>> arch/x86/include/asm/crash.h:5:32: warning: 'struct kimage' declared
>> inside parameter list will not be visible outside of this definition
>> or declaration
>>     int crash_load_segments(struct kimage *image);
>>                                    ^~~~~~
>>     int crash_copy_backup_region(struct kimage *image);
>>                                         ^~~~~~
>>     int crash_setup_memmap_entries(struct kimage *image,
>>                                           ^~~~~~
>> The 'struct kimage' is defined in the header file include/linux/kexec.h,
>> before using it, need to include its header file or make a declaration.
>> Otherwise the above warnings may be triggered.
>>
>> Add a declaration of struct kimage to the file arch/x86/include/asm/
>> crash.h, that will solve these compile warnings.
>>
>> Fixes: dd5f726076cc ("kexec: support for kexec on panic using new system call")
> 
> This is, of course, wrong. Your *first* patch is introducing those
> warnings and I'm wondering how did you not see them during building?
> 

I really saw my building result, but kbuild reported the following messages:

vim +5 arch/x86/include/asm/crash.h

dd5f726076cc76 Vivek Goyal 2014-08-08   4  
dd5f726076cc76 Vivek Goyal 2014-08-08  @5  int crash_load_segments(struct kimage *image);
dd5f726076cc76 Vivek Goyal 2014-08-08   6  int crash_copy_backup_region(struct kimage *image);
dd5f726076cc76 Vivek Goyal 2014-08-08   7  int crash_setup_memmap_entries(struct kimage *image,
dd5f726076cc76 Vivek Goyal 2014-08-08   8  		struct boot_params *params);
89f579ce99f7e0 Yi Wang     2018-11-22   9  void crash_smp_send_stop(void);
dd5f726076cc76 Vivek Goyal 2014-08-08  10  

:::::: The code at line 5 was first introduced by commit 
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
:::::: dd5f726076cc7639d9713b334c8c133f77c6757a kexec: support for kexec on panic using new system call
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Would you mind giving me any suggestions about this?

> In file included from arch/x86/realmode/init.c:11:
> ./arch/x86/include/asm/crash.h:5:32: warning: ‘struct kimage’ declared inside parameter list will not be visible outside of this definition or declaration
>     5 | int crash_load_segments(struct kimage *image);
>       |                                ^~~~~~
> ./arch/x86/include/asm/crash.h:6:37: warning: ‘struct kimage’ declared inside parameter list will not be visible outside of this definition or declaration
>     6 | int crash_copy_backup_region(struct kimage *image);
>       |                                     ^~~~~~
> ./arch/x86/include/asm/crash.h:7:39: warning: ‘struct kimage’ declared inside parameter list will not be visible outside of this definition or declaration
>     7 | int crash_setup_memmap_entries(struct kimage *image,
>       |
> 
> 
> And that happens because you've included asm/crash.h in
> arch/x86/realmode/init.c and it of course complains because it hasn't
> seen that struct yet.
> 

Exactly. Last time, i fixed the warnings in my first patch, please refer to the patch v8(resend).

Link: https://lkml.kernel.org/r/20191031033517.11282-2-lijiang@redhat.com
      -[PATCH 1/2 RESEND v8] x86/kdump: always reserve the low 1M when the crashkernel option is specified


And kbuild said that need to add the reported-by, please refer to the following Link.

Link: https://lkml.kernel.org/r/201910310233.EJRtTMWP%25lkp@intel.com

> If you fix the issue, kindly add following tag
> Reported-by: kbuild test robot <lkp@...el.com>

Any idea about this? Any suggestions will be appreciated.

Thanks.
Lianbo

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ