[Bug 669481] Re: Timeout should not be -1 if $recordfail

Clint Byrum clint at fewbar.com
Wed Sep 12 18:47:16 UTC 2012

Hello Mikael, or anyone else affected,

Accepted grub2 into precise-proposed. The package will build now and be
available at http://launchpad.net/ubuntu/+source/grub2/1.99-21ubuntu3.3
in a few hours, and then in the -proposed repository.

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to
enable and use -proposed.  Your feedback will aid us getting this update
out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from
verification-needed to verification-done.  If it does not, change the
tag to verification-failed.  In either case, details of your testing
will help us make a better decision.

Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification .  Thank you in

** Changed in: grub2 (Ubuntu Precise)
       Status: Triaged => Fix Committed

** Tags added: verification-needed

You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2 in Ubuntu.

  Timeout should not be -1 if $recordfail

Status in “grub2” package in Ubuntu:
  Fix Released
Status in “grub2” source package in Precise:
  Fix Committed

Bug description:
  Binary package hint: grub2

  SRU justification

  If a system fails to boot to the point where it runs /etc/init.d/grub-common, then a subsequent reboot will leave the system  at a grub prompt which waits indefinitely for user input.  Systems such as cloud instances or other headless systems may not be able to provide the necessary input to grub, which results in unavailable system.

  [Test case]
  A thorough test case is mentioned in comment #8 and has been used to confirm that the Quantal fix was applicable.

  One shortcut to testing the fix is to disable execution of /etc/init.d
  /grub-common by doing :

  $ sudo chmod -x /etc/init.d/grub-common

  Without the fix, a reboot will result in the instance waiting at the
  GRUB prompt. With the proposed fix, it will boot normally.

  [Regression Potential]
  There is little potential as without intentional modification of /etc/default/grub, the variable defaults to its previous value of -1.

  My experience is that $recordfail is not always written successfully,
  which is by default tested in grub.cfg (through grub.d/00_header)

  This causes grub2 to set timeout=-1 which removes the timeout for
  bootup in these cases.

  On computers which have not been configured for "USB Legacy" in the
  BIOS but use USB keyboards, this looks as if grub has frozen - because
  the keyboard does not respond. The consequence is that the computer
  won't boot without either knowledge on how to configure BIOS (and
  what) or using a PS/2 keyboard (not always available or possible to

  My suggestion is that Ubuntu recognizes $recordfail but instead of
  disabling timeout (-1) it should be set to a relatively high value
  (such as 10 seconds). This will be enough to alert the user on what
  option is booting, and that the computer hasn't frozen, as well as
  enabling false/known failures to be ignored.

  Maybe a future addition to recognising $recordfail is to have a
  warning on the boot menu, but that is outside the scope of this

  ProblemType: Bug
  DistroRelease: Ubuntu 10.10
  Package: grub-pc 1.98+20100804-5ubuntu3
  ProcVersionSignature: Ubuntu 2.6.35-22.35-generic-pae
  Uname: Linux 2.6.35-22-generic-pae i686
  Architecture: i386
  Date: Mon Nov  1 15:33:30 2010
  InstallationMedia: Ubuntu-Server 10.10 "Maverick Meerkat" - Release i386 (20101007)
  SourcePackage: grub2

  Related bugs:
   * bug 1035279: instance hangs at grub prompt after reboot followed by euca-reboot-instances
   * bug 872244: grub2 recordfail logic prevents headless system from rebooting after power outage

To manage notifications about this bug go to:

More information about the foundations-bugs mailing list