Activity log for bug #1802454

Date Who What changed Old value New value Message
2018-11-09 06:44:17 Po-Hsu Lin bug added bug
2018-11-09 06:44:39 Po-Hsu Lin nominated for series Ubuntu Bionic
2018-11-09 06:44:39 Po-Hsu Lin nominated for series Ubuntu Xenial
2018-11-09 06:44:48 Po-Hsu Lin affects linux-signed-hwe-edge (Ubuntu) linux (Ubuntu)
2018-11-09 06:49:49 Po-Hsu Lin nominated for series Ubuntu Cosmic
2018-11-09 06:49:49 Po-Hsu Lin nominated for series Ubuntu Trusty
2018-11-09 06:50:00 Po-Hsu Lin bug task added ubuntu-kernel-tests
2018-11-09 07:00:06 Ubuntu Kernel Bot linux (Ubuntu): status New Incomplete
2018-11-16 11:15:56 Po-Hsu Lin ubuntu-kernel-tests: status New In Progress
2018-11-16 11:16:00 Po-Hsu Lin ubuntu-kernel-tests: assignee Po-Hsu Lin (cypressyew)
2018-11-16 11:16:01 Po-Hsu Lin linux (Ubuntu): assignee Po-Hsu Lin (cypressyew)
2018-11-16 11:16:03 Po-Hsu Lin linux (Ubuntu): status Incomplete In Progress
2018-11-16 11:17:43 Po-Hsu Lin tags amd64 apport-bug bionic package-from-proposed uec-images amd64 apport-bug bionic cosmic package-from-proposed trusty uec-images xenial
2018-11-22 08:55:24 Po-Hsu Lin description 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) == 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)
2018-11-22 09:27:44 Po-Hsu Lin description == 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) == 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 I think we should target Bionic as it's a fix for for 92183a42898d which was only applied to Bionic. == Regression Potential == Low. The backport work is required as it's missing commit 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 without this commit. The test with the syscalls test in LTP test suite shows no sign of regression. == 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)
2018-11-22 11:30:01 Po-Hsu Lin description == 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 I think we should target Bionic as it's a fix for for 92183a42898d which was only applied to Bionic. == Regression Potential == Low. The backport work is required as it's missing commit 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 without this commit. The test with the syscalls test in LTP test suite shows no sign of regression. == 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) == 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 we might be able to backport it with the same logic, but I think we should target Bionic as it's a fix for for 92183a42898d which was only applied to Bionic. == Regression Potential == Low. The backport work is required as it's missing commit 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 without this commit. The test with the syscalls test in LTP test suite shows no sign of regression. == 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)
2018-11-26 18:35:05 Dexuan Cui bug added subscriber Dexuan Cui
2018-11-28 14:31:57 Kleber Sacilotto de Souza bug task added linux (Ubuntu Bionic)
2018-11-28 14:32:02 Kleber Sacilotto de Souza bug task added linux (Ubuntu Cosmic)
2018-11-28 14:32:07 Kleber Sacilotto de Souza bug task added linux (Ubuntu Trusty)
2018-11-28 14:32:13 Kleber Sacilotto de Souza bug task added linux (Ubuntu Xenial)
2018-11-28 14:32:39 Kleber Sacilotto de Souza linux (Ubuntu Bionic): status New In Progress
2019-01-09 15:09:09 Kleber Sacilotto de Souza linux (Ubuntu Bionic): status In Progress Fix Committed
2019-01-15 10:37:44 Brad Figg tags amd64 apport-bug bionic cosmic package-from-proposed trusty uec-images xenial amd64 apport-bug bionic cosmic package-from-proposed trusty uec-images verification-needed-bionic xenial
2019-01-22 03:58:17 Po-Hsu Lin tags amd64 apport-bug bionic cosmic package-from-proposed trusty uec-images verification-needed-bionic xenial amd64 apport-bug bionic cosmic package-from-proposed trusty uec-images verification-done-bionic xenial
2019-01-28 17:12:01 Launchpad Janitor linux (Ubuntu Bionic): status Fix Committed Fix Released
2019-01-28 17:12:01 Launchpad Janitor cve linked 2018-14625
2019-01-28 17:12:01 Launchpad Janitor cve linked 2018-16882
2019-01-28 17:12:01 Launchpad Janitor cve linked 2018-17972
2019-01-28 17:12:01 Launchpad Janitor cve linked 2018-18281
2019-01-28 17:12:01 Launchpad Janitor cve linked 2018-19407
2019-03-20 08:10:55 Po-Hsu Lin linux (Ubuntu Cosmic): status New Fix Released
2019-03-20 08:11:38 Po-Hsu Lin linux (Ubuntu): status In Progress Fix Released
2019-07-24 21:30:12 Brad Figg tags amd64 apport-bug bionic cosmic package-from-proposed trusty uec-images verification-done-bionic xenial amd64 apport-bug bionic cosmic cscc package-from-proposed trusty uec-images verification-done-bionic xenial
2019-09-16 12:24:59 Po-Hsu Lin ubuntu-kernel-tests: status In Progress Confirmed
2019-09-16 12:25:05 Po-Hsu Lin ubuntu-kernel-tests: assignee Po-Hsu Lin (cypressyew)
2019-09-16 12:25:16 Po-Hsu Lin tags amd64 apport-bug bionic cosmic cscc package-from-proposed trusty uec-images verification-done-bionic xenial amd64 apport-bug bionic cosmic cscc package-from-proposed trusty ubuntu-ltp-syscalls uec-images verification-done-bionic xenial
2020-03-19 16:07:18 Po-Hsu Lin tags amd64 apport-bug bionic cosmic cscc package-from-proposed trusty ubuntu-ltp-syscalls uec-images verification-done-bionic xenial amd64 apport-bug bionic cosmic cscc package-from-proposed sru-20200316 trusty ubuntu-ltp-syscalls uec-images verification-done-bionic xenial
2020-07-27 06:44:06 Po-Hsu Lin nominated for series Ubuntu Focal
2020-07-27 06:44:06 Po-Hsu Lin bug task added linux (Ubuntu Focal)
2020-07-27 06:44:13 Po-Hsu Lin linux (Ubuntu Focal): status New Confirmed
2020-07-27 06:47:05 Po-Hsu Lin linux (Ubuntu Focal): status Confirmed Fix Released
2020-08-10 04:31:01 Po-Hsu Lin tags amd64 apport-bug bionic cosmic cscc package-from-proposed sru-20200316 trusty ubuntu-ltp-syscalls uec-images verification-done-bionic xenial amd64 apport-bug bionic cosmic cscc package-from-proposed sru-20200316 sru-20200629 sru-20200720 trusty ubuntu-ltp-syscalls uec-images verification-done-bionic xenial
2020-11-17 04:34:03 Po-Hsu Lin tags amd64 apport-bug bionic cosmic cscc package-from-proposed sru-20200316 sru-20200629 sru-20200720 trusty ubuntu-ltp-syscalls uec-images verification-done-bionic xenial amd64 apport-bug bionic cosmic cscc package-from-proposed sru-20200316 sru-20200629 sru-20200720 sru-20201109 trusty ubuntu-ltp-syscalls uec-images verification-done-bionic xenial