lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 25 Aug 2023 14:54:01 +0200
From: Magnus Karlsson <magnus.karlsson@...il.com>
To: Maciej Fijalkowski <maciej.fijalkowski@...el.com>
Cc: magnus.karlsson@...el.com, bjorn@...nel.org, ast@...nel.org, 
	daniel@...earbox.net, netdev@...r.kernel.org, bpf@...r.kernel.org, yhs@...com, 
	andrii@...nel.org, martin.lau@...ux.dev, song@...nel.org, 
	john.fastabend@...il.com, kpsingh@...nel.org, sdf@...gle.com, 
	haoluo@...gle.com, jolsa@...nel.org, przemyslaw.kitszel@...el.com
Subject: Re: [PATCH bpf-next v2 10/11] selftests/xsk: display command line
 options with -h

On Fri, 25 Aug 2023 at 14:50, Maciej Fijalkowski
<maciej.fijalkowski@...el.com> wrote:
>
> On Thu, Aug 24, 2023 at 02:28:52PM +0200, Magnus Karlsson wrote:
> > From: Magnus Karlsson <magnus.karlsson@...el.com>
> >
> > Add the -h option to display all available command line options
> > available for test_xsk.sh and xskxceiver.
> >
> > Signed-off-by: Magnus Karlsson <magnus.karlsson@...el.com>
> > ---
> >  tools/testing/selftests/bpf/test_xsk.sh  | 11 ++++++++++-
> >  tools/testing/selftests/bpf/xskxceiver.c |  5 ++++-
> >  2 files changed, 14 insertions(+), 2 deletions(-)
> >
> > diff --git a/tools/testing/selftests/bpf/test_xsk.sh b/tools/testing/selftests/bpf/test_xsk.sh
> > index b7186ae48497..9ec718043c1a 100755
> > --- a/tools/testing/selftests/bpf/test_xsk.sh
> > +++ b/tools/testing/selftests/bpf/test_xsk.sh
> > @@ -82,12 +82,15 @@
> >  #
> >  # Run a specific test from the test suite
> >  #   sudo ./test_xsk.sh -t TEST_NAME
> > +#
> > +# Display the available command line options
> > +#   ./test_xsk.sh -h
> >
> >  . xsk_prereqs.sh
> >
> >  ETH=""
> >
> > -while getopts "vi:dm:lt:" flag
> > +while getopts "vi:dm:lt:h" flag
> >  do
> >       case "${flag}" in
> >               v) verbose=1;;
> > @@ -96,6 +99,7 @@ do
> >               m) XSKTEST_MODE=${OPTARG};;
> >               l) list=1;;
> >               t) XSKTEST_TEST=${OPTARG};;
> > +             h) help=1;;
> >       esac
> >  done
> >
> > @@ -148,6 +152,11 @@ if [[ $list -eq 1 ]]; then
> >          exit
> >  fi
> >
> > +if [[ $help -eq 1 ]]; then
> > +     ./${XSKOBJ}
> > +        exit
> > +fi
> > +
> >  if [ ! -z $ETH ]; then
> >       VETH0=${ETH}
> >       VETH1=${ETH}
> > diff --git a/tools/testing/selftests/bpf/xskxceiver.c b/tools/testing/selftests/bpf/xskxceiver.c
> > index 19db9a827c30..9feb476d647f 100644
> > --- a/tools/testing/selftests/bpf/xskxceiver.c
> > +++ b/tools/testing/selftests/bpf/xskxceiver.c
> > @@ -318,6 +318,7 @@ static struct option long_options[] = {
> >       {"mode", required_argument, 0, 'm'},
> >       {"list", no_argument, 0, 'l'},
> >       {"test", required_argument, 0, 't'},
> > +     {"help", no_argument, 0, 'h'},
> >       {0, 0, 0, 0}
> >  };
> >
> > @@ -331,7 +332,8 @@ static void print_usage(char **argv)
> >               "  -b, --busy-poll      Enable busy poll\n"
> >               "  -m, --mode           Run only mode skb, drv, or zc\n"
> >               "  -l, --list           List all available tests\n"
> > -             "  -t, --test           Run a specific test. Enter number from -l option.\n";
> > +             "  -t, --test           Run a specific test. Enter number from -l option.\n"
> > +             "  -h, --help           Display this help and exit\n";
> >
> >       ksft_print_msg(str, basename(argv[0]));
> >       ksft_exit_xfail();
> > @@ -406,6 +408,7 @@ static void parse_command_line(struct ifobject *ifobj_tx, struct ifobject *ifobj
> >                       if (errno)
> >                               print_usage(argv);
> >                       break;
> > +             case 'h':
>
> do you need 'fallthrough' here?

Did not get any complaints from checkpatch, so do not know since it is
a case without any content on its own. I would say it is obvious that
it is "falling through" in this case :-). But I do not know what the
rule is.

> >               default:
> >                       print_usage(argv);
> >               }
> > --
> > 2.34.1
> >

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ