netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
To: Magnus Karlsson <magnus.karlsson@gmail.com>
Cc: <magnus.karlsson@intel.com>, <bjorn@kernel.org>, <ast@kernel.org>,
	<daniel@iogearbox.net>, <netdev@vger.kernel.org>,
	<bpf@vger.kernel.org>, <yhs@fb.com>, <andrii@kernel.org>,
	<martin.lau@linux.dev>, <song@kernel.org>,
	<john.fastabend@gmail.com>, <kpsingh@kernel.org>,
	<sdf@google.com>, <haoluo@google.com>, <jolsa@kernel.org>,
	<przemyslaw.kitszel@intel.com>
Subject: Re: [PATCH bpf-next v4 00/10] seltests/xsk: various improvements to xskxceiver
Date: Thu, 14 Sep 2023 12:49:07 +0200	[thread overview]
Message-ID: <ZQLlI5Ege5zLnRU2@boxer> (raw)
In-Reply-To: <20230914084900.492-1-magnus.karlsson@gmail.com>

On Thu, Sep 14, 2023 at 10:48:47AM +0200, Magnus Karlsson wrote:
> This patch set implements several improvements to the xsk selftests
> test suite that I thought were useful while debugging the xsk
> multi-buffer code and tests. The largest new feature is the ability to
> be able to execute a single test instead of the whole test suite. This
> required some surgery on the current code, details below.
> 
> Anatomy of the path set:
> 
> 1: Print useful info on a per packet basis with the option -v
> 
> 2: Add a timeout in the transmission loop too. We only used to have
>    one for the Rx thread, but Tx can lock up too waiting for
>    completions.
> 
> 3: Add an option (-m) to only run the tests (or a single test with a
>    later patch) in a single mode: skb, drv, or zc (zero-copy).
> 
> 4-5: Preparatory patches to be able to specify a test to run. Need to
>      define the test names in a single structure and their entry
>      points, so we can use this when wanting to run a specific test.
> 
> 6: Adds a command line option (-l) that lists all the tests.
> 
> 7: Adds a command line option (-t) that runs a specific test instead
>    of the whole test suite. Can be combined with -m to specify a
>    single mode too.
> 
> 8: Use ksft_print_msg() uniformly throughout the tests. It was a mix
>    of printf() and ksft_print_msg() before.
> 
> 9: In some places, we failed the whole test suite instead of a single
>    test in certain circumstances. Fix this so only the test in
>    question is failed and the rest of the test suite continues.
> 
> 10: Display the available command line options with -h
> 
> v3 -> v4:
> * Fixed another spelling error in patch #9 [Maciej]
> * Only allow the actual strings for the -m command [Maciej]
> * Move some code from patch #7 to #3 [Maciej]
> 
> v2 -> v3:
> * Drop the support for environment variables. Probably not useful. [Maciej]
> * Fixed spelling mistake in patch #9 [Maciej]
> * Fail gracefully if unsupported mode is chosen [Maciej]
> * Simplified test run loop [Maciej]
> 
> v1 -> v2:
> 
> * Introduce XSKTEST_MODE env variable to be able to set the mode to
>   use [Przemyslaw]
> * Introduce XSKTEST_ETH env variable to be able to set the ethernet
>   interface to use by introducing a new patch (#11) [Magnus]
> * Fixed spelling error in patch #5 [Przemyslaw, Maciej]
> * Fixed confusing documentation in patch #10  [Przemyslaw]
> * The -l option can now be used without being root [Magnus, Maciej]
> * Fixed documentation error in patch #7 [Maciej]
> * Added error handling to the -t option [Maciej]
> * -h now displayed as an option [Maciej]
> 
> Thanks: Magnus
> 

for the series:
Acked-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>

> Magnus Karlsson (10):
>   selftests/xsk: print per packet info in verbose mode
>   selftests/xsk: add timeout for Tx thread
>   selftests/xsk: add option to only run tests in a single mode
>   selftests/xsk: move all tests to separate functions
>   selftests/xsk: declare test names in struct
>   selftests/xsk: add option that lists all tests
>   selftests/xsk: add option to run single test
>   selftests/xsk: use ksft_print_msg uniformly
>   selftests/xsk: fail single test instead of all tests
>   selftests/xsk: display command line options with -h
> 
>  tools/testing/selftests/bpf/test_xsk.sh    |  40 +-
>  tools/testing/selftests/bpf/xsk_prereqs.sh |  10 +-
>  tools/testing/selftests/bpf/xskxceiver.c   | 535 ++++++++++++---------
>  tools/testing/selftests/bpf/xskxceiver.h   |  44 +-
>  4 files changed, 368 insertions(+), 261 deletions(-)
> 
> 
> base-commit: 558c50cc3b135e00c9ed15df4c9159e84166f94c
> --
> 2.42.0

  parent reply	other threads:[~2023-09-14 10:49 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-14  8:48 [PATCH bpf-next v4 00/10] seltests/xsk: various improvements to xskxceiver Magnus Karlsson
2023-09-14  8:48 ` [PATCH bpf-next v4 01/10] selftests/xsk: print per packet info in verbose mode Magnus Karlsson
2023-09-14  8:48 ` [PATCH bpf-next v4 02/10] selftests/xsk: add timeout for Tx thread Magnus Karlsson
2023-09-14  8:48 ` [PATCH bpf-next v4 03/10] selftests/xsk: add option to only run tests in a single mode Magnus Karlsson
2023-09-14  8:48 ` [PATCH bpf-next v4 04/10] selftests/xsk: move all tests to separate functions Magnus Karlsson
2023-09-14  8:48 ` [PATCH bpf-next v4 05/10] selftests/xsk: declare test names in struct Magnus Karlsson
2023-09-14  8:48 ` [PATCH bpf-next v4 06/10] selftests/xsk: add option that lists all tests Magnus Karlsson
2023-09-14  8:48 ` [PATCH bpf-next v4 07/10] selftests/xsk: add option to run single test Magnus Karlsson
2023-09-14  8:48 ` [PATCH bpf-next v4 08/10] selftests/xsk: use ksft_print_msg uniformly Magnus Karlsson
2023-09-14  8:48 ` [PATCH bpf-next v4 09/10] selftests/xsk: fail single test instead of all tests Magnus Karlsson
2023-09-14  8:48 ` [PATCH bpf-next v4 10/10] selftests/xsk: display command line options with -h Magnus Karlsson
2023-09-14 10:49 ` Maciej Fijalkowski [this message]
2023-09-14 17:00 ` [PATCH bpf-next v4 00/10] seltests/xsk: various improvements to xskxceiver patchwork-bot+netdevbpf

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZQLlI5Ege5zLnRU2@boxer \
    --to=maciej.fijalkowski@intel.com \
    --cc=andrii@kernel.org \
    --cc=ast@kernel.org \
    --cc=bjorn@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=haoluo@google.com \
    --cc=john.fastabend@gmail.com \
    --cc=jolsa@kernel.org \
    --cc=kpsingh@kernel.org \
    --cc=magnus.karlsson@gmail.com \
    --cc=magnus.karlsson@intel.com \
    --cc=martin.lau@linux.dev \
    --cc=netdev@vger.kernel.org \
    --cc=przemyslaw.kitszel@intel.com \
    --cc=sdf@google.com \
    --cc=song@kernel.org \
    --cc=yhs@fb.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).