]> git.ipfire.org Git - thirdparty/grub.git/commitdiff
* include/grub/misc.h (grub_reboot): Declare as noreturn.
authorColin Watson <cjwatson@ubuntu.com>
Fri, 2 Jul 2010 12:47:14 +0000 (13:47 +0100)
committerColin Watson <cjwatson@ubuntu.com>
Fri, 2 Jul 2010 12:47:14 +0000 (13:47 +0100)
* kern/efi/efi.c (grub_reboot): Don't return, even if reset_system
fails.
(grub_halt): Likewise.
* kern/ieee1275/openfw.c (grub_reboot): Don't return, even if
reset-all fails.
(grub_halt): Don't return, even if all of shut-down, power-off, and
poweroff fail.

ChangeLog
include/grub/misc.h
kern/efi/efi.c
kern/ieee1275/openfw.c

index a8c5b4503d7ff649b8931a4b253cbc8b93a22f21..e1e7ef00d7868ece72107bcb4451188b171095d1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
+
+       * include/grub/misc.h (grub_reboot): Declare as noreturn.
+       * kern/efi/efi.c (grub_reboot): Don't return, even if reset_system
+       fails.
+       (grub_halt): Likewise.
+       * kern/ieee1275/openfw.c (grub_reboot): Don't return, even if
+       reset-all fails.
+       (grub_halt): Don't return, even if all of shut-down, power-off, and
+       poweroff fail.
+
 2010-07-02  Colin Watson  <cjwatson@ubuntu.com>
 
        * kern/efi/init.c (grub_efi_init): set_watchdog_timer takes four
index a1b753250b338ec8745541db220d0f5f80e3af53..909e85b5f0380ffc915afcb91669550095d54447 100644 (file)
@@ -298,7 +298,7 @@ grub_div_roundup (unsigned int x, unsigned int y)
 }
 
 /* Reboot the machine.  */
-void EXPORT_FUNC (grub_reboot) (void);
+void EXPORT_FUNC (grub_reboot) (void) __attribute__ ((noreturn));
 
 #ifdef GRUB_MACHINE_PCBIOS
 /* Halt the system, using APM if possible. If NO_APM is true, don't
index d8b22553545ee4afdd1d32a9f444da15f337ba5b..126e40901c155aca010b2c1b89989b5a5ba64201 100644 (file)
@@ -170,6 +170,7 @@ grub_reboot (void)
   grub_efi_fini ();
   efi_call_4 (grub_efi_system_table->runtime_services->reset_system,
               GRUB_EFI_RESET_COLD, GRUB_EFI_SUCCESS, 0, NULL);
+  for (;;) ;
 }
 #endif
 
@@ -179,6 +180,7 @@ grub_halt (void)
   grub_efi_fini ();
   efi_call_4 (grub_efi_system_table->runtime_services->reset_system,
               GRUB_EFI_RESET_SHUTDOWN, GRUB_EFI_SUCCESS, 0, NULL);
+  for (;;) ;
 }
 
 int
index 5693f3be0760f0f648cd3c62778a008ae89ee1f6..75767d13c0fa8e6df52c15de0a73af4846f09ab1 100644 (file)
@@ -420,6 +420,7 @@ void
 grub_reboot (void)
 {
   grub_ieee1275_interpret ("reset-all", 0);
+  for (;;) ;
 }
 #endif
 
@@ -431,4 +432,5 @@ grub_halt (void)
   grub_ieee1275_interpret ("shut-down", 0);
   grub_ieee1275_interpret ("power-off", 0);
   grub_ieee1275_interpret ("poweroff", 0);
+  for (;;) ;
 }