[LTP] [PATCH v2 2/2] Add unlink10 test

Wei Gao wegao@suse.com
Fri Jun 7 00:59:31 CEST 2024


On Wed, Jun 05, 2024 at 04:40:39PM +0200, Andrea Cervesato wrote:
> From: Andrea Cervesato <andrea.cervesato@suse.com>
> 
> This test verifies that unlink(2) fails with EROFS when target file
> is on a read-only filesystem.
> 
> Signed-off-by: Andrea Cervesato <andrea.cervesato@suse.com>
> ---
>  runtest/syscalls                            |  1 +
>  testcases/kernel/syscalls/unlink/.gitignore |  1 +
>  testcases/kernel/syscalls/unlink/unlink10.c | 33 +++++++++++++++++++++++++++++
>  3 files changed, 35 insertions(+)
> 
> diff --git a/runtest/syscalls b/runtest/syscalls
> index cf06ee563..b59b64314 100644
> --- a/runtest/syscalls
> +++ b/runtest/syscalls
> @@ -1655,6 +1655,7 @@ unlink05 unlink05
>  unlink07 unlink07
>  unlink08 unlink08
>  unlink09 unlink09
> +unlink10 unlink10
>  
>  #unlinkat test cases
>  unlinkat01 unlinkat01
> diff --git a/testcases/kernel/syscalls/unlink/.gitignore b/testcases/kernel/syscalls/unlink/.gitignore
> index 6038cc29d..4fc24059a 100644
> --- a/testcases/kernel/syscalls/unlink/.gitignore
> +++ b/testcases/kernel/syscalls/unlink/.gitignore
> @@ -2,3 +2,4 @@
>  /unlink07
>  /unlink08
>  /unlink09
> +/unlink10
> diff --git a/testcases/kernel/syscalls/unlink/unlink10.c b/testcases/kernel/syscalls/unlink/unlink10.c
> new file mode 100644
> index 000000000..861f24a50
> --- /dev/null
> +++ b/testcases/kernel/syscalls/unlink/unlink10.c
> @@ -0,0 +1,33 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later
> +/*
> + * Copyright (c) 2024 FUJITSU LIMITED. All Rights Reserved.
> + * Author: Yang Xu <xuyang2018.jy@fujitsu.com>
> + * Copyright (C) 2024 SUSE LLC Andrea Cervesato <andrea.cervesato@suse.com>
> + */
> +
> +/*\
> + * [Description]
> + *
> + * Verify that unlink(2) fails with EROFS when target file is on a read-only
> + * filesystem.
> + */
> +
> +#include <sys/ioctl.h>
> +#include "tst_test.h"
> +#include "lapi/fs.h"
> +
> +#define MNTPOINT "erofs"
> +#define FILENAME MNTPOINT"/file"
> +
> +static void run(void)
> +{
> +	TST_EXP_FAIL(unlink(FILENAME), EROFS,
> +		"%s", "target file in read-only filesystem");
> +}
> +
> +static struct tst_test test = {
> +	.test_all = run,
> +	.needs_rofs = 1,
> +	.needs_root = 1,
> +	.mntpoint = MNTPOINT,
> +};
Reviewed-by: Wei Gao <wegao@suse.com>
> 
> -- 
> 2.35.3
> 
> 
> -- 
> Mailing list info: https://lists.linux.it/listinfo/ltp


More information about the ltp mailing list