pktgen: Introducing 'SHARED' flag for testing with non-shared skb
authorLiang Chen <liangchen.linux@gmail.com>
Wed, 20 Sep 2023 12:56:58 +0000 (20:56 +0800)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 28 Sep 2023 14:25:14 +0000 (16:25 +0200)
commit7c7dd1d64910d07ab36b858d53d00e89b6d918d6
tree069b782cd2793874fb8c7676a8c59796d7a4c165
parent057708a9ca5930d4d9a456c29010f4f90ae760b7
pktgen: Introducing 'SHARED' flag for testing with non-shared skb

Currently, skbs generated by pktgen always have their reference count
incremented before transmission, causing their reference count to be
always greater than 1, leading to two issues:
  1. Only the code paths for shared skbs can be tested.
  2. In certain situations, skbs can only be released by pktgen.
To enhance testing comprehensiveness, we are introducing the "SHARED"
flag to indicate whether an SKB is shared. This flag is enabled by
default, aligning with the current behavior. However, disabling this
flag allows skbs with a reference count of 1 to be transmitted.
So we can test non-shared skbs and code paths where skbs are released
within the stack.

Signed-off-by: Liang Chen <liangchen.linux@gmail.com>
Reviewed-by: Benjamin Poirier <bpoirier@nvidia.com>
Link: https://lore.kernel.org/r/20230920125658.46978-2-liangchen.linux@gmail.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Documentation/networking/pktgen.rst
net/core/pktgen.c