Fixed
Pavel Roskin wrote:
On Tue, 2009-02-03 at 22:30 +0100, phcoder wrote:
- status = efi_call_3 (b->wait_for_event, 1, &(i->wait_for_key), &index); + /* status = efi_call_3 (b->wait_for_event, 1, &(i->wait_for_key), &index);
        if (status != GRUB_EFI_SUCCESS)
-        return -1;
+        return -1;*/
+      grub_millisleep (10);

Please don't leave commented out code.  If you want a comment to be
there, you can write something.  If you want to preserve the file
history, Subversion does it already.


Index: ChangeLog
===================================================================
--- ChangeLog	(revision 1967)
+++ ChangeLog	(working copy)
@@ -1,3 +1,10 @@
+2009-02-04  Vladimir Serbinenko <phco...@gmail.com>
+
+	Don't rely on event for keyboard on EFI. It causes random hangs
+	Great thanks to Florian Idelberger for testing and helping finding this bug 
+
+	* term/efi/console.c: Replace wait for event with grub_millisleep (10)
+	
 2009-02-01  Felix Zielcke  <fziel...@z-51.de>
 
 	* INSTALL: Note that we now require at least autconf 2.59 and that LZO
Index: term/efi/console.c
===================================================================
--- term/efi/console.c	(revision 1967)
+++ term/efi/console.c	(working copy)
@@ -226,9 +226,9 @@
 
   do
     {
-      status = efi_call_3 (b->wait_for_event, 1, &(i->wait_for_key), &index);
-      if (status != GRUB_EFI_SUCCESS)
-        return -1;
+      /* Don't use wait_for_event it's known 
+	 to cause hangs on some mac models */
+      grub_millisleep (10);
       
       grub_console_checkkey ();
     }
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to