The real fix for the openpty() problem on Launchpad xenial buildd is in livecd-rootfs currently in xenial-proposed, and is verified. (LP 1844504 comment 15)
Once the Launchpad builders are updated with that, we can proceed with another build attempt, and hopefully move this SRU forward. Thanks to Colin Watson (cjwatson) for quickly fixing livecd-rootfs. cheers, Mauricio -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to util-linux in Ubuntu. https://bugs.launchpad.net/bugs/1842437 Title: Xenial: libblkid: fix false-positive/misdetection of nilfs2 filesystem with udev Status in util-linux package in Ubuntu: Fix Released Status in util-linux source package in Xenial: In Progress Bug description: [Impact] * Users / systemd can fail to mount a filesystem by UUID (e.g., during boot, triggering emergency shell prompt) if the magic bytes for the nilfs filesystem are written to the right place in a partition of another filesystem, (for whatever reason or coincidence). * Note this can happen after the filesystem/mount is working correctly, so a change of behavior/problem can potentially be noticed when trying to mount the filesystem again, which can very well be the next time the system boots. * This happens because if udev blkid detects more than one filesystem, it does not print the UUID env vars required to create the /dev/disk/by-id symlinks and other things. * The fix enhances the check for valid nilfs superblock by specifically checking a value read from disk to be valid/ within a value range, which addresses this one occurrence and prevents a lot more. [Test Case] * Synthetic test case written for this problem on comment #6. [Regression Potential] * Low. The code is contained in the probe for the nilfs filesystem. * This just makes it be more restrictive about the possibly valid values for a few bytes read from disk (that now need to be within the acceptable range of valid values) so this only decreases false- positives, and cannot increase false-negatives of valid filesystems. [Original Description] The nilfs filesystem has a backup superblock at the end of the device. If the magic number is coincidentally found at the right position and the filesystem is on a partition/not-wholedisk device, the only check left is for checksum verification, which is explicitly ignored in 'udev built-in blkid'. This causes blkid to detect one actually valid filesystem with a superblock at the beginning of the device (e.g., ext4), and then an invalid nilfs2 filesystem due to a coincidental magic number at the end of the device. And this causes blkid to break out of the safeprobe routine (which expects a single filesystem to be detected), and not print the UUIDs, thus not creating /dev/disk/by-uuid/ links which prevent mounting the partition by-uuid at boot time, causing emergency shell/boot failures. This upstream fix resolved the problem by introducing a check for the 'bytes' paramenters in the superblock, which is read from disk, and turns out to have an out-of-range value. - 'liblkid: Add length check in probe_nilfs2 before crc32' https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/commit/?id=ac681a310c32319423297544833932f4d689a7a2 $ git describe --contains ac681a310c32319423297544833932f4d689a7a2 v2.29-rc1~172 Xenial, which is v2.27.1-based, is the only release that needs it. Bionic is v2.31.1, so all post-Xenial supported releases have it. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/util-linux/+bug/1842437/+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