So disco, 1.8.3:
at the start: openat(AT_FDCWD, "/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 openat(AT_FDCWD, "/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
end of run:
close(5) = 0 close(4) = 0 close(3) = 0
=> we unlock in reverse as we want.
So disco, 1.8.3:
at the start: dpkg/lock- frontend" , O_RDWR| O_CREAT| O_NOFOLLOW, 0640) = 4 dpkg/lock" , O_RDWR| O_CREAT| O_NOFOLLOW, 0640) = 5
openat(AT_FDCWD, "/var/lib/
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
openat(AT_FDCWD, "/var/lib/
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
end of run:
close(5) = 0
close(4) = 0
close(3) = 0
=> we unlock in reverse as we want.