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-next>] [day] [month] [year] [list]
Message-ID: <20190205131352.GA27396@zn.tnic>
Date:   Tue, 5 Feb 2019 14:13:53 +0100
From:   Borislav Petkov <bp@...en8.de>
To:     kbuild test robot <lkp@...el.com>
Cc:     Chao Fan <fanc.fnst@...fujitsu.com>, x86-ml <x86@...nel.org>,
        lkml <linux-kernel@...r.kernel.org>
Subject: [PATCH] x86/boot: Fix cmdline_find_option() prototype visibility

On Wed, Jan 30, 2019 at 06:20:19PM +0100, Borislav Petkov wrote:
> On Thu, Jan 31, 2019 at 01:12:16AM +0800, kbuild test robot wrote:
> > tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/bp/bp.git  tip-x86-boot
> > branch HEAD: 593ab2163e72a9697814dbca7247928a2bbb8b49  x86/boot/KASLR: Limit KASLR to extract the kernel in immovable memory only
> > 
> > Regressions in current branch:
> > 
> > arch/x86/boot/compressed/acpi.c:37:8: warning: implicit declaration of function 'cmdline_find_option' [-Wimplicit-function-declaration]
> > 
> > Error ids grouped by kconfigs:
> > 
> > recent_errors
> > └── x86_64-randconfig-s4-01290430
> 
> I got a report this morning about x86_64-randconfig-g1-01290904 which I
> already fixed.
> 
> Which config is that x86_64-randconfig-s4-01290430?

Ok, I was able to trigger it. The below should fix it:

---
From: Borislav Petkov <bp@...e.de>
Subject: [PATCH] x86/boot: Fix cmdline_find_option() prototype visibility
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

  ac09c5f43cf6 ("x86/boot: Build the command line parsing code unconditionally")

enabled building the command line parsing code unconditionally but it
forgot to remove the respected ifdeffery around the prototypes in the
misc.h header, leading to

  arch/x86/boot/compressed/acpi.c: In function ‘get_acpi_rsdp’:
  arch/x86/boot/compressed/acpi.c:37:8: warning: implicit declaration of function \
	  ‘cmdline_find_option’ [-Wimplicit-function-declaration]
    ret = cmdline_find_option("acpi_rsdp", val, MAX_ADDR_LEN);
          ^~~~~~~~~~~~~~~~~~~

for configs where neither CONFIG_EARLY_PRINTK nor CONFIG_RANDOMIZE_BASE
was defined.

Drop the ifdeffery in the header too.

Fixes: ac09c5f43cf6 ("x86/boot: Build the command line parsing code unconditionally")
Reported-by: kbuild test robot <lkp@...el.com>
Signed-off-by: Borislav Petkov <bp@...e.de>
Cc: Chao Fan <fanc.fnst@...fujitsu.com>
Cc: x86@...nel.org
Link: https://lkml.kernel.org/r/5c51daf0.83pQEkvDZILqoSYW%lkp@intel.com
---
 arch/x86/boot/compressed/misc.h | 2 --
 1 file changed, 2 deletions(-)

diff --git a/arch/x86/boot/compressed/misc.h b/arch/x86/boot/compressed/misc.h
index 19e8231a6fd6..5b8d51996cdd 100644
--- a/arch/x86/boot/compressed/misc.h
+++ b/arch/x86/boot/compressed/misc.h
@@ -66,11 +66,9 @@ static inline void debug_puthex(const char *s)
 
 #endif
 
-#if CONFIG_EARLY_PRINTK || CONFIG_RANDOMIZE_BASE
 /* cmdline.c */
 int cmdline_find_option(const char *option, char *buffer, int bufsize);
 int cmdline_find_option_bool(const char *option);
-#endif
 
 struct mem_vector {
 	unsigned long long start;
-- 
2.19.1

-- 
Regards/Gruss,
    Boris.

Good mailing practices for 400: avoid top-posting and trim the reply.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ