All of lore.kernel.org
 help / color / mirror / Atom feed
* [LTP] [PATCH 1/1] syscalls/fanotify15: TCONF also on EOPNOTSUPP
@ 2020-09-10 11:07 Petr Vorel
  2020-09-10 14:05 ` Amir Goldstein
  0 siblings, 1 reply; 4+ messages in thread
From: Petr Vorel @ 2020-09-10 11:07 UTC (permalink / raw)
  To: ltp

instead of TBROK:
fanotify15.c:86: INFO: Test #0: FAN_REPORT_FID on filesystem including FAN_DELETE_SELF
fanotify15.c:96: BROK: fanotify_mark(3, FAN_MARK_ADD | FAN_MARK_FILESYSTEM, FAN_CREATE | FAN_DELETE | FAN_MOVE | FAN_MODIFY | FAN_ONDIR | 0x400, AT_FDCWD, mntpoint/test_dir) failed: EOPNOTSUPP (95)

is now reported:
fanotify15.c:86: INFO: Test #0: FAN_REPORT_FID on filesystem including FAN_DELETE_SELF
fanotify15.c:93: CONF: FAN_REPORT_FID not supported on exfat filesystem

fanotify15.c:86: INFO: Test #0: FAN_REPORT_FID on filesystem including FAN_DELETE_SELF
fanotify15.c:93: CONF: FAN_REPORT_FID not supported on ntfs filesystem

Found on 5.8.0 on openSUSE Tumbleweed.

Fixes: 403f11f3a ("syscalls/fanotify15: verify fid for dirent events")

Signed-off-by: Petr Vorel <pvorel@suse.cz>
---
Hi,

I suppose that EXDEV (in fanotify_test_fid()) is really error which
should be caught as TBROK (unlike ENODEV and EOPNOTSUPP). Am I correct?

Kind regards,
Petr

 testcases/kernel/syscalls/fanotify/fanotify15.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/testcases/kernel/syscalls/fanotify/fanotify15.c b/testcases/kernel/syscalls/fanotify/fanotify15.c
index cca6a5313..6cb1b4a2f 100644
--- a/testcases/kernel/syscalls/fanotify/fanotify15.c
+++ b/testcases/kernel/syscalls/fanotify/fanotify15.c
@@ -89,7 +89,7 @@ static void do_test(unsigned int number)
 				FAN_CREATE | FAN_DELETE | FAN_MOVE |
 				FAN_MODIFY | FAN_ONDIR,
 				AT_FDCWD, TEST_DIR) == -1) {
-		if (errno == ENODEV)
+		if (errno == ENODEV || errno == EOPNOTSUPP)
 			tst_brk(TCONF,
 				"FAN_REPORT_FID not supported on %s "
 				"filesystem", tst_device->fs_type);
-- 
2.28.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [LTP] [PATCH 1/1] syscalls/fanotify15: TCONF also on EOPNOTSUPP
  2020-09-10 11:07 [LTP] [PATCH 1/1] syscalls/fanotify15: TCONF also on EOPNOTSUPP Petr Vorel
@ 2020-09-10 14:05 ` Amir Goldstein
  2020-09-10 18:37   ` Petr Vorel
  2020-09-11  5:35   ` Petr Vorel
  0 siblings, 2 replies; 4+ messages in thread
From: Amir Goldstein @ 2020-09-10 14:05 UTC (permalink / raw)
  To: ltp

On Thu, Sep 10, 2020 at 2:07 PM Petr Vorel <pvorel@suse.cz> wrote:
>
> instead of TBROK:
> fanotify15.c:86: INFO: Test #0: FAN_REPORT_FID on filesystem including FAN_DELETE_SELF
> fanotify15.c:96: BROK: fanotify_mark(3, FAN_MARK_ADD | FAN_MARK_FILESYSTEM, FAN_CREATE | FAN_DELETE | FAN_MOVE | FAN_MODIFY | FAN_ONDIR | 0x400, AT_FDCWD, mntpoint/test_dir) failed: EOPNOTSUPP (95)
>
> is now reported:
> fanotify15.c:86: INFO: Test #0: FAN_REPORT_FID on filesystem including FAN_DELETE_SELF
> fanotify15.c:93: CONF: FAN_REPORT_FID not supported on exfat filesystem
>
> fanotify15.c:86: INFO: Test #0: FAN_REPORT_FID on filesystem including FAN_DELETE_SELF
> fanotify15.c:93: CONF: FAN_REPORT_FID not supported on ntfs filesystem
>
> Found on 5.8.0 on openSUSE Tumbleweed.
>
> Fixes: 403f11f3a ("syscalls/fanotify15: verify fid for dirent events")
>
> Signed-off-by: Petr Vorel <pvorel@suse.cz>
> ---
> Hi,
>
> I suppose that EXDEV (in fanotify_test_fid()) is really error which
> should be caught as TBROK (unlike ENODEV and EOPNOTSUPP). Am I correct?

No. EXDEV is also an indication of problematic filesystem.
You will get it if you try to setup the mark on a btrfs subvolume, which is not
the root volume, because in that case the "fsid" information from event is
not reliable.

Probably this is not going to happen in LTP, but still.

Good spotting.

Thanks,
Amir.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [LTP] [PATCH 1/1] syscalls/fanotify15: TCONF also on EOPNOTSUPP
  2020-09-10 14:05 ` Amir Goldstein
@ 2020-09-10 18:37   ` Petr Vorel
  2020-09-11  5:35   ` Petr Vorel
  1 sibling, 0 replies; 4+ messages in thread
From: Petr Vorel @ 2020-09-10 18:37 UTC (permalink / raw)
  To: ltp

Hi Amir,

> > I suppose that EXDEV (in fanotify_test_fid()) is really error which
> > should be caught as TBROK (unlike ENODEV and EOPNOTSUPP). Am I correct?

> No. EXDEV is also an indication of problematic filesystem.
> You will get it if you try to setup the mark on a btrfs subvolume, which is not
> the root volume, because in that case the "fsid" information from event is
> not reliable.

> Probably this is not going to happen in LTP, but still.
Right, I'll add also check for EXDEV and merge with your Reviewed-by tag.
Thanks for your review!

> Good spotting.

> Thanks,
> Amir.

Kind regards,
Petr

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [LTP] [PATCH 1/1] syscalls/fanotify15: TCONF also on EOPNOTSUPP
  2020-09-10 14:05 ` Amir Goldstein
  2020-09-10 18:37   ` Petr Vorel
@ 2020-09-11  5:35   ` Petr Vorel
  1 sibling, 0 replies; 4+ messages in thread
From: Petr Vorel @ 2020-09-11  5:35 UTC (permalink / raw)
  To: ltp

Hi Amir,

> On Thu, Sep 10, 2020 at 2:07 PM Petr Vorel <pvorel@suse.cz> wrote:

> > instead of TBROK:
> > fanotify15.c:86: INFO: Test #0: FAN_REPORT_FID on filesystem including FAN_DELETE_SELF
> > fanotify15.c:96: BROK: fanotify_mark(3, FAN_MARK_ADD | FAN_MARK_FILESYSTEM, FAN_CREATE | FAN_DELETE | FAN_MOVE | FAN_MODIFY | FAN_ONDIR | 0x400, AT_FDCWD, mntpoint/test_dir) failed: EOPNOTSUPP (95)

> > is now reported:
> > fanotify15.c:86: INFO: Test #0: FAN_REPORT_FID on filesystem including FAN_DELETE_SELF
> > fanotify15.c:93: CONF: FAN_REPORT_FID not supported on exfat filesystem

> > fanotify15.c:86: INFO: Test #0: FAN_REPORT_FID on filesystem including FAN_DELETE_SELF
> > fanotify15.c:93: CONF: FAN_REPORT_FID not supported on ntfs filesystem

> > Found on 5.8.0 on openSUSE Tumbleweed.

> > Fixes: 403f11f3a ("syscalls/fanotify15: verify fid for dirent events")

> > Signed-off-by: Petr Vorel <pvorel@suse.cz>
> > ---
> > Hi,

> > I suppose that EXDEV (in fanotify_test_fid()) is really error which
> > should be caught as TBROK (unlike ENODEV and EOPNOTSUPP). Am I correct?

> No. EXDEV is also an indication of problematic filesystem.
> You will get it if you try to setup the mark on a btrfs subvolume, which is not
> the root volume, because in that case the "fsid" information from event is
> not reliable.

> Probably this is not going to happen in LTP, but still.

> Good spotting.

Merged commit where handling both EOPNOTSUPP and EXDEV.
Thanks!

> Thanks,
> Amir.

Kind regards,
Petr

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-09-11  5:35 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-10 11:07 [LTP] [PATCH 1/1] syscalls/fanotify15: TCONF also on EOPNOTSUPP Petr Vorel
2020-09-10 14:05 ` Amir Goldstein
2020-09-10 18:37   ` Petr Vorel
2020-09-11  5:35   ` Petr Vorel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.