public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
From: Petr Vorel <pvorel@suse.cz>
To: Zhao Gongyi <zhaogongyi@huawei.com>
Cc: ltp@lists.linux.it
Subject: Re: [LTP] [PATCH 1/2] lib: Add checking of needs_root
Date: Wed, 12 Oct 2022 13:33:18 +0200	[thread overview]
Message-ID: <Y0al/lzocpDw6hBb@pevik> (raw)
In-Reply-To: <20221012091526.35373-2-zhaogongyi@huawei.com>

Hi all,

The subject "lib: Add checking of needs_root" is a bit misleading
as it does not mention at all that it's for the loop device.

> We need to check needs_root is set when tst_test->needs_device or
> tst_test->mount_device is set since access the /dev/* need a
> privilege.

FYI we had some discussion about it, quoting Cyril [1]:

	Well technically you can be added into whatever group is set to
	/dev/loop-control e.g. disk group and then you can create devices
	without a need to be a root.

	So the most correct solution would be checking if we can access
	/dev/loop-control if tst_test.needs_device is set and if not we would
	imply needs_root. However this would need to be rethinked properly so
	that we do not end up creating something complex and not really
	required.

There is also possibility to add custom device via $LTP_DEV. That might allow to
add permissions which allow to test without root.

I'll write to automated-testing ML (and maybe to LKML ML) to see if people
prefers to test without non-root.

Also, if changed, we'd need the same change for C API.

Kind regards,
Petr

[1] https://lore.kernel.org/ltp/Yx8I0ponDUIFC8le@yuki/

> Signed-off-by: Zhao Gongyi <zhaogongyi@huawei.com>
> ---
>  lib/tst_test.c | 5 +++++
>  1 file changed, 5 insertions(+)

> diff --git a/lib/tst_test.c b/lib/tst_test.c
> index 8ccde1629..728a1d921 100644
> --- a/lib/tst_test.c
> +++ b/lib/tst_test.c
> @@ -1196,6 +1196,11 @@ static void do_setup(int argc, char *argv[])
>  		tst_brk(TBROK, "tst_test->mntpoint must be set!");
>  	}

> +	if ((tst_test->needs_device || tst_test->mount_device) &&
> +	     !tst_test->needs_root) {
> +		tst_brk(TBROK, "tst_test->needs_root must be set!");
> +	}
> +
>  	if (!!tst_test->needs_rofs + !!tst_test->needs_devfs +
>  	    !!tst_test->needs_device > 1) {
>  		tst_brk(TBROK,

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

  reply	other threads:[~2022-10-12 11:33 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-12  9:15 [LTP] [PATCH 0/2] Optimization reference to needs_root Zhao Gongyi via ltp
2022-10-12  9:15 ` [LTP] [PATCH 1/2] lib: Add checking of needs_root Zhao Gongyi via ltp
2022-10-12 11:33   ` Petr Vorel [this message]
2022-10-12 18:47     ` Bird, Tim
2022-10-12 19:13       ` Petr Vorel
2022-10-12  9:15 ` [LTP] [PATCH 2/2] needs_root: Add setting " Zhao Gongyi via ltp
2022-10-13  7:41   ` Petr Vorel
  -- strict thread matches above, loose matches on Subject: below --
2022-10-13  2:32 [LTP] [PATCH 1/2] lib: Add checking " zhaogongyi via ltp
2022-10-13  7:38 ` Petr Vorel
2022-10-13  7:52 zhaogongyi via ltp
2022-10-13  9:11 ` Petr Vorel

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=Y0al/lzocpDw6hBb@pevik \
    --to=pvorel@suse.cz \
    --cc=ltp@lists.linux.it \
    --cc=zhaogongyi@huawei.com \
    /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