Verification done on Eoan. The gfs2_jadd i386 command on amd64 kernel no longer fails with ENOTTY upfront.
# lsb_release -cs eoan # dpkg --print-architecture i386 # uname -m x86_64 # uname -rv 5.3.0-40-generic #32-Ubuntu SMP Fri Jan 31 20:24:34 UTC 2020 # apt-cache madison linux-image-5.3.0-40-generic linux-image-5.3.0-40-generic:amd64 | 5.3.0-40.32 | http://archive.ubuntu.com/ubuntu eoan-proposed/main amd64 Packages # apt install -y gfs2-utils corosync dlm-controld linux-modules- extra-$(uname -r) # corosync-quorumtool -e 1 # systemctl restart dlm.service # DISK=disk.img # dd if=/dev/zero of=$DISK bs=1M count=128 2>&1 # LOOP=$(losetup --find --show $DISK) # mkfs.gfs2 -p lock_dlm -t debian:test -J 32 -j 2 -O $LOOP # mount $LOOP /mnt # gfs2_jadd -j 1 /mnt add_j: No space left on device ** Tags removed: verification-needed-eoan ** Tags added: verification-done-eoan -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1859827 Title: debian/tests/corosync: gfs2_jadd fails with ENOTTY for i386 package on amd64 kernel Status in gfs2-utils package in Ubuntu: Invalid Status in linux package in Ubuntu: Fix Committed Status in gfs2-utils source package in Eoan: Invalid Status in linux source package in Eoan: Fix Committed Status in gfs2-utils source package in Focal: Invalid Status in linux source package in Focal: Fix Committed Bug description: [Impact] * The gfs2_jadd command (used in debian/tests/corosync) fails with ENOTTY ("Inappropriate ioctl for device") when the i386 packages are run on an amd64 kernel. * The i386 kernel is gone, only amd64 is available. * The fix introduces the compat ioctl()s for gfs2, which landed in v5.5-rc1 thus not in Eoan/Focal. [Test Case] * The test steps are detailed in comment #2 based on gfs2-utils:debian/tests/corosync, modified to be simpler and to fail either with ENOTTY (failure) or ENOSPC (success). [Regression Potential] * The previous surface for this problem is likely low, as i386 arch installs (which is not as popular/widely used as amd64 nowadays) probably used the i386 kernel. * The amd64-only kernel version released is 5.3.0-17.18 dated 2019-10-10; gives ~3 month window to mid January 2020. * So, behavior changes could theoretically be seen on i386 installs with the newer kernel which is amd64-only, where gfs2-utils failed with ENOTTY and now is working fine or failing differently (e.g. see test-case). [Original Description] The gfs2_jadd command (used in debian/tests/corosync) fails with ENOTTY ("Inappropriate ioctl for device") when the i386 packages are run on an amd64 kernel. The i386 kernel has gone away, only amd64 is available: - The i386 kernel build is dropped as of 5.3.0-15.16: * Drop i386 build for 19.10 (LP: #1845714) - Only linux-libc-dev:i386 is still built as of 5.3.0-17.18 * Re-enable linux-libc-dev build on i386 (LP: #1846508) The last passing autopkgtests for gfs2-utils:i386 are on 5.3.0-13.14 built for i386. The same kernel version built for amd64 _fails_. (so it's potentially user/kernel interface, or kernel-only.) - i386/i686) # uname -rvm 5.3.0-13-generic #14-Ubuntu SMP Tue Sep 24 02:43:47 UTC 2019 i686 root@sf256930ei:~# gfs2_jadd -j 1 /mnt Filesystem: /mnt Old journals: 2 New journals: 3 - amd64/x86_64) # uname -rvm 5.3.0-13-generic #14-Ubuntu SMP Tue Sep 24 02:46:08 UTC 2019 x86_64 # gfs2_jadd -j 1 /mnt GETFLAGS: Inappropriate ioctl for device To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/gfs2-utils/+bug/1859827/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp