ARM: kernel: flush console and disable irqs before machine_shutdown
Tom Cherry [Tue, 13 Mar 2012 22:31:08 +0000 (15:31 -0700)]
Bug 952455

Change-Id: I7400b519eccb274c1b5251032696e10e16ee1c42
Signed-off-by: Tom Cherry <tcherry@nvidia.com>
Reviewed-on: http://git-master/r/89876
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bo Yan <byan@nvidia.com>
Reviewed-by: Dan Willemsen <dwillemsen@nvidia.com>

arch/arm/kernel/process.c

index d33f093..3a2da77 100644 (file)
@@ -131,14 +131,6 @@ void arm_machine_flush_console(void)
 
 void arm_machine_restart(char mode, const char *cmd)
 {
-       /* Flush the console to make sure all the relevant messages make it
-        * out to the console drivers */
-       arm_machine_flush_console();
-
-       /* Disable interrupts first */
-       local_irq_disable();
-       local_fiq_disable();
-
        /*
         * Tell the mm system that we are going to reboot -
         * we may need it to insert some 1:1 mappings so that
@@ -293,6 +285,14 @@ void machine_power_off(void)
 
 void machine_restart(char *cmd)
 {
+       /* Flush the console to make sure all the relevant messages make it
+        * out to the console drivers */
+       arm_machine_flush_console();
+
+       /* Disable interrupts first */
+       local_irq_disable();
+       local_fiq_disable();
+
        machine_shutdown();
        arm_pm_restart(reboot_mode, cmd);
 }