Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6
This commit is contained in:
@@ -53,7 +53,7 @@ static void power_down(suspend_disk_method_t mode)
|
||||
|
||||
switch(mode) {
|
||||
case PM_DISK_PLATFORM:
|
||||
kernel_power_off_prepare();
|
||||
kernel_shutdown_prepare(SYSTEM_SUSPEND_DISK);
|
||||
error = pm_ops->enter(PM_SUSPEND_DISK);
|
||||
break;
|
||||
case PM_DISK_SHUTDOWN:
|
||||
@@ -95,13 +95,6 @@ static int prepare_processes(void)
|
||||
goto thaw;
|
||||
}
|
||||
|
||||
if (pm_disk_mode == PM_DISK_PLATFORM) {
|
||||
if (pm_ops && pm_ops->prepare) {
|
||||
if ((error = pm_ops->prepare(PM_SUSPEND_DISK)))
|
||||
goto thaw;
|
||||
}
|
||||
}
|
||||
|
||||
/* Free memory before shutting down devices. */
|
||||
if (!(error = swsusp_shrink_memory()))
|
||||
return 0;
|
||||
|
@@ -133,10 +133,10 @@ static int suspend_enter(suspend_state_t state)
|
||||
static void suspend_finish(suspend_state_t state)
|
||||
{
|
||||
device_resume();
|
||||
if (pm_ops && pm_ops->finish)
|
||||
pm_ops->finish(state);
|
||||
thaw_processes();
|
||||
enable_nonboot_cpus();
|
||||
if (pm_ops && pm_ops->finish)
|
||||
pm_ops->finish(state);
|
||||
pm_restore_console();
|
||||
}
|
||||
|
||||
|
25
kernel/sys.c
25
kernel/sys.c
@@ -440,23 +440,25 @@ void kernel_kexec(void)
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(kernel_kexec);
|
||||
|
||||
void kernel_shutdown_prepare(enum system_states state)
|
||||
{
|
||||
notifier_call_chain(&reboot_notifier_list,
|
||||
(state == SYSTEM_HALT)?SYS_HALT:SYS_POWER_OFF, NULL);
|
||||
system_state = state;
|
||||
device_shutdown();
|
||||
}
|
||||
/**
|
||||
* kernel_halt - halt the system
|
||||
*
|
||||
* Shutdown everything and perform a clean system halt.
|
||||
*/
|
||||
void kernel_halt_prepare(void)
|
||||
{
|
||||
notifier_call_chain(&reboot_notifier_list, SYS_HALT, NULL);
|
||||
system_state = SYSTEM_HALT;
|
||||
device_shutdown();
|
||||
}
|
||||
void kernel_halt(void)
|
||||
{
|
||||
kernel_halt_prepare();
|
||||
kernel_shutdown_prepare(SYSTEM_HALT);
|
||||
printk(KERN_EMERG "System halted.\n");
|
||||
machine_halt();
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL_GPL(kernel_halt);
|
||||
|
||||
/**
|
||||
@@ -464,20 +466,13 @@ EXPORT_SYMBOL_GPL(kernel_halt);
|
||||
*
|
||||
* Shutdown everything and perform a clean system power_off.
|
||||
*/
|
||||
void kernel_power_off_prepare(void)
|
||||
{
|
||||
notifier_call_chain(&reboot_notifier_list, SYS_POWER_OFF, NULL);
|
||||
system_state = SYSTEM_POWER_OFF;
|
||||
device_shutdown();
|
||||
}
|
||||
void kernel_power_off(void)
|
||||
{
|
||||
kernel_power_off_prepare();
|
||||
kernel_shutdown_prepare(SYSTEM_POWER_OFF);
|
||||
printk(KERN_EMERG "Power down.\n");
|
||||
machine_power_off();
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(kernel_power_off);
|
||||
|
||||
/*
|
||||
* Reboot system call: for obvious reasons only root may call it,
|
||||
* and even root needs to set up some magic numbers in the registers
|
||||
|
Reference in New Issue
Block a user