Hello Oliver, or anyone else affected,

Accepted initramfs-tools into disco-proposed. The package will build now
and be available at https://launchpad.net/ubuntu/+source/initramfs-
tools/0.131ubuntu19.2 in a few hours, and then in the -proposed

Please help us by testing this new package.  See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on 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 add a comment to this bug,
mentioning the version of the package you tested and change the tag from
verification-needed-disco to verification-done-disco. If it does not fix
the bug for you, please add a comment stating that, and change the tag
to verification-failed-disco. In either case, without details of your
testing we will not be able to proceed.

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

N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.

** Changed in: initramfs-tools (Ubuntu Disco)
       Status: In Progress => Fix Committed

** Tags added: verification-needed verification-needed-disco

** Changed in: initramfs-tools (Ubuntu Bionic)
       Status: In Progress => Fix Committed

** Tags added: verification-needed-bionic

You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to initramfs-tools in Ubuntu.

  panic=-1 is completely ignored by the initrd causing unexpected

Status in initramfs-tools package in Ubuntu:
  Fix Released
Status in initramfs-tools source package in Xenial:
  Fix Committed
Status in initramfs-tools source package in Bionic:
  Fix Committed
Status in initramfs-tools source package in Disco:
  Fix Committed
Status in initramfs-tools source package in Eoan:
  Fix Released

Bug description:
  in Ubuntu Core we default to using panic=-1 on the kernel command line 
(documented at [1]) to speed up the auto-rollback mechanism of the kernel. on a 
kernel level this works just fine and the system reboots immediately ...

  when in the initramfs during boot and a panic occurs, no reboot
  happens at all, the initrd spawns a shell regardless of the panic=
  value ...

  [Test case]

  Before booting change root=$foo to root=x$foo - this will make it
  panic. Then test that

  1) "panic=-1" causes an immediate reboot
  2) "panic=5" waits 5 seconds
  3) no "panic" drops you to a shell

  [Regression potential]
  This adds some very specific checks for -1 in places that use ${panic}, as 
such the regression potential is somewhat limited. If there were a regression, 
it could be a syntax error (causing boot to fail) or a sleep not working 
correctly (causing sleep to, well, not sleep) - but that's unrealistic.

  [Other info]
  this is caused by a filter in  /usr/share/initramfs-tools/init

                  case ${panic} in

  this function only lets positive values through, else panic= simply
  gets unset

  the panic() function itself is also not capable of handling negative
  values, it has a sleep call that interprets negative values as
  commandline options instead of simply ignoring a negative sleep time
  [2] (line 11).

  the filter in the init script should allow the -1 value (to comply
  with the kernel documentation and behaviour) and the panic() function
  should properly skip the sleep call when a negative value for panic=
  is set.

  [2] https://paste.ubuntu.com/p/mswD8Cd869/

To manage notifications about this bug go to:

Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to