Re: [PATCH RFC v2 3/4] selftests: use shared header

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Oct 11, 2024 at 11:46 PM Christian Brauner <brauner@xxxxxxxxxx> wrote:
>
> So that we don't have to redefine the same system calls over and over.
>
> Signed-off-by: Christian Brauner <brauner@xxxxxxxxxx>

Heh, I forgot that this selftest existed, even though I clearly reviewed it
I will even run it from now on :)

Reviewed-by: Amir Goldstein <amir73il@xxxxxxxxx>

> ---
>  .../selftests/filesystems/overlayfs/dev_in_maps.c  | 27 +-------------
>  .../selftests/filesystems/overlayfs/wrappers.h     | 43 ++++++++++++++++++++++
>  2 files changed, 44 insertions(+), 26 deletions(-)
>
> diff --git a/tools/testing/selftests/filesystems/overlayfs/dev_in_maps.c b/tools/testing/selftests/filesystems/overlayfs/dev_in_maps.c
> index 2862aae58b79acbe175ab6b36b42798bb99a2225..3b796264223f81fc753d0adaeccc04077023520b 100644
> --- a/tools/testing/selftests/filesystems/overlayfs/dev_in_maps.c
> +++ b/tools/testing/selftests/filesystems/overlayfs/dev_in_maps.c
> @@ -17,32 +17,7 @@
>
>  #include "../../kselftest.h"
>  #include "log.h"
> -
> -static int sys_fsopen(const char *fsname, unsigned int flags)
> -{
> -       return syscall(__NR_fsopen, fsname, flags);
> -}
> -
> -static int sys_fsconfig(int fd, unsigned int cmd, const char *key, const char *value, int aux)
> -{
> -       return syscall(__NR_fsconfig, fd, cmd, key, value, aux);
> -}
> -
> -static int sys_fsmount(int fd, unsigned int flags, unsigned int attr_flags)
> -{
> -       return syscall(__NR_fsmount, fd, flags, attr_flags);
> -}
> -static int sys_mount(const char *src, const char *tgt, const char *fst,
> -               unsigned long flags, const void *data)
> -{
> -       return syscall(__NR_mount, src, tgt, fst, flags, data);
> -}
> -static int sys_move_mount(int from_dfd, const char *from_pathname,
> -                         int to_dfd, const char *to_pathname,
> -                         unsigned int flags)
> -{
> -       return syscall(__NR_move_mount, from_dfd, from_pathname, to_dfd, to_pathname, flags);
> -}
> +#include "wrappers.h"
>
>  static long get_file_dev_and_inode(void *addr, struct statx *stx)
>  {
> diff --git a/tools/testing/selftests/filesystems/overlayfs/wrappers.h b/tools/testing/selftests/filesystems/overlayfs/wrappers.h
> new file mode 100644
> index 0000000000000000000000000000000000000000..4f99e10f7f018fd9a7be5263f68d34807da4c53c
> --- /dev/null
> +++ b/tools/testing/selftests/filesystems/overlayfs/wrappers.h
> @@ -0,0 +1,43 @@
> +// SPDX-License-Identifier: GPL-2.0
> +//
> +#ifndef __SELFTEST_OVERLAYFS_WRAPPERS_H__
> +#define __SELFTEST_OVERLAYFS_WRAPPERS_H__
> +
> +#define _GNU_SOURCE
> +
> +#include <linux/types.h>
> +#include <linux/mount.h>
> +#include <sys/syscall.h>
> +
> +static inline int sys_fsopen(const char *fsname, unsigned int flags)
> +{
> +       return syscall(__NR_fsopen, fsname, flags);
> +}
> +
> +static inline int sys_fsconfig(int fd, unsigned int cmd, const char *key,
> +                              const char *value, int aux)
> +{
> +       return syscall(__NR_fsconfig, fd, cmd, key, value, aux);
> +}
> +
> +static inline int sys_fsmount(int fd, unsigned int flags,
> +                             unsigned int attr_flags)
> +{
> +       return syscall(__NR_fsmount, fd, flags, attr_flags);
> +}
> +
> +static inline int sys_mount(const char *src, const char *tgt, const char *fst,
> +                           unsigned long flags, const void *data)
> +{
> +       return syscall(__NR_mount, src, tgt, fst, flags, data);
> +}
> +
> +static inline int sys_move_mount(int from_dfd, const char *from_pathname,
> +                                int to_dfd, const char *to_pathname,
> +                                unsigned int flags)
> +{
> +       return syscall(__NR_move_mount, from_dfd, from_pathname, to_dfd,
> +                      to_pathname, flags);
> +}
> +
> +#endif
>
> --
> 2.45.2
>





[Index of Archives]     [Linux Filesystems Devel]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux