Same with 1.2.29 from xenial: open("/var/lib/dpkg/lock-frontend", O_RDWR|O_CREAT|O_NOFOLLOW, 0640) = 4 fcntl(4, F_SETFD, FD_CLOEXEC) = 0 fcntl(4, F_SETLK, {l_type=F_WRLCK, l_whence=SEEK_SET, l_start=0, l_len=0}) = 0 open("/var/lib/dpkg/lock", O_RDWR|O_CREAT|O_NOFOLLOW, 0640) = 5 fcntl(5, F_SETFD, FD_CLOEXEC) = 0 fcntl(5, F_SETLK, {l_type=F_WRLCK, l_whence=SEEK_SET, l_start=0, l_len=0}) = 0 [...] reading files ] close(5) = 0 fcntl(5, F_SETFD, FD_CLOEXEC) = 0 fcntl(37, F_SETFD, FD_CLOEXEC) = 0 close(5) = 0 fcntl(37, F_GETFL) = 0x1 (flags O_WRONLY) close(37) = 0 --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=3741, si_uid=0, si_status=0, si_utime=0, si_stime=0} --- [ reading files and writing extended_states stuff; no close(4) ] close(4) = 0 close(5) = -1 EBADF (Bad file descriptor) close(3) = 0 +++ exited with 0 +++
** Tags removed: verification-needed verification-needed-xenial ** Tags added: verification-done verification-done-xenial -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to apt in Ubuntu. https://bugs.launchpad.net/bugs/1781169 Title: apt frontend locking Status in apt package in Ubuntu: Fix Released Status in apt source package in Xenial: Fix Committed Status in apt source package in Bionic: Fix Committed Bug description: [Impact] apt acquires /var/lib/dpkg/lock but has to release it while running dpkg, offering a short window for other clients to acquire the lock. This implements /var/lib/dpkg/lock-frontend which will be acquired earlier and not released by apt for dpkg to run. dpkg will try to acquire the frontend lock as well, unless told not to do so via an environment variable, which apt does; hence concurrent runs of dpkg without other locking can't happen. [Test case] Run strace apt install $something and check that lock-frontend is acquired at the beginning and not released until the end. [Regression potential] Frontend locking failures are in English, as there are no translations yet. More locks also mean more potential for locking to go wrong across programs, but since we don't have any waiting locks we at least won't deadlock. [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/apt/+bug/1781169/+subscriptions -- 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