|
@@ -804,6 +804,7 @@ static void kernel_restart_prepare(char *cmd)
|
|
blocking_notifier_call_chain(&reboot_notifier_list, SYS_RESTART, cmd);
|
|
blocking_notifier_call_chain(&reboot_notifier_list, SYS_RESTART, cmd);
|
|
system_state = SYSTEM_RESTART;
|
|
system_state = SYSTEM_RESTART;
|
|
device_shutdown();
|
|
device_shutdown();
|
|
|
|
+ sysdev_shutdown();
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -860,6 +861,7 @@ void kernel_shutdown_prepare(enum system_states state)
|
|
void kernel_halt(void)
|
|
void kernel_halt(void)
|
|
{
|
|
{
|
|
kernel_shutdown_prepare(SYSTEM_HALT);
|
|
kernel_shutdown_prepare(SYSTEM_HALT);
|
|
|
|
+ sysdev_shutdown();
|
|
printk(KERN_EMERG "System halted.\n");
|
|
printk(KERN_EMERG "System halted.\n");
|
|
machine_halt();
|
|
machine_halt();
|
|
}
|
|
}
|
|
@@ -876,6 +878,7 @@ void kernel_power_off(void)
|
|
kernel_shutdown_prepare(SYSTEM_POWER_OFF);
|
|
kernel_shutdown_prepare(SYSTEM_POWER_OFF);
|
|
if (pm_power_off_prepare)
|
|
if (pm_power_off_prepare)
|
|
pm_power_off_prepare();
|
|
pm_power_off_prepare();
|
|
|
|
+ sysdev_shutdown();
|
|
printk(KERN_EMERG "Power down.\n");
|
|
printk(KERN_EMERG "Power down.\n");
|
|
machine_power_off();
|
|
machine_power_off();
|
|
}
|
|
}
|