The rx_dropped statistic is never incremented so its existence
is pointless. Remove it.
Fixes: f1debd77efaf ("net/af_xdp: introduce AF_XDP PMD")
cc: sta...@dpdk.org
Reported-by: Stephen Hemminger
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 2 --
1 file
t;net/af_xdp: introduce AF_XDP PMD")
cc: sta...@dpdk.org
Reported-by: Stephen Hemminger
Signed-off-by: Ciara Loftus
Acked-by: Maryam Tahhan
---
v2:
* Removed whitespace in rx_stats struct
* Fixed typo in commit message
drivers/net/af_xdp/rte_eth_af_xdp.c | 18 --
1 file c
Failures to allocate mbufs in the receive path were not being
accounted for in the ethdev statistics. Fix this.
Bugzilla ID: 1429
Fixes: f1debd77efaf ("net/af_xdp: introduce AF_XDP PMD")
cc: sta...@dpdk.org
Reported-by: Stephen Hemminger
Signed-off-by: Ciara Loftus
---
v2:
* Fix
Record the port id in the af_xdp rx queue structure and use it
to set the port id of the mbuf of a received packed.
Bugzilla ID: 1428
Fixes: f1debd77efaf ("net/af_xdp: introduce AF_XDP PMD")
cc: sta...@dpdk.org
Reported-by: Stephen Hemminger
Signed-off-by: Ciara Loftus
Acked-by: Mar
Series of fixes for the AF_XDP PMD.
Ciara Loftus (4):
net/af_xdp: fix port ID not set in Rx mbuf
net/af_xdp: fix mbuf alloc failed statistic
net/af_xdp: fix stats reset
net/af_xdp: remove unused local statistic
drivers/net/af_xdp/rte_eth_af_xdp.c | 30 +
1
t;net/af_xdp: introduce AF_XDP PMD")
cc: sta...@dpdk.og
Reported-by: Stephen Hemminger
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 19 +--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers/
Failures to allocate mbufs in the receive path were not being
accounted for in the ethdev statistics. Fix this.
Bugzilla ID: 1429
Fixes: f1debd77efaf ("net/af_xdp: introduce AF_XDP PMD")
cc: sta...@dpdk.og
Reported-by: Stephen Hemminger
Signed-off-by: Ciara Loftus
---
drivers/
Record the port id in the af_xdp rx queue structure and use it
to set the port id of the mbuf of a received packed.
Bugzilla ID: 1428
Fixes: f1debd77efaf ("net/af_xdp: introduce AF_XDP PMD")
cc: sta...@dpdk.og
Reported-by: Stephen Hemminger
Signed-off-by: Ciara Loftus
---
drivers/
Generate af_xdp_autoconf.h which contains the different features
detected by the meson build instead of using cflags.
Suggested-by: Andrew Rybchenko
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/compat.h| 8 +---
drivers/net/af_xdp/meson.build | 15 ---
2 files
Instead of using pkg-config to query the version of the libbpf library,
search for symbols in the library and use their presence or absence to
determine what version of the library is being linked.
Suggested-by: Andrew Rybchenko
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/meson.build
Test if the libbpf version is >= v0.7.0 at the beginning of the meson
build. Later when we want to check if the version is <= v0.6.0 just use
the inverse of the first check ie. ! >= v0.7.0.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/meson.build | 12 ++--
1 file c
off-by: Ciara Loftus
---
v2:
* Updated release notes
* Removed version limiting to libbpf v0.8.0
---
doc/guides/nics/af_xdp.rst | 3 ++-
doc/guides/rel_notes/release_22_07.rst | 4 +++
drivers/net/af_xdp/compat.h| 36 +-
drivers/net/af_xdp/meson.bu
lso prevent linking with libbpf versions > v0.8.0.
Signed-off-by: Ciara Loftus
---
doc/guides/nics/af_xdp.rst | 3 ++-
drivers/net/af_xdp/compat.h | 36 -
drivers/net/af_xdp/meson.build | 7 ++
drivers/net/af_xdp/rte_eth_af_xdp.
Linking with libbpf v0.8.0 causes deprication warnings. As a temporary
measure, prevent linking with libbpf versions v0.8.0 and greater. This
limitation should be removed in the future when appropriate
compatibility measures are introduced.
Signed-off-by: Ciara Loftus
---
doc/guides/nics
t creation, depending on the refcnt value.
The kernel logs will still be seen for the shared umem queues.
Fixes: 81fe6720f84f ("net/af_xdp: reserve fill queue before socket create")
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 22 ++
queues. In this case, traffic might land on for example queue 18 which
means it will never reach the socket.
This commit updates the AF_XDP documentation with instructions on how to
configure the interface to ensure the traffic will land on queue 0 and
thus reach the socket successfully.
Signed-off
are available before creating the
socket, instead of after.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 28 ++--
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers/net/af_xdp
nd custom program loading")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 17 +
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers/net/af_xdp/rte_eth_af_xdp.c
index 6ac710c6bd..5f
libbpf v0.7.0 deprecates the bpf_prog_load function. Use meson to detect
if libbpf >= v0.7.0 is linked and if so, use the recommended replacement
functions bpf_object__open_file and bpf_object__load.
Signed-off-by: Ciara Loftus
---
v1 -> v2:
* Fix typo in commit message
* Fix typo in meson
libbpf v0.7.0 deprecates the bpf_prog_load function. Use meson to detect
if libbpf >= v0.7.0 is linked and if so, use the recommended replacement
functions bpf_object__open_file and bpf_oject__load.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/compat.h |
found. Document this requirement.
Also, mention that the following logs which are generated on application
launch can be ignored:
libbpf: elf: skipping unrecognized data section(7) .xdp_run_config
libbpf: elf: skipping unrecognized data section(8) xdp_metadata
Signed-off-by: Ciara Loftus
AF_XDP rings being assigned by the kernel in the primary process only.
However other operations including retrieval of stats are permitted.
Signed-off-by: Ciara Loftus
---
v3 -> v4:
* Rebase to next-net
* Reword limitation which requires Rx and Tx to be disabled.
v2 -> v3:
* Rebase to ne
secondary process is disabled. However other operations
including retrieval of stats are permitted.
Signed-off-by: Ciara Loftus
---
v2 -> v3:
* Rebase to next-net
* Updated logs to be more specific about multi-process IPC
* Free process_private in _close and _remove functions
*
secondary process is disabled. However other operations
including retrieval of stats are permitted.
Signed-off-by: Ciara Loftus
---
v1 -> v2:
* Rebase to next-net
RFC -> v1:
* Added newline to af_xdp.rst
* Fixed spelling errors
* Fixed potential NULL dereference in init_internals
* Fixed potentia
the version of libxdp on the system, so it is necessary that the
library is discoverable using pkg-config in order for the PMD to use it. To
verify this, you can run: pkg-config --modversion libxdp
[1] https://github.com/libbpf/libbpf/commit/277846bc6c15
Signed-off-by: Ciara Loftus
---
v3:
*
the version of libxdp on the system, so it is
necessary that the library is discoverable using pkg-config in order for
the PMD to use it. To verify this, you can run:
pkg-config --modversion libxdp
[1] https://github.com/libbpf/libbpf/commit/277846bc6c15
Signed-off-by: Ciara Loftus
---
v2:
*
the version of libxdp on the system, so it is
necessary that the library is discoverable using pkg-config in order for
the PMD to use it. To verify this, you can run:
pkg-config --modversion libxdp
[1] https://github.com/libbpf/libbpf/commit/277846bc6c15
Signed-off-by: Ciara Loftus
---
RFC -&
secondary process is disabled. However other operations
including retrieval of stats are permitted.
Signed-off-by: Ciara Loftus
---
RFC -> v1:
* Added newline to af_xdp.rst
* Fixed spelling errors
* Fixed potential NULL dereference in init_internals
* Fixed potential free of address-of expression
secondary process is disabled. However other operations
including retrieval of stats are permitted.
Signed-off-by: Ciara Loftus
---
doc/guides/nics/af_xdp.rst | 9 ++
doc/guides/nics/features/af_xdp.ini| 1 +
doc/guides/rel_notes/release_22_03.rst | 4 +
drivers/net/af_xdp
prior to v0.7.0 are
allowed, as they still contain the required AF_XDP functionality.
libbpf still remains a dependency even if libxdp is present, as we
use libbpf APIs for program loading.
[1] https://github.com/libbpf/libbpf/commit/277846bc6c15
Signed-off-by: Ciara Loftus
---
doc/guides/nics
.@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 121 ++--
1 file changed, 60 insertions(+), 61 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers/net/af_xdp/rte_eth_af_xdp.c
index 96c2c9d939..b3ed704b36 100644
--- a/drivers/
e new bpf link based method.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 29 ++---
1 file changed, 22 insertions(+), 7 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers/net/af_xdp/rte_eth_af_xdp.c
index 1c7689c9b4..96c2c9d939
0cc6e893b ("net/af_xdp: use BPF link for XDP programs")
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/compat.h | 124
drivers/net/af_xdp/meson.build | 7 --
drivers/net/af_xdp/rte_eth_af_xdp.c | 13 ++-
3 files changed, 5 insertions(+
etting the max_rx_pktlen equal to the max size of the
Ethernet frame as expected, and the max MTU equal to the max_rx_pktlen
less the overhead which is set to the size of an Ethernet header plus
CRC.
Fixes: 1bb4a528c41f ("ethdev: fix max Rx packet length")
Signed-off-by: Ciara Loftus
---
, bpf_link will be
used for the AF_XDP netdev.
Signed-off-by: Ciara Loftus
Signed-off-by: Maciej Fijalkowski
---
drivers/net/af_xdp/compat.h | 124
drivers/net/af_xdp/meson.build | 7 ++
drivers/net/af_xdp/rte_eth_af_xdp.c | 13 +--
3 files ch
, bpf_link will be
used for the AF_XDP netdev.
Signed-off-by: Ciara Loftus
Signed-off-by: Maciej Fijalkowski
---
drivers/net/af_xdp/compat.h | 120
drivers/net/af_xdp/meson.build | 7 ++
drivers/net/af_xdp/rte_eth_af_xdp.c | 13 +--
3 files ch
using rte_mp_msg to pass the state to the
secondary process that it requires in order to work.
Bugzilla ID: 805
Fixes: f1debd77efaf ("net/af_xdp: introduce AF_XDP PMD")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
Reported-by: Stephen Hemminger
---
doc/guides/rel_notes/release_21_1
rg
Signed-off-by: Ciara Loftus
Reported-by: Stephen Hemminger
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 15 +--
1 file changed, 5 insertions(+), 10 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers/net/af_xdp/rte_eth_af_xdp.c
index 9bea0a895a..d61cb0aa7c 10
. Doing this removes a build warning
on kernels before 5.4 which complained about the second function
being defined but not used.
Fixes: 2aa51cdd559e ("net/af_xdp: fix trigger for syscall on Tx")
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/compat.h
stead of poll syscall")
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/compat.h | 28 ++--
drivers/net/af_xdp/rte_eth_af_xdp.c | 10 +++---
2 files changed, 25 insertions(+), 13 deletions(-)
diff --git a/drivers/net/af_xdp/compat.h b/drivers/net/af
busy polling")
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/compat.h | 14 --
drivers/net/af_xdp/rte_eth_af_xdp.c | 4 ++--
2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/drivers/net/af_xdp/compat.h b/drivers/net/af_xdp/compat.h
index 545c8aa395..
'void'.
Coverity issue: 369671
Fixes: 63e8989fe5a4 ("net/af_xdp: use recvfrom instead of poll syscall")
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xd
.
Signed-off-by: Ciara Loftus
---
doc/guides/nics/af_xdp.rst | 38 ++-
doc/guides/rel_notes/release_21_05.rst | 4 +
drivers/net/af_xdp/compat.h| 14 +++
drivers/net/af_xdp/rte_eth_af_xdp.c| 135 +++--
4 files changed, 179 insertions(+),
poll() is more expensive and requires more tuning
when used with the upcoming busy polling functionality.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers
rx/tx need to be sized at compile-time.
Allowing a larger batch size allows for fewer batches and thus larger bulk
operations, fewer ring accesses and fewer syscalls which should yield
improved performance.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_
iour of busy_budget=0
* Ensure we bail out any of the new setsockopts fail
[1] https://lwn.net/Articles/837010/
Ciara Loftus (3):
net/af_xdp: allow bigger batch sizes
net/af_xdp: Use recvfrom() instead of poll()
net/af_xdp: preferred busy polling
doc/guides/nics/af_xdp.rst |
.
Signed-off-by: Ciara Loftus
---
doc/guides/nics/af_xdp.rst | 38 +++-
doc/guides/rel_notes/release_21_05.rst | 4 +
drivers/net/af_xdp/compat.h| 14 +++
drivers/net/af_xdp/rte_eth_af_xdp.c| 117 ++---
4 files changed, 161 insertions(+),
poll() is more expensive and requires more tuning
when used with the upcoming busy polling functionality.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers
rx/tx need to be sized at compile-time.
Allowing a larger batch size allows for fewer batches and thus larger bulk
operations, fewer ring accesses and fewer syscalls which should yield
improved performance.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_
olling via setsockopt instead of using the presence
of the flag
RFC->v1:
* Fixed behaviour of busy_budget=0
* Ensure we bail out any of the new setsockopts fail
[1] https://lwn.net/Articles/837010/
Ciara Loftus (3):
net/af_xdp: allow bigger batch sizes
net/af_xdp: Use recvfrom() instea
("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers/net/af_xdp/rte_eth_af_xdp.c
index
.
Signed-off-by: Ciara Loftus
---
doc/guides/nics/af_xdp.rst | 38 -
drivers/net/af_xdp/compat.h | 13 +
drivers/net/af_xdp/rte_eth_af_xdp.c | 85 -
3 files changed, 121 insertions(+), 15 deletions(-)
diff --git a/doc/guides/nics/af_
poll() is more expensive and requires more tuning
when used with the upcoming busy polling functionality.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers
Prior to this the max size was 32 which was unnecessarily
small. Also enforce the max batch size for TX for both
copy and zero copy modes. Prior to this only copy mode
enforced the max size.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 8
1 file changed, 4
FC->v1:
* Fixed behaviour of busy_budget=0
* Ensure we bail out if any of the new setsockopts fail
[1] https://lwn.net/Articles/837010/
Ciara Loftus (3):
net/af_xdp: Increase max batch size to 512
net/af_xdp: Use recvfrom() instead of poll()
net/af_xdp: preferred busy polling
doc/guid
.
Signed-off-by: Ciara Loftus
---
doc/guides/nics/af_xdp.rst | 38 +-
drivers/net/af_xdp/compat.h | 13 +
drivers/net/af_xdp/rte_eth_af_xdp.c | 80 -
3 files changed, 116 insertions(+), 15 deletions(-)
diff --git a/doc/guides/nics/af_
poll() is more expensive and requires more tuning
when used with the upcoming busy polling functionality.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers
Prior to this the max size was 32 which was unnecessarily
small. Also enforce the max batch size for TX for both
copy and zero copy modes. Prior to this only copy mode
enforced the max size.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 8
1 file changed, 4
dev=net_af_xdp0,iface=eth0,busy_budget=512
14.32Mpps
To disable preferred busy polling:
./dpdk-testpmd --vdev=net_af_xdp0,iface=eth0,busy_budget=0
[1] https://lwn.net/Articles/837010/
Ciara Loftus (3):
net/af_xdp: Increase max batch size to 512
net/af_xdp: Use recvfrom() instead of poll
AF_XDP will not work on 32-bit kernels before version 5.4.
Document this restriction in the driver guide.
Signed-off-by: Ciara Loftus
---
doc/guides/nics/af_xdp.rst | 1 +
1 file changed, 1 insertion(+)
diff --git a/doc/guides/nics/af_xdp.rst b/doc/guides/nics/af_xdp.rst
index 052e59a3ae
ixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
doc/guides/nics/af_xdp.rst | 1 +
drivers/net/af_xdp/rte_eth_af_xdp.c | 6 +++---
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/doc/guides/
eue=0,shared_umem=1
Supporting this scenario would require locks, which would impact
the performance of the more typical cases - xsks with different
netdev,qid tuples.
Signed-off-by: Ciara Loftus
Fixes: 74b46340e2d4 ("net/af_xdp: support shared UMEM")
---
v2:
* Add doc update
* Fix commit messa
Supporting this would require locks, which would impact the performance of
the more typical cases - xsks with different qids and netdevs.
Signed-off-by: Ciara Loftus
Fixes: 74b46340e2d4 ("net/af_xdp: support shared UMEM")
---
drivers/net/af_xdp/rte_eth_af_
strncpy may leave the destination buffer not NULL terminated so use
rte_strscpy instead.
Coverity issue: 362975
Fixes: 339b88c6a91f ("net/af_xdp: support multi-queue")
Signed-off-by: Ciara Loftus
---
v4:
* actually use rte_strscpy instead of strlcpy
v3:
* use rte_strscpy instead of s
strncpy may leave the destination buffer not NULL terminated so use
rte_strscpy instead.
Coverity issue: 362975
Fixes: 339b88c6a91f ("net/af_xdp: support multi-queue")
Signed-off-by: Ciara Loftus
---
v3:
* use rte_strscpy instead of strlcpy
v2:
* use strlcpy instead of snprintf
d
strncpy may leave the destination buffer not NULL terminated so use
strlcpy instead.
Coverity issue: 362975
Fixes: 339b88c6a91f ("net/af_xdp: support multi-queue")
Signed-off-by: Ciara Loftus
---
v2:
* use strlcpy instead of snprintf
drivers/net/af_xdp/rte_eth_af_xdp.c | 2 +-
1 fi
strncpy may leave the destination buffer not NULL terminated so use
snprintf instead.
Coverity issue: 362975
Fixes: 339b88c6a91f ("net/af_xdp: support multi-queue")
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletio
the PMD, using
some criteria defined in the program. This can be useful for filtering
purposes, for example if we only want a subset of packets to reach
userspace or to drop or process a subset of packets in the kernel.
Note: a netdev may only load one program.
Signed-off-by: Ciara Loftus
Tested-b
nce the kernel
is released (~December) this will no longer be necessary.
[1]
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=acabf32805f7
Ciara Loftus (1):
net/af_xdp: shared UMEM support
doc/guides/nics/af_xdp.rst | 6 +-
drivers/net/af_xdp/compa
UMEM multiple times. Throughput was measured to
remain within 2% of the default mode (not sharing UMEM).
A version of libbpf >= v0.2.0 is required and the appropriate pkg-config
file for libbpf must be installed such that meson can determine the
version.
Signed-off-by: Ciara Loftus
---
UMEM multiple times. Throughput was measured to
remain within 2% of the default mode (not sharing UMEM).
A version of libbpf >= v0.2.0 is required and the appropriate pkg-config
file for libbpf must be installed such that meson can determine the
version.
Signed-off-by: Ciara Loftus
---
nce the kernel
is released (~December) this will no longer be necessary.
[1]
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=acabf32805f7
Ciara Loftus (1):
net/af_xdp: shared UMEM support
doc/guides/nics/af_xdp.rst | 6 +-
drivers/net/af_xdp/compa
the PMD, using
some criteria defined in the program. This can be useful for filtering
purposes, for example if we only want a subset of packets to reach
userspace or to drop or process a subset of packets in the kernel.
Note: a netdev may only load one program.
Signed-off-by: Ciara Loftus
Tested-b
d not take
this into account. This commit adds the amount by which the address was
aligned to the size of the UMEM.
Bugzilla ID: 532
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_
UMEM multiple times. Throughput was measured to
remain within 2% of the default mode (not sharing UMEM).
A version of libbpf >= v0.2.0 is required and the appropriate pkg-config
file for libbpf must be installed such that meson can determine the
version.
Signed-off-by: Ciara Loftus
---
nce the kernel
is released (~December) this will no longer be necessary.
[1]
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=acabf32805f7
Ciara Loftus (1):
net/af_xdp: shared UMEM support
doc/guides/nics/af_xdp.rst | 6 +-
drivers/net/af_xdp/compa
the PMD, using
some criteria defined in the program.
Note: a netdev may only load one program.
Signed-off-by: Ciara Loftus
---
doc/guides/nics/af_xdp.rst | 1 +
drivers/net/af_xdp/rte_eth_af_xdp.c | 100 ++--
2 files changed, 95 insertions(+), 6 deletions(-)
dif
/project/netdev/cover/1595307848-20719-1-git-send-email-magnus.karls...@intel.com/
[2]
https://git.dpdk.org/dpdk/commit/?id=ee584e9710b9abd60ee9faef664e106dcea10085
Ciara Loftus (1):
net/af_xdp: shared UMEM support
doc/guides/nics/af_xdp.rst | 5 +-
drivers/net/af_xdp/rte_eth_af_xdp.c
is set. UMEMs can only be shared across PMDs with the same mempool, up
to a limited number of PMDs goverened by the size of the given mempool.
The benefit of sharing UMEM across PMDs is a saving in memory due to not
having to register the UMEM multiple times.
Signed-off-by: Ciara Loftus
---
doc
The af_xdp rx function was returning a negative value on error, when an
unsigned value is expected. Fix this.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 2 +-
1 file
Other PMDs may be using the mempool, so don't free it when destroying the
UMEM.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 1 -
1 file changed, 1 deletion(-)
diff
Replace Xiaolong Ye with Ciara Loftus.
Signed-off-by: Ciara Loftus
---
MAINTAINERS | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/MAINTAINERS b/MAINTAINERS
index 1cce93a0f8..6cdd8bd1e4 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -565,7 +565,7 @@ F: drivers/net/af_packet
: use single producer/consumer ring")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/af_xdp/rte_eth_af_xdp.c
b/drivers/net/af_xdp/rte_eth_af_xdp.c
index 06124ba789..2fab916
to ~3Gbps.
Signed-off-by: Ciara Loftus
Acked-by: Xiaolong Ye
---
v1->v2:
- added emulated tx_free_thresh as suggested by Stephen Hemminger
drivers/net/af_xdp/rte_eth_af_xdp.c | 20
1 file changed, 12 insertions(+), 8 deletions(-)
diff --git a/drivers/net/af_xdp/rte_et
the driver.
With these changes, a benchmark which measured the packet rate at which
0.01% packet loss could be reached improved from ~0.1G to ~3Gbps.
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 18 ++
1 file changed, 10 insertions(+), 8 deletions(-)
di
Explain how kernel driver RX buffer sizes affect the maximum
MTU size in practice.
Signed-off-by: Ciara Loftus
---
doc/guides/nics/af_xdp.rst | 26 +++---
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/doc/guides/nics/af_xdp.rst b/doc/guides/nics/af_xdp.rst
rectly used
mb_pool->private_data_size and didn't include mb_pool->header_size or the
mbuf priv size. Fix this.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
Reviewed-by: Xiaolong Ye
---
drivers/
mode.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 23 +++
1 file changed, 11 insertions(+), 12 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_a
arger packets which are close to the size of the mbuf.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
Reviewed-by: Xiaolong Ye
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 25 +
1 file changed, 17 i
ET_HEADROOM from max mtu for copy mode.
v3:
* Fix send-email issue - use in-reply-to
v2:
* Include mbuf priv size in rx mbuf data_off calculation
Ciara Loftus (3):
net/af_xdp: fix umem frame size & headroom calculations
net/af_xdp: use correct fill queue addresses
net/af_xdp: fix maximum
issue - use in-reply-to
v2:
* Include mbuf priv size in rx mbuf data_off calculation
Ciara Loftus (3):
net/af_xdp: fix umem frame size & headroom calculations
net/af_xdp: use correct fill queue addresses
net/af_xdp: fix maximum MTU value
drivers/net/af_xdp/rte_eth_af_xdp.c | 61 ++
mode.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 23 +++
1 file changed, 11 insertions(+), 12 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_a
rectly used
mb_pool->private_data_size and didn't include mb_pool->header_size or the
mbuf priv size. Fix this.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 13
arger packets which are close to the size of the mbuf.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 25 +
1 file changed, 17 insertions(+), 8 deletions(-
arger packets which are close to the size of the mbuf.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
v2:
* Include mbuf priv size in rx mbuf data_off calculation
Ciara Loftus (3):
net/af_xdp: fix umem frame
mode.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 23 +++
1 file changed, 11 insertions(+), 12 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_a
rectly used
mb_pool->private_data_size and didn't include mb_pool->header_size or the
mbuf priv size. Fix this.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 13
value
The maximum MTU for af_xdp zero copy is equal to the page size less the
frame overhead introduced by AF_XDP (XDP HR = 256) and DPDK (frame hr =
320). The patch updates this value to reflect this, and removes some
unneeded constants for both zero-copy and copy mode.
v2:
* Include mbuf priv
mode.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 23 +++
1 file changed, 11 insertions(+), 12 deletions(-)
diff --git a/drivers/net/af_xdp/rte_eth_a
rectly used
mb_pool->private_data_size and didn't include mb_pool->header_size or the
mbuf priv size. Fix this.
Fixes: d8a210774e1d ("net/af_xdp: support unaligned umem chunks")
Cc: sta...@dpdk.org
Signed-off-by: Ciara Loftus
---
drivers/net/af_xdp/rte_eth_af_xdp.c | 13
1 - 100 of 118 matches
Mail list logo