[LTP] [PATCH 6/6] fanotify: Convert permission events feature check to be performed on fs

Amir Goldstein amir73il@gmail.com
Wed Nov 29 15:54:36 CET 2023


On Wed, Nov 29, 2023 at 1:54 PM Jan Kara <jack@suse.cz> wrote:
>
> Convert feature check for availability of permission events to be
> performed on the tested filesystem.
>
> Signed-off-by: Jan Kara <jack@suse.cz>

Reviewed-by: Amir Goldstein <amir73il@gmail.com>

> ---
>  testcases/kernel/syscalls/fanotify/fanotify.h   | 5 +++--
>  testcases/kernel/syscalls/fanotify/fanotify03.c | 3 +--
>  testcases/kernel/syscalls/fanotify/fanotify07.c | 3 +--
>  3 files changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/testcases/kernel/syscalls/fanotify/fanotify.h b/testcases/kernel/syscalls/fanotify/fanotify.h
> index 052b29a7cedc..7cd2213e17bf 100644
> --- a/testcases/kernel/syscalls/fanotify/fanotify.h
> +++ b/testcases/kernel/syscalls/fanotify/fanotify.h
> @@ -133,13 +133,14 @@ static inline int fanotify_save_fid(const char *path,
>  #define INIT_FANOTIFY_MARK_TYPE(t) \
>         { FAN_MARK_ ## t, "FAN_MARK_" #t }
>
> -static inline void require_fanotify_access_permissions_supported_by_kernel(void)
> +static inline void require_fanotify_access_permissions_supported_on_fs(
> +                                                       const char *fname)
>  {
>         int fd;
>
>         fd = SAFE_FANOTIFY_INIT(FAN_CLASS_CONTENT, O_RDONLY);
>
> -       if (fanotify_mark(fd, FAN_MARK_ADD, FAN_ACCESS_PERM, AT_FDCWD, ".") < 0) {
> +       if (fanotify_mark(fd, FAN_MARK_ADD, FAN_ACCESS_PERM, AT_FDCWD, fname) < 0) {
>                 if (errno == EINVAL) {
>                         tst_brk(TCONF | TERRNO,
>                                 "CONFIG_FANOTIFY_ACCESS_PERMISSIONS not configured in kernel?");
> diff --git a/testcases/kernel/syscalls/fanotify/fanotify03.c b/testcases/kernel/syscalls/fanotify/fanotify03.c
> index 343ba857e1ae..028da742c76c 100644
> --- a/testcases/kernel/syscalls/fanotify/fanotify03.c
> +++ b/testcases/kernel/syscalls/fanotify/fanotify03.c
> @@ -320,11 +320,10 @@ static void test_fanotify(unsigned int n)
>
>  static void setup(void)
>  {
> -       require_fanotify_access_permissions_supported_by_kernel();
> -
>         sprintf(fname, MOUNT_PATH"/fname_%d", getpid());
>         SAFE_FILE_PRINTF(fname, "1");
>
> +       require_fanotify_access_permissions_supported_on_fs(fname);
>         filesystem_mark_unsupported = fanotify_mark_supported_on_fs(FAN_MARK_FILESYSTEM, fname);
>         exec_events_unsupported = fanotify_flags_supported_on_fs(FAN_CLASS_CONTENT,
>                                         0, FAN_OPEN_EXEC_PERM, fname);
> diff --git a/testcases/kernel/syscalls/fanotify/fanotify07.c b/testcases/kernel/syscalls/fanotify/fanotify07.c
> index 396c8490eeda..34aa810c7dac 100644
> --- a/testcases/kernel/syscalls/fanotify/fanotify07.c
> +++ b/testcases/kernel/syscalls/fanotify/fanotify07.c
> @@ -189,10 +189,9 @@ static void test_fanotify(void)
>
>  static void setup(void)
>  {
> -       require_fanotify_access_permissions_supported_by_kernel();
> -
>         sprintf(fname, "fname_%d", getpid());
>         SAFE_FILE_PRINTF(fname, "%s", fname);
> +       require_fanotify_access_permissions_supported_on_fs(fname);
>  }
>
>  static void cleanup(void)
> --
> 2.35.3
>


More information about the ltp mailing list