On Mon, Mar 13, 2023 at 08:03:30PM +0100, Rodrigo Campos wrote: > This patch calls all tests in the suite s_idmapped_mounts, but with a > tmpfs directory mounted inside a userns. This directory is setup as the > mount point for the test that runs nested. > > This excercises that tmpfs mounted inside a userns works as expected > regarding idmap mounts. > > Signed-off-by: Rodrigo Campos <rodrigo@xxxxxxxxxxx> > --- > src/vfs/Makefile | 4 +- > src/vfs/tmpfs-idmapped-mounts.c | 305 ++++++++++++++++++++++++++++++++ > src/vfs/tmpfs-idmapped-mounts.h | 15 ++ > src/vfs/utils.h | 2 + > src/vfs/vfstest.c | 13 +- > tests/tmpfs/001 | 27 +++ > tests/tmpfs/001.out | 2 + > tests/tmpfs/Makefile | 24 +++ > 8 files changed, 389 insertions(+), 3 deletions(-) > create mode 100644 src/vfs/tmpfs-idmapped-mounts.c > create mode 100644 src/vfs/tmpfs-idmapped-mounts.h > create mode 100755 tests/tmpfs/001 > create mode 100644 tests/tmpfs/001.out > create mode 100644 tests/tmpfs/Makefile > [snip] > diff --git src/vfs/tmpfs-idmapped-mounts.h src/vfs/tmpfs-idmapped-mounts.h > new file mode 100644 > index 00000000..038d86a9 > --- /dev/null > +++ src/vfs/tmpfs-idmapped-mounts.h > @@ -0,0 +1,15 @@ > +/* SPDX-License-Identifier: GPL-2.0 */ > + > +#ifndef __TMPFS_IDMAPPED_MOUNTS_H > +#define __TMPFS_IDMAPPED_MOUNTS_H > + > +#ifndef _GNU_SOURCE > +#define _GNU_SOURCE > +#endif > + > +#include "utils.h" > + > +extern const struct test_suite s_tmpfs_idmapped_mounts; > + > +#endif /* __TMPFS_IDMAPPED_MOUNTS_H */ > + ^^ A blank line at EOF > diff --git src/vfs/utils.h src/vfs/utils.h > index f1681737..872fd96f 100644 > --- src/vfs/utils.h > +++ src/vfs/utils.h > @@ -45,6 +45,8 @@ > #define DIR2 "dir2" > #define DIR3 "dir3" [snip] > diff --git tests/tmpfs/Makefile tests/tmpfs/Makefile > new file mode 100644 > index 00000000..b464b22b > --- /dev/null > +++ tests/tmpfs/Makefile > @@ -0,0 +1,24 @@ > +# > +# Copyright (c) 2003-2005 Silicon Graphics, Inc. All Rights Reserved. Is the copyright what you want? > +# > + > +TOPDIR = ../.. > +include $(TOPDIR)/include/builddefs > +include $(TOPDIR)/include/buildgrouplist > + > +GENERIC_DIR = generic > +TARGET_DIR = $(PKG_LIB_DIR)/$(TESTS_DIR)/$(GENERIC_DIR) Above two lines are wrong, that'll cause tmpfs/001 can't be installed correctly. You can change them to: TMPFS_DIR = tmpfs TARGET_DIR = $(PKG_LIB_DIR)/$(TESTS_DIR)/$(TMPFS_DIR) Thanks, Zorro > +DIRT = group.list > + > +default: $(DIRT) > + > +include $(BUILDRULES) > + > +install: > + $(INSTALL) -m 755 -d $(TARGET_DIR) > + $(INSTALL) -m 755 $(TESTS) $(TARGET_DIR) > + $(INSTALL) -m 644 group.list $(TARGET_DIR) > + $(INSTALL) -m 644 $(OUTFILES) $(TARGET_DIR) > + > +# Nothing. > +install-dev install-lib: > -- > 2.39.2 >