[LTP] [PATCH] pidns32: fix PID namespace nesting depth off-by-one
Petr Vorel
pvorel@suse.cz
Mon Mar 30 15:33:04 CEST 2026
Hi Vasileios,
> The 2023 refactor used tst_atomic_inc() before clone with a zero-initial
> counter, which only performed 31 CLONE_NEWPID nests while still expecting
> MAXNEST (32). Compare the level to MAXNEST first, then increment and clone,
> so the shared counter runs 0..32 and the chain reaches 32 nested namespaces
> again.
Indeed, good catch.
Reviewed-by: Petr Vorel <pvorel@suse.cz>
Kind regards,
Petr
> Fixes: 647cfd468c3b ("Refactor pidns32 test using new LTP API")
> Signed-off-by: Vasileios Almpanis <vasileios.almpanis@virtuozzo.com>
> ---
> testcases/kernel/containers/pidns/pidns32.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
> diff --git a/testcases/kernel/containers/pidns/pidns32.c b/testcases/kernel/containers/pidns/pidns32.c
> index fc9bf0aaa..3a272f569 100644
> --- a/testcases/kernel/containers/pidns/pidns32.c
> +++ b/testcases/kernel/containers/pidns/pidns32.c
> @@ -27,9 +27,11 @@ static pid_t child_func(void)
> {
> pid_t cpid = 0;
> - if (tst_atomic_inc(level) == MAXNEST)
> + if (tst_atomic_load(level) == MAXNEST)
> return cpid;
> + tst_atomic_inc(level);
> +
> cpid = SAFE_CLONE(&args);
> if (!cpid) {
> child_func();
More information about the ltp
mailing list