[PATCH] x86/boot: Fix cmdline_find_option() prototype visibility

From: Borislav Petkov
Date: Tue Feb 05 2019 - 08:14:02 EST


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@xxxxxxx>
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@xxxxxxxxx>
Signed-off-by: Borislav Petkov <bp@xxxxxxx>
Cc: Chao Fan <fanc.fnst@xxxxxxxxxxxxxx>
Cc: x86@xxxxxxxxxx
Link: https://lkml.kernel.org/r/5c51daf0.83pQEkvDZILqoSYW%lkp@xxxxxxxxx
---
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.