public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
From: Cyril Hrubis <chrubis@suse.cz>
To: Andrea Cervesato <andrea.cervesato@suse.de>
Cc: ltp@lists.linux.it
Subject: Re: [LTP] [PATCH v3 04/11] Add listmount01 test
Date: Tue, 9 Jul 2024 10:46:37 +0200	[thread overview]
Message-ID: <Zoz47WNb28I1ID4d@yuki> (raw)
In-Reply-To: <20240516-listmount_statmount-v3-4-2ff4ba29bba7@suse.com>

Hi!
> --- /dev/null
> +++ b/testcases/kernel/syscalls/listmount/listmount01.c
> @@ -0,0 +1,66 @@
> +// SPDX-License-Identifier: GPL-2.0-or-later
> +/*
> + * Copyright (C) 2024 SUSE LLC Andrea Cervesato <andrea.cervesato@suse.com>
> + */
> +
> +/*\
> + * [Description]
> + *
> + * This test verifies that listmount() is properly recognizing a mounted
> + * root directory using LSMT_ROOT flag.
> + *
> + * [Algorithm]
> + *
> + * * move into a new unshared namespace
> + * * mount() a root inside temporary folder and get its mount ID
> + * * get list of mounted IDs using listmount(LSMT_ROOT, ..)
> + * * verify that the root mount ID is the only mount ID present inside the list

Can we please use dashes here instead of asterisks? It's kind of hard to
read asterisk based list inside of C comments...

> + */
> +
> +#include "listmount.h"
> +#include "lapi/stat.h"
> +#include "lapi/sched.h"
> +
> +#define MNTPOINT "mntpoint"
> +#define LISTSIZE 32
> +
> +static uint64_t root_id;
> +
> +static void run(void)
> +{
> +	uint64_t list[LISTSIZE];
> +
> +	TST_EXP_POSITIVE(listmount(LSMT_ROOT, 0, list, LISTSIZE, 0));
> +	if (TST_RET == -1)
> +		return;
> +
> +	TST_EXP_EQ_LI(TST_RET, 1);
> +	TST_EXP_EQ_LI(list[0], root_id);
> +}
> +
> +static void setup(void)
> +{
> +	struct statx sx;
> +
> +	SAFE_UNSHARE(CLONE_NEWNS);
> +
> +	SAFE_CHROOT(MNTPOINT);
> +	SAFE_MOUNT("", "/", NULL, MS_REC | MS_PRIVATE, NULL);
> +	SAFE_STATX(AT_FDCWD, "/", 0, STATX_MNT_ID_UNIQUE, &sx);
> +
> +	root_id = sx.stx_mnt_id;
> +}
> +
> +static struct tst_test test = {
> +	.test_all = run,
> +	.setup = setup,
> +	.forks_child = 1,
> +	.min_kver = "6.8",
> +	.mount_device = 1,
> +	.mntpoint = MNTPOINT,
> +	.all_filesystems = 1,

I do not think that this makes sense to be run for all filesystems, the
listmount() syscall does not interact with any of the filesytem code at
all. It just loops over a list of mount points in the namespace.

> +	.skip_filesystems = (const char *const []) {
> +		"fuse",
> +		NULL
> +	},
> +};
> 
> -- 
> 2.35.3
> 
> 
> -- 
> Mailing list info: https://lists.linux.it/listinfo/ltp

-- 
Cyril Hrubis
chrubis@suse.cz

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

  reply	other threads:[~2024-07-09  8:47 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-16 12:29 [LTP] [PATCH v3 00/11] statmount/listmount testing suites Andrea Cervesato
2024-05-16 12:29 ` [LTP] [PATCH v3 01/11] Add SAFE_STATX macro Andrea Cervesato
2024-07-09  6:15   ` Avinesh Kumar
2024-05-16 12:29 ` [LTP] [PATCH v3 02/11] Add listmount/statmount syscalls Andrea Cervesato
2024-07-09  6:15   ` Avinesh Kumar
2024-05-16 12:29 ` [LTP] [PATCH v3 03/11] Add listmount/statmount fallback declarations Andrea Cervesato
2024-07-09  8:06   ` Cyril Hrubis
2024-05-16 12:29 ` [LTP] [PATCH v3 04/11] Add listmount01 test Andrea Cervesato
2024-07-09  8:46   ` Cyril Hrubis [this message]
2024-05-16 12:29 ` [LTP] [PATCH v3 05/11] Add listmount02 test Andrea Cervesato
2024-07-09 10:18   ` Cyril Hrubis
2024-05-16 12:29 ` [LTP] [PATCH v3 06/11] Add stamount01 test Andrea Cervesato
2024-07-09 11:15   ` Cyril Hrubis
2024-07-10  8:00   ` Cyril Hrubis
2024-05-16 12:29 ` [LTP] [PATCH v3 07/11] Add statmount02 test Andrea Cervesato
2024-07-10  8:03   ` Cyril Hrubis
2024-05-16 12:29 ` [LTP] [PATCH v3 08/11] Add statmount03 test Andrea Cervesato
2024-07-10  8:18   ` Cyril Hrubis
2024-05-16 12:29 ` [LTP] [PATCH v3 09/11] Add statmount04 test Andrea Cervesato
2024-07-10 14:27   ` Cyril Hrubis
2024-07-10 14:42     ` Cyril Hrubis
2024-05-16 12:29 ` [LTP] [PATCH v3 10/11] Add statmount05 test Andrea Cervesato
2024-07-10 15:09   ` Cyril Hrubis
2024-05-16 12:29 ` [LTP] [PATCH v3 11/11] Add statmount06 test Andrea Cervesato
2024-07-10 14:55   ` Cyril Hrubis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Zoz47WNb28I1ID4d@yuki \
    --to=chrubis@suse.cz \
    --cc=andrea.cervesato@suse.de \
    --cc=ltp@lists.linux.it \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox