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] [day] [month] [year] [list]
Message-ID: <8d52ed42f94346889fb0b5534d123a39@intel.com>
Date:   Tue, 23 Feb 2021 15:01:14 +0000
From:   "Loftus, Ciara" <ciara.loftus@...el.com>
To:     "Fijalkowski, Maciej" <maciej.fijalkowski@...el.com>
CC:     "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
        "bpf@...r.kernel.org" <bpf@...r.kernel.org>,
        "Karlsson, Magnus" <magnus.karlsson@...el.com>,
        "bjorn@...nel.org" <bjorn@...nel.org>,
        "Janjua, Weqaar A" <weqaar.a.janjua@...el.com>
Subject: RE: [PATCH bpf-next v2 2/4] selftests/bpf: expose and rename debug
 argument

> 
> On Tue, Feb 23, 2021 at 10:35:05AM +0000, Ciara Loftus wrote:
> > Launching xdpxceiver with -D enables what was formerly know as 'debug'
> > mode. Rename this mode to 'dump-pkts' as it better describes the
> > behavior enabled by the option. New usage:
> >
> > ./xdpxceiver .. -D
> > or
> > ./xdpxceiver .. --dump-pkts
> >
> > Also make it possible to pass this flag to the app via the test_xsk.sh
> > shell script like so:
> >
> > ./test_xsk.sh -D
> 
> This doesn't work for me. Not a shell programming expert, but seems like
> my shell doesn't understand that dump-pkts is a variable.
> 
> $ sudo ./test_xsk.sh -D
> ./test_xsk.sh: line 82: dump-pkts=1: command not found
> 
> If I do:
> 
> diff --git a/tools/testing/selftests/bpf/test_xsk.sh
> b/tools/testing/selftests/bpf/test_xsk.sh
> index cb8a9e5c34ff..378720e22877 100755
> --- a/tools/testing/selftests/bpf/test_xsk.sh
> +++ b/tools/testing/selftests/bpf/test_xsk.sh
> @@ -79,7 +79,7 @@ do
>         case "${flag}" in
>                 c) colorconsole=1;;
>                 v) verbose=1;;
> -               D) dump-pkts=1;;
> +               D) dump_pkts=1;;
>         esac
>  done
> 
> @@ -136,7 +136,7 @@ if [[ $verbose -eq 1 ]]; then
>         VERBOSE_ARG="-v"
>  fi
> 
> -if [[ $dump-pkts -eq 1 ]]; then
> +if [[ $dump_pkts -eq 1 ]]; then
>         DUMP_PKTS_ARG="-D"
>  fi
> 
> Then it's fine.

Thanks for catching this Maciej. My shell didn't complain like yours, however with this naming the flag wasn't propagating to the app for me.
Switching to 'dump_pkts' as you suggested solves both problems, so I'll update that in the v3.

> 
> >
> > Signed-off-by: Ciara Loftus <ciara.loftus@...el.com>
> > ---
> >  tools/testing/selftests/bpf/test_xsk.sh    | 7 ++++++-
> >  tools/testing/selftests/bpf/xdpxceiver.c   | 6 +++---
> >  tools/testing/selftests/bpf/xsk_prereqs.sh | 3 ++-
> >  3 files changed, 11 insertions(+), 5 deletions(-)
> >
> > diff --git a/tools/testing/selftests/bpf/test_xsk.sh
> b/tools/testing/selftests/bpf/test_xsk.sh
> > index 91127a5be90d..870ae3f38818 100755
> > --- a/tools/testing/selftests/bpf/test_xsk.sh
> > +++ b/tools/testing/selftests/bpf/test_xsk.sh
> > @@ -74,11 +74,12 @@
> >
> >  . xsk_prereqs.sh
> >
> > -while getopts "cv" flag
> > +while getopts "cvD" flag
> >  do
> >  	case "${flag}" in
> >  		c) colorconsole=1;;
> >  		v) verbose=1;;
> > +		D) dump-pkts=1;;
> >  	esac
> >  done
> >
> > @@ -135,6 +136,10 @@ if [[ $verbose -eq 1 ]]; then
> >  	VERBOSE_ARG="-v"
> >  fi
> >
> > +if [[ $dump-pkts -eq 1 ]]; then
> > +	DUMP_PKTS_ARG="-D"
> > +fi
> > +
> >  test_status $retval "${TEST_NAME}"
> >
> >  ## START TESTS
> > diff --git a/tools/testing/selftests/bpf/xdpxceiver.c
> b/tools/testing/selftests/bpf/xdpxceiver.c
> > index 8af746c9a6b6..506423201197 100644
> > --- a/tools/testing/selftests/bpf/xdpxceiver.c
> > +++ b/tools/testing/selftests/bpf/xdpxceiver.c
> > @@ -58,7 +58,7 @@
> >   * - Rx thread verifies if all 10k packets were received and delivered in-
> order,
> >   *   and have the right content
> >   *
> > - * Enable/disable debug mode:
> > + * Enable/disable packet dump mode:
> >   * --------------------------
> >   * To enable L2 - L4 headers and payload dump of each packet on STDOUT,
> add
> >   * parameter -D to params array in test_xsk.sh, i.e. params=("-S" "-D")
> > @@ -340,7 +340,7 @@ static struct option long_options[] = {
> >  	{"copy", no_argument, 0, 'c'},
> >  	{"tear-down", no_argument, 0, 'T'},
> >  	{"bidi", optional_argument, 0, 'B'},
> > -	{"debug", optional_argument, 0, 'D'},
> > +	{"dump-pkts", optional_argument, 0, 'D'},
> >  	{"verbose", no_argument, 0, 'v'},
> >  	{"tx-pkt-count", optional_argument, 0, 'C'},
> >  	{0, 0, 0, 0}
> > @@ -359,7 +359,7 @@ static void usage(const char *prog)
> >  	    "  -c, --copy           Force copy mode\n"
> >  	    "  -T, --tear-down      Tear down sockets by repeatedly recreating
> them\n"
> >  	    "  -B, --bidi           Bi-directional sockets test\n"
> > -	    "  -D, --debug          Debug mode - dump packets L2 - L5\n"
> > +	    "  -D, --dump-pkts      Dump packets L2 - L5\n"
> >  	    "  -v, --verbose        Verbose output\n"
> >  	    "  -C, --tx-pkt-count=n Number of packets to send\n";
> >  	ksft_print_msg(str, prog);
> > diff --git a/tools/testing/selftests/bpf/xsk_prereqs.sh
> b/tools/testing/selftests/bpf/xsk_prereqs.sh
> > index ef8c5b31f4b6..da93575d757a 100755
> > --- a/tools/testing/selftests/bpf/xsk_prereqs.sh
> > +++ b/tools/testing/selftests/bpf/xsk_prereqs.sh
> > @@ -128,5 +128,6 @@ execxdpxceiver()
> >  			copy[$index]=${!current}
> >  		done
> >
> > -	./${XSKOBJ} -i ${VETH0} -i ${VETH1},${NS1} ${copy[*]} -C
> ${NUMPKTS} ${VERBOSE_ARG}
> > +	./${XSKOBJ} -i ${VETH0} -i ${VETH1},${NS1} ${copy[*]} -C
> ${NUMPKTS} ${VERBOSE_ARG} \
> > +		${DUMP_PKTS_ARG}
> >  }
> > --
> > 2.17.1
> >

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ