ACPI: Fix build when disabled
authorDavid Rientjes <rientjes@google.com>
Tue, 2 Oct 2012 03:38:47 +0000 (20:38 -0700)
committerH. Peter Anvin <hpa@linux.intel.com>
Tue, 2 Oct 2012 03:41:43 +0000 (20:41 -0700)
"ACPI: Store valid ACPI tables passed via early initrd in reserved
memblock areas" breaks the build if either CONFIG_ACPI or
CONFIG_BLK_DEV_INITRD is disabled:

arch/x86/kernel/setup.c: In function 'setup_arch':
arch/x86/kernel/setup.c:944: error: implicit declaration of function 'acpi_initrd_override'

or

arch/x86/built-in.o: In function `setup_arch':
(.init.text+0x1397): undefined reference to `initrd_start'
arch/x86/built-in.o: In function `setup_arch':
(.init.text+0x139e): undefined reference to `initrd_end'

The dummy acpi_initrd_override() function in acpi.h isn't defined without
CONFIG_ACPI and initrd_{start,end} are declared but not defined without
CONFIG_BLK_DEV_INITRD.

[ hpa: applying this as a fix, but this really should be done cleaner ]

Signed-off-by: David Rientjes <rientjes@google.com>
Link: http://lkml.kernel.org/r/alpine.DEB.2.00.1210012032470.31644@chino.kir.corp.google.com
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Cc: Thomas Renninger <trenn@suse.de>
Cc: Len Brown <lenb@kernel.org>
arch/x86/kernel/setup.c

index 764e543..bf82c1e 100644 (file)
@@ -941,7 +941,9 @@ void __init setup_arch(char **cmdline_p)
 
        reserve_initrd();
 
+#if defined(CONFIG_ACPI) && defined(CONFIG_BLK_DEV_INITRD)
        acpi_initrd_override((void *)initrd_start, initrd_end - initrd_start);
+#endif
 
        reserve_crashkernel();