diff mbox series

[bpf-next,v2,2/4] selftests/bpf: expose and rename debug argument

Message ID 20210223103507.10465-3-ciara.loftus@intel.com (mailing list archive)
State Superseded
Delegated to: BPF
Headers show
Series selftests/bpf: xsk improvements and new stats tests | expand

Checks

Context Check Description
netdev/cover_letter success Link
netdev/fixes_present success Link
netdev/patch_count success Link
netdev/tree_selection success Clearly marked for bpf-next
netdev/subject_prefix success Link
netdev/cc_maintainers warning 13 maintainers not CCed: davem@davemloft.net hawk@kernel.org shuah@kernel.org kpsingh@kernel.org songliubraving@fb.com linux-kselftest@vger.kernel.org yhs@fb.com daniel@iogearbox.net kafai@fb.com john.fastabend@gmail.com kuba@kernel.org ast@kernel.org andrii@kernel.org
netdev/source_inline success Was 0 now: 0
netdev/verify_signedoff success Link
netdev/module_param success Was 0 now: 0
netdev/build_32bit success Errors and warnings before: 0 this patch: 0
netdev/kdoc success Errors and warnings before: 0 this patch: 0
netdev/verify_fixes success Link
netdev/checkpatch warning WARNING: line length of 92 exceeds 80 columns
netdev/build_allmodconfig_warn success Errors and warnings before: 0 this patch: 0
netdev/header_inline success Link
netdev/stable success Stable not CCed

Commit Message

Ciara Loftus Feb. 23, 2021, 10:35 a.m. UTC
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

Signed-off-by: Ciara Loftus <ciara.loftus@intel.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(-)

Comments

Maciej Fijalkowski Feb. 23, 2021, 2:39 p.m. UTC | #1
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.

> 
> Signed-off-by: Ciara Loftus <ciara.loftus@intel.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
>
Ciara Loftus Feb. 23, 2021, 3:01 p.m. UTC | #2
> 
> 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@intel.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
> >
diff mbox series

Patch

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}
 }