[LTP] [PATCH v2 1/1] creat09: Run on all_filesystems

xuyang2018.jy@fujitsu.com xuyang2018.jy@fujitsu.com
Fri Oct 15 09:36:53 CEST 2021


Hi Petr
> To make sure bug on XFS is detected on systems which use it.
>
> Due setgid is test problematic on Microsoft filesystems:
>
> creat09.c:81: TBROK: ntfs: Setgid bit not set
> creat09.c:76: TBROK: chown(exfat,65533,4) failed: EPERM (1)
> creat09.c:76: TBROK: chown(vfat,65533,4) failed: EPERM (1)
>
> thus they're disabled.
>
> Signed-off-by: Petr Vorel<pvorel@suse.cz>
> ---
> Changes v1->v2:
> * drop useless code creating directory (reported by Martin Doucha)
>
>   testcases/kernel/syscalls/creat/creat09.c | 15 ++++++++++++++-
>   1 file changed, 14 insertions(+), 1 deletion(-)
>
> diff --git a/testcases/kernel/syscalls/creat/creat09.c b/testcases/kernel/syscalls/creat/creat09.c
> index 681b80c7d..1d6c1643c 100644
> --- a/testcases/kernel/syscalls/creat/creat09.c
> +++ b/testcases/kernel/syscalls/creat/creat09.c
> @@ -33,13 +33,15 @@
>   #include<stdlib.h>
>   #include<sys/types.h>
>   #include<pwd.h>
> +#include<stdio.h>
>   #include "tst_test.h"
>   #include "tst_uid.h"
>
>   #define MODE_RWX        0777
>   #define MODE_SGID       (S_ISGID|0777)
>
> -#define WORKDIR		"testdir"
> +#define MNTPOINT	"mntpoint"
> +#define WORKDIR		MNTPOINT "testdir"
You missed "/".
>   #define CREAT_FILE	WORKDIR "/creat.tmp"
>   #define OPEN_FILE	WORKDIR "/open.tmp"
>
> @@ -51,6 +53,8 @@ static void setup(void)
>   	struct stat buf;
>   	struct passwd *ltpuser = SAFE_GETPWNAM("nobody");
>
> +	SAFE_CHDIR(MNTPOINT);
Why need chdir?
> +
>   	tst_res(TINFO, "User nobody: uid = %d, gid = %d", (int)ltpuser->pw_uid,
>   		(int)ltpuser->pw_gid);
>   	free_gid = tst_get_free_gid(ltpuser->pw_gid);
> @@ -119,6 +123,15 @@ static struct tst_test test = {
>   	.cleanup = cleanup,
>   	.needs_root = 1,
>   	.needs_tmpdir = 1,
This can be removed.

Best Regards
Yang Xu
> +	.all_filesystems = 1,
> +	.mount_device = 1,
> +	.mntpoint = MNTPOINT,
> +	.skip_filesystems = (const char*[]) {
> +		"exfat",
> +		"ntfs",
> +		"vfat",
> +		NULL
> +	},
>   	.tags = (const struct tst_tag[]) {
>   		{"linux-git", "0fa3ecd87848"},
>   		{"CVE", "2018-13405"},


More information about the ltp mailing list