** Description changed: + == Justification == + Commit 92183a42898d ("fsnotify: fix ignore mask logic in + send_to_group()") acknowledges the use case of ignoring an event on + an inode mark, because of an ignore mask on a mount mark of the same + group (i.e. I want to get all events on this file, except for the events + that came from that mount). + + This change depends on correctly merging the inode marks and mount marks + group lists, so that the mount mark ignore mask would be tested in + send_to_group(). Alas, the merging of the lists did not take into + account the case where event in question is not in the mask of any of + the mount marks. + + To fix this, completely remove the tests for inode and mount event masks + from the lists merging code. + + == Fix == + 9bdda4e9 (fsnotify: fix ignore mask logic in fsnotify()) + + Test kernels for Bionic can be found here: + http://people.canonical.com/~phlin/kernel/lp-1802454-fanotify10/bionic/ + + It seems that T/X poses with the same issue and the patch can be + backported with the same logic, but we should target Bionic only as it's + a fix for 92183a42898d which was only applied to Bionic. + + == Regression Potential == + Low. + + The backport work is required because it's missing another patch 47d9c7cc457 in Bionic, which generalizes the iteration of marks for inode_mark and vfsmount_mark, from: + iter_info.inode_mark + to: + iter_info.marks[FSNOTIFY_OBJ_TYPE_INODE] + + But the patch can still be backported with the same logic. + + == Test Case == + Run the fanotify10 test in ubuntu_ltp_syscalls test suite. And it will pass with the patched kernel. + + Full LTP syscalls test with 4.15.0-42 in -proposed: + http://paste.ubuntu.com/p/Wm8nQ932g6/ + + Full LTP syscalls test with patched 4.15.0-42: + http://paste.ubuntu.com/p/nv4jW6shpJ/ + + + ----- + + This is a new test case that landed 7 days ago. <<<test_start>>> tag=fanotify10 stime=1541744937 cmdline="fanotify10" contacts="" analysis=exit <<<test_output>>> incrementing stop tst_device.c:230: INFO: Using test device LTP_DEV='/dev/loop1' tst_mkfs.c:90: INFO: Formatting /dev/loop1 with ext2 opts='' extra opts='' mke2fs 1.44.1 (24-Mar-2018) tst_test.c:1085: INFO: Timeout per run is 0h 05m 00s fanotify10.c:199: INFO: Test #0: ignore mount events created on a specific file fanotify10.c:187: PASS: group 0 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 1 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 2 got event: mask 20 pid=2840 fd=15 fanotify10.c:264: PASS: group 0 (prio 1) with FAN_MARK_MOUNT and FAN_MARK_INODE ignore mask got no event fanotify10.c:264: PASS: group 1 (prio 1) with FAN_MARK_MOUNT and FAN_MARK_INODE ignore mask got no event fanotify10.c:264: PASS: group 2 (prio 1) with FAN_MARK_MOUNT and FAN_MARK_INODE ignore mask got no event fanotify10.c:264: PASS: group 0 (prio 2) with FAN_MARK_MOUNT and FAN_MARK_INODE ignore mask got no event fanotify10.c:264: PASS: group 1 (prio 2) with FAN_MARK_MOUNT and FAN_MARK_INODE ignore mask got no event fanotify10.c:264: PASS: group 2 (prio 2) with FAN_MARK_MOUNT and FAN_MARK_INODE ignore mask got no event fanotify10.c:199: INFO: Test #1: don't ignore mount events created on another file fanotify10.c:187: PASS: group 0 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 1 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 2 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 0 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 1 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 2 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 0 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 1 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 2 got event: mask 20 pid=2840 fd=15 fanotify10.c:199: INFO: Test #2: ignore inode events created on a specific mount point fanotify10.c:187: PASS: group 0 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 1 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 2 got event: mask 20 pid=2840 fd=15 fanotify10.c:258: FAIL: group 0 (prio 1) with FAN_MARK_INODE and FAN_MARK_MOUNT ignore mask got event fanotify10.c:258: FAIL: group 1 (prio 1) with FAN_MARK_INODE and FAN_MARK_MOUNT ignore mask got event fanotify10.c:258: FAIL: group 2 (prio 1) with FAN_MARK_INODE and FAN_MARK_MOUNT ignore mask got event fanotify10.c:258: FAIL: group 0 (prio 2) with FAN_MARK_INODE and FAN_MARK_MOUNT ignore mask got event fanotify10.c:258: FAIL: group 1 (prio 2) with FAN_MARK_INODE and FAN_MARK_MOUNT ignore mask got event fanotify10.c:258: FAIL: group 2 (prio 2) with FAN_MARK_INODE and FAN_MARK_MOUNT ignore mask got event fanotify10.c:199: INFO: Test #3: don't ignore inode events created on another mount point fanotify10.c:187: PASS: group 0 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 1 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 2 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 0 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 1 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 2 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 0 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 1 got event: mask 20 pid=2840 fd=15 fanotify10.c:187: PASS: group 2 got event: mask 20 pid=2840 fd=15 Summary: passed 30 failed 6 skipped 0 warnings 0 <<<execution_status>>> initiation_status="ok" duration=1 termination_type=exited termination_id=1 corefile=no cutime=0 cstime=1 <<<test_end>>> ProblemType: Bug DistroRelease: Ubuntu 18.04 Package: linux-image-4.18.0-11-generic 4.18.0-11.12~18.04.1 ProcVersionSignature: User Name 4.18.0-11.12~18.04.1-generic 4.18.12 Uname: Linux 4.18.0-11-generic x86_64 ApportVersion: 2.20.9-0ubuntu7.4 Architecture: amd64 Date: Fri Nov 9 06:24:06 2018 SourcePackage: linux-signed-hwe-edge UpgradeStatus: No upgrade log present (probably fresh install)
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1802454 Title: fanotify10 in ubuntu_ltp_syscalls failed To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-kernel-tests/+bug/1802454/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs