From: "Yu, Luming" See http://bugzilla.kernel.org/show_bug.cgi?id=6655 - extern decls never ever ever go in .c files. - The !CONFIG_ACPI stub should be inline - The !CONFIG_ACPI stub should be in a header file - The !CONFIG_ACPI stub has an extra (and buggy) semicolon. - The extra blank line in machine_emergency_restart() is unwelcome. Cc: "Brown, Len" DESC acpi-asus-s3-resume-fix-fix EDESC From: Andrew Morton arch/i386/kernel/reboot.c: In function 'acpi_disable': arch/i386/kernel/reboot.c:37: warning: control reaches end of non-void function Also, - extern decls never ever ever go in .c files. - The !CONFIG_ACPI stub should be inline - The !CONFIG_ACPI stub should be in a header file - The !CONFIG_ACPI stub has an extra (and buggy) semicolon. - The extra blank line in machine_emergency_restart() is unwelcome. Cc: "Brown, Len" Cc: "Yu, Luming" Signed-off-by: Andrew Morton --- arch/i386/kernel/reboot.c | 11 +++++++++++ 1 files changed, 11 insertions(+) diff -puN arch/i386/kernel/reboot.c~acpi-asus-s3-resume-fix arch/i386/kernel/reboot.c --- a/arch/i386/kernel/reboot.c~acpi-asus-s3-resume-fix +++ a/arch/i386/kernel/reboot.c @@ -30,6 +30,15 @@ static int reboot_thru_bios; #ifdef CONFIG_SMP static int reboot_cpu = -1; #endif +#ifdef CONFIG_ACPI +extern u32 acpi_disable(void); +#else +static u32 acpi_disable(void) +{ + return 0; +}; +#endif + static int __init reboot_setup(char *str) { while(1) { @@ -317,6 +326,8 @@ void machine_shutdown(void) void machine_emergency_restart(void) { + + acpi_disable(); if (!reboot_thru_bios) { if (efi_enabled) { efi.reset_system(EFI_RESET_COLD, EFI_SUCCESS, 0, NULL); _