lkml.org 
[lkml]   [2013]   [May]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 2/4] sys: remove kernel_shutdown_prepare's parameter
Date
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@cn.fujitsu.com>
---
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


\
 
 \ /
  Last update: 2013-05-30 10:41    [W:0.210 / U:0.652 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site