[PATCH 2/4] sys: remove kernel_shutdown_prepare's parameter

From: liguang
Date: Thu May 30 2013 - 03:59:45 EST


kernel_shutdown_prepare's parameter can be removed
by checking global 'system_state', so, maybe we
can save a register to be used :-).

Signed-off-by: liguang <lig.fnst@xxxxxxxxxxxxxx>
---
kernel/sys.c | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/kernel/sys.c b/kernel/sys.c
index 07c6177..7f56ed4 100644
--- a/kernel/sys.c
+++ b/kernel/sys.c
@@ -382,11 +382,10 @@ void kernel_restart(char *cmd)
}
EXPORT_SYMBOL_GPL(kernel_restart);

-static void kernel_shutdown_prepare(enum system_states state)
+static void kernel_shutdown_prepare(void)
{
blocking_notifier_call_chain(&reboot_notifier_list,
- (state == SYSTEM_HALT)?SYS_HALT:SYS_POWER_OFF, NULL);
- system_state = state;
+ (system_state == SYSTEM_HALT)?SYS_HALT:SYS_POWER_OFF, NULL);
usermodehelper_disable();
device_shutdown();
}
@@ -397,7 +396,7 @@ static void kernel_shutdown_prepare(enum system_states state)
*/
void kernel_halt(void)
{
- kernel_shutdown_prepare(SYSTEM_HALT);
+ kernel_shutdown_prepare();
disable_nonboot_cpus();
syscore_shutdown();
printk(KERN_EMERG "System halted.\n");
@@ -414,7 +413,7 @@ EXPORT_SYMBOL_GPL(kernel_halt);
*/
void kernel_power_off(void)
{
- kernel_shutdown_prepare(SYSTEM_POWER_OFF);
+ kernel_shutdown_prepare();
if (pm_power_off_prepare)
pm_power_off_prepare();
disable_nonboot_cpus();
@@ -484,11 +483,13 @@ SYSCALL_DEFINE4(reboot, int, magic1, int, magic2, unsigned int, cmd,
break;

case LINUX_REBOOT_CMD_HALT:
+ system_state = SYSTEM_HALT;
kernel_halt();
do_exit(0);
panic("cannot halt");

case LINUX_REBOOT_CMD_POWER_OFF:
+ system_state = SYSTEM_POWER_OFF;
kernel_power_off();
do_exit(0);
break;
--
1.7.2.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/