[Bug 1796081] Re: dpkg frontend locking

Brian Murray brian at ubuntu.com
Wed Oct 17 22:31:03 UTC 2018


Hello Julian, or anyone else affected,

Accepted dpkg into xenial-proposed. The package will build now and be
available at https://launchpad.net/ubuntu/+source/dpkg/1.18.4ubuntu1.5
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 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-xenial to verification-done-xenial. If it does not
fix the bug for you, please add a comment stating that, and change the
tag to verification-failed-xenial. 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: dpkg (Ubuntu Xenial)
       Status: In Progress => Fix Committed

** Tags added: verification-needed verification-needed-xenial

** Changed in: dpkg (Ubuntu Bionic)
       Status: In Progress => Fix Committed

** Tags added: verification-needed-bionic

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

Title:
  dpkg frontend locking

Status in dpkg package in Ubuntu:
  Fix Released
Status in dpkg source package in Xenial:
  Fix Committed
Status in dpkg source package in Bionic:
  Fix Committed
Status in dpkg source package in Cosmic:
  Fix Released

Bug description:
  [Impact]
  Frontends of dpkg such as apt and programs using the apt libraries currently acquire the dpkg "lock" lock file. They need to release it before running dpkg, as dpkg also acquires it. Therefore, there is a race condition: In case the application needs to run dpkg multiple times, another application could steal the lock from under it, and the running application would fail in the middle of the install, potentially rendering the system broken.

  This fixes the problem by introducing an additional "lock-frontend"
  file that frontends do not release when calling dpkg. When dpkg is not
  called by a frontend using that file, it will try to acquire the
  frontend lock as well, preventing it from interfering with such
  frontends.

  [Test case]
  1. Hold lock, check that dpkg fails to run
  2. Hold frontend lock, check that dpkg fails to run
  3. Hold frontend lock, run dpkg with DPKG_FRONTEND_LOCKED set, it should succeed

  [Regression potential]
  This is an isolated change adding a new lock file. Therefore, regressions can only be expected in the form of that locking failing.

  [Other info]
  This is part of a wider series of SRUs for frontend locking

  - dpkg (bug 1796081)
  - apt (bug 1781169)
  - python-apt (bug 1795407)
  - packagekit (bug 1795614)
  - unattended-upgrades (bug 1789637)
  - aptdaemon (no bug filed yet)

  Further details about frontend locking can be found in
  https://lists.debian.org/debian-dpkg/2017/01/msg00044.html

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



More information about the foundations-bugs mailing list