What I've found so far:
* The FTBFS is due to a test not passing (lsfd/column-mntid-nonroot).
* This test basically compares two values fetched once from `findmnt` and the 
second time from `lsfd`. This is what breaks, because `findmnt`'s value is 
empty.
* The output of `findmnt` is empty because essentially, the mount information 
provided on `/proc` is problematic.

On my `stonking` machine, sbuild with `unshare`, `/proc/self/mountinfo`
shows something mounted on `/` (the first line):

28771 2017 252:1 /var/tmp/tmp.sbuild.yqOIbA27ls / rw,relatime master:1 - ext4 
/dev/mapper/ubuntu--vg-ubuntu--lv rw
28773 28771 0:7 /null /dev/null rw,nosuid master:2 - devtmpfs devtmpfs 
rw,size=6917848k,nr_inodes=1729462,mode=755,inode64
28784 28771 0:7 /zero /dev/zero rw,nosuid master:2 - devtmpfs devtmpfs 
rw,size=6917848k,nr_inodes=1729462,mode=755,inode64
28794 28771 0:7 /full /dev/full rw,nosuid master:2 - devtmpfs devtmpfs 
rw,size=6917848k,nr_inodes=1729462,mode=755,inode64
28795 28771 0:7 /random /dev/random rw,nosuid master:2 - devtmpfs devtmpfs 
rw,size=6917848k,nr_inodes=1729462,mode=755,inode64
28796 28771 0:7 /urandom /dev/urandom rw,nosuid master:2 - devtmpfs devtmpfs 
rw,size=6917848k,nr_inodes=1729462,mode=755,inode64
28797 28771 0:7 /tty /dev/tty rw,nosuid master:2 - devtmpfs devtmpfs 
rw,size=6917848k,nr_inodes=1729462,mode=755,inode64
28798 28771 0:7 /console /dev/console rw,nosuid master:2 - devtmpfs devtmpfs 
rw,size=6917848k,nr_inodes=1729462,mode=755,inode64
28799 28771 0:311 / /dev/pts rw,nosuid,noexec,relatime - devpts none 
rw,gid=2005,mode=620,ptmxmode=666
28800 28771 0:318 / /dev/shm rw,relatime - tmpfs tmpfs 
rw,uid=2000,gid=2000,inode64
28801 28771 0:26 / /sys rw,nosuid,nodev,noexec,relatime master:5 - sysfs sysfs 
rw
28802 28801 0:8 / /sys/kernel/security rw,nosuid,nodev,noexec,relatime master:6 
- securityfs securityfs rw
28803 28801 0:30 / /sys/fs/cgroup rw,nosuid,nodev,noexec,relatime master:7 - 
cgroup2 cgroup2 rw
28804 28801 0:31 / /sys/fs/pstore rw,nosuid,nodev,noexec,relatime master:8 - 
pstore none rw
28805 28801 0:32 / /sys/firmware/efi/efivars rw,nosuid,nodev,noexec,relatime 
master:9 - efivarfs efivarfs rw
28806 28801 0:33 / /sys/fs/bpf rw,nosuid,nodev,noexec,relatime master:10 - bpf 
bpf rw,mode=700
28807 28801 0:21 / /sys/kernel/config rw,nosuid,nodev,noexec,relatime master:11 
- configfs configfs rw
28808 28801 0:9 / /sys/kernel/debug rw,nosuid,nodev,noexec,relatime master:18 - 
debugfs debugfs rw
28809 28801 0:14 / /sys/kernel/tracing rw,nosuid,nodev,noexec,relatime 
master:20 - tracefs tracefs rw
28810 28801 0:38 / /sys/fs/fuse/connections rw,nosuid,nodev,noexec,relatime 
master:21 - fusectl fusectl rw
28811 28801 0:321 / /sys/kernel ro,relatime - tmpfs tmpfs 
ro,size=4k,mode=000,uid=2000,gid=2000,inode64
28812 28771 0:322 / /proc rw,relatime - proc proc rw


That means that `findmnt -n -o ID --target /` is able to return something (in 
that case, the first value, 28771)

In a `noble` VM, sbuild with `unshare`, `/proc/self/mountinfo` doesn't
show anything mounted on `/`. It only shows the rest:

461 435 0:5 /null /dev/null rw,nosuid,relatime master:2 - devtmpfs udev 
rw,size=436392k,nr_inodes=109098,mode=755,inode64
462 435 0:5 /zero /dev/zero rw,nosuid,relatime master:2 - devtmpfs udev 
rw,size=436392k,nr_inodes=109098,mode=755,inode64
463 435 0:5 /full /dev/full rw,nosuid,relatime master:2 - devtmpfs udev 
rw,size=436392k,nr_inodes=109098,mode=755,inode64
464 435 0:5 /random /dev/random rw,nosuid,relatime master:2 - devtmpfs udev 
rw,size=436392k,nr_inodes=109098,mode=755,inode64
465 435 0:5 /urandom /dev/urandom rw,nosuid,relatime master:2 - devtmpfs udev 
rw,size=436392k,nr_inodes=109098,mode=755,inode64
466 435 0:5 /tty /dev/tty rw,nosuid,relatime master:2 - devtmpfs udev 
rw,size=436392k,nr_inodes=109098,mode=755,inode64
467 435 0:5 /console /dev/console rw,nosuid,relatime master:2 - devtmpfs udev 
rw,size=436392k,nr_inodes=109098,mode=755,inode64
468 435 0:55 / /dev/pts rw,nosuid,noexec,relatime - devpts none 
rw,gid=100005,mode=620,ptmxmode=666
469 435 0:56 / /dev/shm rw,relatime - tmpfs tmpfs 
rw,uid=100000,gid=100000,inode64
470 435 0:23 / /sys rw,nosuid,nodev,noexec,relatime master:7 - sysfs sysfs rw
471 470 0:27 / /sys/firmware/efi/efivars rw,nosuid,nodev,noexec,relatime 
master:8 - efivarfs efivarfs rw
472 470 0:6 / /sys/kernel/security rw,nosuid,nodev,noexec,relatime master:9 - 
securityfs securityfs rw
473 470 0:30 / /sys/fs/cgroup rw,nosuid,nodev,noexec,relatime master:10 - 
cgroup2 cgroup2 rw,nsdelegate,memory_recursiveprot
474 470 0:31 / /sys/fs/pstore rw,nosuid,nodev,noexec,relatime master:11 - 
pstore pstore rw
475 470 0:32 / /sys/fs/bpf rw,nosuid,nodev,noexec,relatime master:12 - bpf bpf 
rw,mode=700
476 470 0:7 / /sys/kernel/debug rw,nosuid,nodev,noexec,relatime master:17 - 
debugfs debugfs rw
477 470 0:12 / /sys/kernel/tracing rw,nosuid,nodev,noexec,relatime master:18 - 
tracefs tracefs rw
478 470 0:35 / /sys/fs/fuse/connections rw,nosuid,nodev,noexec,relatime 
master:19 - fusectl fusectl rw
479 470 0:21 / /sys/kernel/config rw,nosuid,nodev,noexec,relatime master:20 - 
configfs configfs rw
480 470 0:57 / /sys/kernel ro,relatime - tmpfs tmpfs 
ro,size=4k,mode=000,uid=100000,gid=100000,inode64
481 435 0:58 / /proc rw,relatime - proc proc rw

That means that `findmnt -n -o ID --target /` is unable to return
anything, thus empty value, thus the util-linux test fails.


Next step is playing a bit more with a Noble host and a Stonking userspace, to 
see in which case that `/proc` report is wrong. I'm pretty sure Launchpad 
doesn't use `unshare`, so that might rule out that piece of the puzzle at least.

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

Title:
  Merge util-linux from Debian for stonking cycle

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/util-linux/+bug/2153369/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to