2021-11-18 09:59:07

by Anders Roxell

[permalink] [raw]
Subject: [PATCH v3 2/2] selftests: clone3: simplify return logic in clone3_set_tid()

Use ksft_exit_* and exit instead of using goto.

Signed-off-by: Anders Roxell <[email protected]>
---
tools/testing/selftests/clone3/clone3_set_tid.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/tools/testing/selftests/clone3/clone3_set_tid.c b/tools/testing/selftests/clone3/clone3_set_tid.c
index a755fcd3af89..1b950c3c3b7c 100644
--- a/tools/testing/selftests/clone3/clone3_set_tid.c
+++ b/tools/testing/selftests/clone3/clone3_set_tid.c
@@ -250,7 +250,8 @@ int main(int argc, char *argv[])
* that all those tests are skipped as non-root.
*/
ksft_cnt.ksft_xskip += ksft_plan - ksft_test_num();
- goto out;
+ ksft_exit_skip(
+ "Please run the remaining tests as root - Exiting.\n");
}

/* Find the current active PID */
@@ -371,9 +372,7 @@ int main(int argc, char *argv[])
close(pipe_2[1]);

if (waitpid(ns_pid, &status, 0) < 0) {
- ksft_print_msg("Child returned %s\n", strerror(errno));
- ret = -errno;
- goto out;
+ ksft_exit_fail_msg("Child returned %s\n", strerror(errno));
}

if (!WIFEXITED(status))
@@ -390,10 +389,6 @@ int main(int argc, char *argv[])
ksft_test_result_fail(
"PIDs in all namespaces not as expected (%d,%d,%d)\n",
ns3, ns2, ns1);
-out:
- ret = 0;

- if (ret)
- ksft_exit_fail();
ksft_exit_pass();
}
--
2.33.0



2021-11-18 10:06:11

by Anders Roxell

[permalink] [raw]
Subject: Re: [PATCH v3 2/2] selftests: clone3: simplify return logic in clone3_set_tid()

On Thu, 18 Nov 2021 at 10:58, Anders Roxell <[email protected]> wrote:
>
> Use ksft_exit_* and exit instead of using goto.
>

I'm sorry, I should have added Nick to this patch, since he suggested it.

Suggested-by: Nick Desaulniers <[email protected]>

Cheers,
Anders

> Signed-off-by: Anders Roxell <[email protected]>
> ---
> tools/testing/selftests/clone3/clone3_set_tid.c | 11 +++--------
> 1 file changed, 3 insertions(+), 8 deletions(-)
>
> diff --git a/tools/testing/selftests/clone3/clone3_set_tid.c b/tools/testing/selftests/clone3/clone3_set_tid.c
> index a755fcd3af89..1b950c3c3b7c 100644
> --- a/tools/testing/selftests/clone3/clone3_set_tid.c
> +++ b/tools/testing/selftests/clone3/clone3_set_tid.c
> @@ -250,7 +250,8 @@ int main(int argc, char *argv[])
> * that all those tests are skipped as non-root.
> */
> ksft_cnt.ksft_xskip += ksft_plan - ksft_test_num();
> - goto out;
> + ksft_exit_skip(
> + "Please run the remaining tests as root - Exiting.\n");
> }
>
> /* Find the current active PID */
> @@ -371,9 +372,7 @@ int main(int argc, char *argv[])
> close(pipe_2[1]);
>
> if (waitpid(ns_pid, &status, 0) < 0) {
> - ksft_print_msg("Child returned %s\n", strerror(errno));
> - ret = -errno;
> - goto out;
> + ksft_exit_fail_msg("Child returned %s\n", strerror(errno));
> }
>
> if (!WIFEXITED(status))
> @@ -390,10 +389,6 @@ int main(int argc, char *argv[])
> ksft_test_result_fail(
> "PIDs in all namespaces not as expected (%d,%d,%d)\n",
> ns3, ns2, ns1);
> -out:
> - ret = 0;
>
> - if (ret)
> - ksft_exit_fail();
> ksft_exit_pass();
> }
> --
> 2.33.0
>

2021-11-18 18:43:20

by Nick Desaulniers

[permalink] [raw]
Subject: Re: [PATCH v3 2/2] selftests: clone3: simplify return logic in clone3_set_tid()

On Thu, Nov 18, 2021 at 2:03 AM Anders Roxell <[email protected]> wrote:
>
> On Thu, 18 Nov 2021 at 10:58, Anders Roxell <[email protected]> wrote:
> >
> > Use ksft_exit_* and exit instead of using goto.
> >
>
> I'm sorry, I should have added Nick to this patch, since he suggested it.
>
> Suggested-by: Nick Desaulniers <[email protected]>
>
> Cheers,
> Anders
>
> > Signed-off-by: Anders Roxell <[email protected]>

Thanks for the patch!
Reviewed-by: Nick Desaulniers <[email protected]>

> > ---
> > tools/testing/selftests/clone3/clone3_set_tid.c | 11 +++--------
> > 1 file changed, 3 insertions(+), 8 deletions(-)
> >
> > diff --git a/tools/testing/selftests/clone3/clone3_set_tid.c b/tools/testing/selftests/clone3/clone3_set_tid.c
> > index a755fcd3af89..1b950c3c3b7c 100644
> > --- a/tools/testing/selftests/clone3/clone3_set_tid.c
> > +++ b/tools/testing/selftests/clone3/clone3_set_tid.c
> > @@ -250,7 +250,8 @@ int main(int argc, char *argv[])
> > * that all those tests are skipped as non-root.
> > */
> > ksft_cnt.ksft_xskip += ksft_plan - ksft_test_num();
> > - goto out;
> > + ksft_exit_skip(
> > + "Please run the remaining tests as root - Exiting.\n");
> > }
> >
> > /* Find the current active PID */
> > @@ -371,9 +372,7 @@ int main(int argc, char *argv[])
> > close(pipe_2[1]);
> >
> > if (waitpid(ns_pid, &status, 0) < 0) {
> > - ksft_print_msg("Child returned %s\n", strerror(errno));
> > - ret = -errno;
> > - goto out;
> > + ksft_exit_fail_msg("Child returned %s\n", strerror(errno));
> > }
> >
> > if (!WIFEXITED(status))
> > @@ -390,10 +389,6 @@ int main(int argc, char *argv[])
> > ksft_test_result_fail(
> > "PIDs in all namespaces not as expected (%d,%d,%d)\n",
> > ns3, ns2, ns1);
> > -out:
> > - ret = 0;
> >
> > - if (ret)
> > - ksft_exit_fail();
> > ksft_exit_pass();
> > }
> > --
> > 2.33.0
> >



--
Thanks,
~Nick Desaulniers