[LTP] [PATCH v3 2/2] fanotify14: Improve check for unsupported init flags

Amir Goldstein amir73il@gmail.com
Mon Oct 23 15:52:47 CEST 2023


On Mon, Oct 23, 2023 at 3:51 PM Martin Doucha <mdoucha@suse.cz> wrote:
>
> On 20. 10. 23 18:05, Amir Goldstein wrote:
> > On Fri, Oct 20, 2023 at 6:07 PM Martin Doucha <mdoucha@suse.cz> wrote:
> >>
> >> Test case 8 of fanotify14 uses init flags supported only on kernel 5.9+
> >> but does not properly check for their support. Rewrite fanotify feature
> >> checks using new helper function.
> >>
> >> Signed-off-by: Martin Doucha <mdoucha@suse.cz>
> >> ---
> >>
> >> Changes since v1:
> >> - Added FAN_CLASS_* constants to support check in setup()
> >> - Added longer patch description
> >>
> >> Changes since v2: None
> >>
> >> I'd rather not squash this patch so that it can be reverted without
> >> potentially breaking other tests.
> >>
> >>   testcases/kernel/syscalls/fanotify/fanotify14.c | 15 +++++++++------
> >>   1 file changed, 9 insertions(+), 6 deletions(-)
> >>
> >> diff --git a/testcases/kernel/syscalls/fanotify/fanotify14.c b/testcases/kernel/syscalls/fanotify/fanotify14.c
> >> index 4596511f0..0bb789188 100644
> >> --- a/testcases/kernel/syscalls/fanotify/fanotify14.c
> >> +++ b/testcases/kernel/syscalls/fanotify/fanotify14.c
> >> @@ -45,8 +45,8 @@
> >>
> >>   static int pipes[2] = {-1, -1};
> >>   static int fanotify_fd;
> >> -static int fan_report_target_fid_unsupported;
> >>   static int ignore_mark_unsupported;
> >> +static unsigned int supported_init_flags;
> >>
> >>   struct test_case_flags_t {
> >>          unsigned long long flags;
> >> @@ -246,9 +246,8 @@ static void do_test(unsigned int number)
> >>          tst_res(TINFO, "Test case %d: fanotify_init(%s, O_RDONLY)", number,
> >>                  tc->init.desc);
> >>
> >> -       if (fan_report_target_fid_unsupported && tc->init.flags & FAN_REPORT_TARGET_FID) {
> >> -               FANOTIFY_INIT_FLAGS_ERR_MSG(FAN_REPORT_TARGET_FID,
> >> -                                           fan_report_target_fid_unsupported);
> >> +       if (tc->init.flags & ~supported_init_flags) {
> >> +               tst_res(TCONF, "Unsupported init flags"
> >
> > suggest to preserve the information printed by
> > FANOTIFY_INIT_FLAGS_ERR_MSG, you can use tc->init.desc
> > the for the flag name string.
>
> tc->init.desc gets printed by the TINFO message at the start of the
> patch chunk. The return value from fanotify_init_flags_supported_on_fs()
> is not preserved anywhere by the new fanotify_get_supported_init_flags()
> helper function so I have nothing to pass as the second argument of
> FANOTIFY_INIT_FLAGS_ERR_MSG().
>

OK.

Thanks,
Amir.


More information about the ltp mailing list