[Bug 1313712] Re: Trusty's libselinux1 causes issues with Precise's upstart during dist-upgrade

Dimitri John Ledkov launchpad at surgut.co.uk
Mon Apr 28 13:49:05 UTC 2014


** Description changed:

+ [Impact]
+ 
+  * During upgrade to trusty, upstart would be forcefully re-executed,
+ even if it doesn't support stateful re-execution. This means all job
+ statuses is lost.
+ 
+  * Upgrade strategy for upstart is that when stateful re-execution is
+ not supported, a flag should be left to re-execute upstart on shut-down
+ only.
+ 
+  * The culprit is in libselinux1, a new dependency of upstart in trusty
+ that does not have appropriate login in its postinst.
+ 
+ [Test Case]
+ 
+  * Using precise's upstart as pid one execute:
+ $ initctl list
+ 
+  * Install libselinux1 from trusty-proposed
+  * Execute
+ $ initctl list
+ 
+  * The two lists should be largely the same, with state of jobs preserved.
+  * /var/run/init.upgraded file-flag should be present.
+ 
+ [Other Info]
+  
+  * Original bug report:
+ 
  Hi everyone,
  
  During troubleshooting of bug http://pad.lv/1303891 I've also discovered
  that Precise's upstart version doesn't work with Trusty's libselinux1.
  This is a major issue during a dist-upgrade from Precise to Trusty as
  upstart is severely affected by this and looses track of service PIDs
  which prevents service reloads.
  
  Can someone add a Breaks for Precise's upstart version to Trusty's
  libselinux1 debian/control file?
  
  Reproduction instructions:
  Install Ubuntu 12.04.4.
  
  $ sudo apt-get update -qq && sudo apt-get dist-upgrade -qqy
  <no output; no updates>
  
  $ initctl list
  avahi-daemon start/running, process 765
  ...
  
  $ sudo sed -i 's/precise/trusty/g' /etc/apt/sources.list
  
  $ sudo apt-get update -qq
  <no ouput; no errors>
  
  $ sudo apt-get install libselinux1 -y
  ...
  
  New dmesg lines:
  [ 256.032898] init: Re-executing /sbin/init
  
  New syslog lines:
  Apr 23 14:51:40 test upstart-socket-bridge[1090]: Disconnected from Upstart
  Apr 23 14:51:40 test upstart-udev-bridge[595]: Disconnected from Upstart
  
  $ initctl list
  avahi-daemon stop/waiting
  ...
  
  Upstart lost track of service PIDs. Commands like 'initctl reload dbus'
  will fail.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to libselinux in Ubuntu.
https://bugs.launchpad.net/bugs/1313712

Title:
  Trusty's libselinux1 causes issues with Precise's upstart during dist-
  upgrade

Status in “libselinux” package in Ubuntu:
  Triaged
Status in “libselinux” source package in Trusty:
  Triaged
Status in “libselinux” source package in Utopic:
  Triaged

Bug description:
  [Impact]

   * During upgrade to trusty, upstart would be forcefully re-executed,
  even if it doesn't support stateful re-execution. This means all job
  statuses is lost.

   * Upgrade strategy for upstart is that when stateful re-execution is
  not supported, a flag should be left to re-execute upstart on shut-
  down only.

   * The culprit is in libselinux1, a new dependency of upstart in
  trusty that does not have appropriate login in its postinst.

  [Test Case]

   * Using precise's upstart as pid one execute:
  $ initctl list

   * Install libselinux1 from trusty-proposed
   * Execute
  $ initctl list

   * The two lists should be largely the same, with state of jobs preserved.
   * /var/run/init.upgraded file-flag should be present.

  [Other Info]
   
   * Original bug report:

  Hi everyone,

  During troubleshooting of bug http://pad.lv/1303891 I've also
  discovered that Precise's upstart version doesn't work with Trusty's
  libselinux1. This is a major issue during a dist-upgrade from Precise
  to Trusty as upstart is severely affected by this and looses track of
  service PIDs which prevents service reloads.

  Can someone add a Breaks for Precise's upstart version to Trusty's
  libselinux1 debian/control file?

  Reproduction instructions:
  Install Ubuntu 12.04.4.

  $ sudo apt-get update -qq && sudo apt-get dist-upgrade -qqy
  <no output; no updates>

  $ initctl list
  avahi-daemon start/running, process 765
  ...

  $ sudo sed -i 's/precise/trusty/g' /etc/apt/sources.list

  $ sudo apt-get update -qq
  <no ouput; no errors>

  $ sudo apt-get install libselinux1 -y
  ...

  New dmesg lines:
  [ 256.032898] init: Re-executing /sbin/init

  New syslog lines:
  Apr 23 14:51:40 test upstart-socket-bridge[1090]: Disconnected from Upstart
  Apr 23 14:51:40 test upstart-udev-bridge[595]: Disconnected from Upstart

  $ initctl list
  avahi-daemon stop/waiting
  ...

  Upstart lost track of service PIDs. Commands like 'initctl reload
  dbus' will fail.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libselinux/+bug/1313712/+subscriptions



More information about the foundations-bugs mailing list