Add checking of the Tx packet length to avoid TDM fatal error as far as
possible. Set the pkt_len=1518 for invalid packet in simple Tx code path,
and drop it directly in featured Tx code path. Althrough the hardware
does not support TDM desc check.
Signed-off-by: Jiawen Wu
---
drivers/net/ngbe/n
Fix some bugs in txgbe/ngbe, and optimize the Tx flow.
v1 -> v2:
- Fix build errors on ARM platform.
Jiawen Wu (13):
net/txgbe: fix swfw mbox failure
net/txgbe: fix VF-PF mbox interrupt
net/txgbe: remove outer UDP checksum capability
net/txgbe: fix driver load bit to inform firmware
net
The hardware does not support outer UDP checksum for tunnel packets.
It's wrong to claim this Tx offload capability, so fix it.
Bugzilla ID: 1529
Fixes: b950203be7f1 ("net/txgbe: support VXLAN-GPE")
Fixes: 295968d17407 ("ethdev: add namespace")
Cc: sta...@dpdk.org
Signed-off-by: Jiawen Wu
---
d
Count the number of packets not sent due to Tx descriptor error.
Signed-off-by: Jiawen Wu
---
drivers/net/txgbe/txgbe_ethdev.c | 6 ++
drivers/net/txgbe/txgbe_rxtx.c | 3 +++
drivers/net/txgbe/txgbe_rxtx.h | 1 +
3 files changed, 10 insertions(+)
diff --git a/drivers/net/txgbe/txgbe_eth
Count the number of packets not sent due to Tx descriptor error.
Signed-off-by: Jiawen Wu
---
drivers/net/ngbe/ngbe_ethdev.c | 6 ++
drivers/net/ngbe/ngbe_rxtx.c | 2 ++
drivers/net/ngbe/ngbe_rxtx.h | 1 +
3 files changed, 9 insertions(+)
diff --git a/drivers/net/ngbe/ngbe_ethdev.c b/dr
Drv_load bit will be reset to default 0 after hardware LAN reset,
reconfigure it to inform firmware that driver is loaded. And set it to 0
when device is closed.
Fixes: 3518df5774c7 ("net/ngbe: support device start/stop")
Fixes: cc63194e89cb ("net/ngbe: support close and reset device")
Cc: sta...@
Drv_load bit will be reset to default 0 after hardware LAN reset,
reconfigure it to inform firmware that driver is loaded. And set it to 0
when device is closed.
Fixes: b1f596677d8e ("net/txgbe: support device start")
Cc: sta...@dpdk.org
Signed-off-by: Jiawen Wu
---
drivers/net/txgbe/txgbe_ethd
Add checking of the Tx packet length to avoid TDM fatal error as far as
possible. Set the pkt_len=1518 for invalid packet in simple Tx code path,
and drop it directly in featured Tx code path.
Signed-off-by: Jiawen Wu
---
drivers/net/txgbe/txgbe_rxtx.c | 33 +
dr
Enable Tdm_desc_chk then handle the interrupt of TDM desc error. If it's a
non-fatal error, clear the error to reset the queue. If it's a fatal error,
require users to manually restart the port. This flow prevents the hardware
from PCIe pending due to Tx hang, resulting in a reboot to recover.
But
When interrupt is legacy or MSI mode, shared interrupt may cause the
interrupt cannot be re-enabled. So fix to read the shared interrupt.
Fixes: b9246b8fa280 ("net/ngbe: support link update")
Cc: sta...@dpdk.org
Signed-off-by: Jiawen Wu
---
drivers/net/ngbe/ngbe_ethdev.c | 13 +
1 f
There is a unknown bug that the register TXGBE_MNGMBX cannot be written
in the loop, when DPDK is built with GCC high version. Access any register
before write TXGBE_MNGMBX can fix it.
Bugzilla ID: 1531
Fixes: 35c90ecccfd4 ("net/txgbe: add EEPROM functions")
Cc: sta...@dpdk.org
Signed-off-by: Jia
There is a hardware limitation that Rx ring config register is not
writable when Rx ring is enabled, i.e. the NGBE_RXCFG_ENA bit is set.
But disabling the ring when there is traffic will cause ring get stuck.
So restrict the configuration of VLAN strip offload only if device is
started.
Fixes: 59b
When link status changes, there is a probability that no more packets
can be received on the port, due to hardware defects. These MAC Rx
registers should be reconfigured to fix this problem.
Fixes: b9246b8fa280 ("net/ngbe: support link update")
Fixes: a7c5f95ed9c2 ("net/ngbe: reconfigure MAC Rx wh
Hi Stephen,
Are there any comments for PATCH v4? Looking forward to your feedback.
Best Regards,
Howard Wang
-邮件原件-
发件人: Howard Wang
发送时间: 2024年10月25日 11:35
收件人: dev@dpdk.org
抄送: pro_nic_d...@realtek.com; 王颢
主题: [PATCH v4 18/18] doc/guides/nics: add documents for r8169 pmd
Signed-off
Useful to be able to see the meta data in the hex dump.
Signed-off-by: Stephen Hemminger
---
lib/mbuf/rte_mbuf.c | 14 ++
1 file changed, 14 insertions(+)
diff --git a/lib/mbuf/rte_mbuf.c b/lib/mbuf/rte_mbuf.c
index 559d5ad8a7..8e452ca98f 100644
--- a/lib/mbuf/rte_mbuf.c
+++ b/lib/m
While debugging TAP rte_flow discovered that test pmd verbose output
was confusing and unhelpful. Instead, made a simple dissector that
prints one line per packet like this in test-pmd.
Also supports hex and JSON mode when more detail is needed.
The new commands are:
testpmd> set output /
Add some tests for new packet dissector.
Signed-off-by: Stephen Hemminger
---
app/test/meson.build| 1 +
app/test/test_dissect.c | 302
2 files changed, 303 insertions(+)
create mode 100644 app/test/test_dissect.c
diff --git a/app/test/meson.build
The function rte_dissect_mbuf is used to decode the contents
of an mbuf into ah uman readable format similar to what tshark uses.
For now, handles IP, IPv6, TCP, UDP, ICMP and ARP.
Signed-off-by: Stephen Hemminger
---
lib/net/meson.build | 2 +
lib/net/rte_dissect.c | 429 ++
When running tests in interactive mode, it is useful to be
able to redirect the packet decode (verbose output) into
a file.
Signed-off-by: Stephen Hemminger
---
app/test-pmd/cmdline.c | 41 +
app/test-pmd/config.c | 23
Add types for SOURCE_QUENCH and IPv6 neighbor discovery.
Signed-off-by: Stephen Hemminger
---
lib/net/rte_icmp.h | 9 +
1 file changed, 9 insertions(+)
diff --git a/lib/net/rte_icmp.h b/lib/net/rte_icmp.h
index e69d68ab6e..1ca6cf35cb 100644
--- a/lib/net/rte_icmp.h
+++ b/lib/net/rte_icm
Add ability to get decode packet in summary tshark style format.
Signed-off-by: Stephen Hemminger
---
app/test-pmd/cmdline.c | 6 ++--
app/test-pmd/config.c | 23 +
app/test-pmd/testpmd.h | 1 +
app/test-pmd/util.c
When doing automated testing it is useful to show packet meta
data in JSON.
Signed-off-by: Stephen Hemminger
---
app/test-pmd/cmdline.c | 6 +-
app/test-pmd/config.c | 3 +
app/test-pmd/testpmd.h | 1 +
app/test-pmd/util.c
This adds new command:
testpmd> set format hex
which decodes packet in hex.
Signed-off-by: Stephen Hemminger
---
app/test-pmd/cmdline.c | 40 +++
app/test-pmd/config.c | 11 +
app/test-pmd/testpmd.c | 1 +
app/te
> From: Roger B Melton [mailto:rmel...@cisco.com]
> Sent: Saturday, 26 October 2024 16.34
>
> Problem:
>
> If vxmnet3_dev_configure() fails, applications may call
> vmxnet3_dev_close(). If the failure occurs before the vmxnet3
> hw->shared structure is allocated the close will lead to a segv.
>
From: Hamdan Igbaria
In IPv6 to IPv4 scenario when copying the TC field to the
TOS[DSCP:6 bits, ECN: 2 bits] field the mapping of the fields
get set wrongly, since the destination field of TOS is defined as 2
split fields of DSCP and ECN.
In IPv4 to IPv6 we don't have this issue since both the so
On Tue, 22 Oct 2024 20:20:36 +0800
Junlong Wang wrote:
> Add device pci init implementation,
> to obtain PCI capability and read configuration, etc.
>
> Signed-off-by: Junlong Wang
> ---
> drivers/net/zxdh/meson.build | 1 +
> drivers/net/zxdh/zxdh_ethdev.c | 43 +
> drivers/net/zxdh/
On Tue, 22 Oct 2024 20:20:42 +0800
Junlong Wang wrote:
> provided zxdh dev configure ops for queue
> check,reset,alloc resources,etc.
>
> Signed-off-by: Junlong Wang
> ---
> drivers/net/zxdh/meson.build | 1 +
> drivers/net/zxdh/zxdh_common.c | 118 +
> drivers/net/zxdh/zxdh_common
On Tue, 22 Oct 2024 20:20:42 +0800
Junlong Wang wrote:
> +int32_t zxdh_acquire_lock(struct zxdh_hw *hw)
> +{
> + uint32_t var = zxdh_read_comm_reg((uint64_t)hw->common_cfg,
> ZXDH_VF_LOCK_REG);
> +
> + /* check whether lock is used */
> + if (!(var & ZXDH_VF_LOCK_ENABLE_MASK))
> +
Jochen, Ronak, (Roger,)
Please review the below patch, so it can go into the 24.11 LTS release.
> From: Morten Brørup [mailto:m...@smartsharesystems.com]
> Sent: Friday, 25 October 2024 11.28
>
> Removed the requirement that the configured number of queues to provide
> statistics for (RTE_ETHDEV
On Sun, 27 Oct 2024 09:40:48 -0700
Stephen Hemminger wrote:
> On Tue, 22 Oct 2024 20:20:42 +0800
> Junlong Wang wrote:
>
> > +int32_t zxdh_acquire_lock(struct zxdh_hw *hw)
> > +{
> > + uint32_t var = zxdh_read_comm_reg((uint64_t)hw->common_cfg,
> > ZXDH_VF_LOCK_REG);
> > +
> > + /* check w
From: Kishore Padmanabha
For p7 platform, the vlan filter and strip is disabled if the truflow
is enabled on the platform.
Signed-off-by: Kishore Padmanabha
Reviewed-by: Mike Baucom
---
drivers/net/bnxt/bnxt_ethdev.c | 6 +-
drivers/net/bnxt/bnxt_rxq.c| 17 +++--
2 files
Add header and data split Rx offload support if the hardware supports
it. The packet will be split at fixed offset for IPv4 or IPv6 packets.
Signed-off-by: Ajit Khaparde
---
drivers/net/bnxt/bnxt.h| 5 +
drivers/net/bnxt/bnxt_ethdev.c | 5 +
drivers/net/bnxt/bnxt_hwrm.c | 29
From: Kishore Padmanabha
The VNIC async event handler is removed, it is no longer required if
during the port initialization if svif is used instead of VNIC which
could be invalid for rep port if the rep's VF port link is down.
Signed-off-by: Kishore Padmanabha
Reviewed-by: Shahaji Bhosle
---
From: Somnath Kotur
If the application passes incorrect number of segs for a Tx pkt i.e.
sets it to 5 while actually sending down only a single mbuf, this could
escape all the existing driver checks and driver could end up sending
down garbage TX BDs to the HW. This in turn could lead to a Tx pip
From: Manish Kurup
1. Register for RSS change events. When an RSS change occurs
(especially for custom parsed tunnels), we need to update
the RSS flags in the VNIC QCAPS so that upstream drivers
don't send down the now unsupported bits
("config port all rss all" command). This will ca
From: Kalesh AP
If the application passes invalid mbuf for a Tx pkt, this could
escape all the existing driver checks and driver could end up sending
down invalid TX BDs to the HW. This in turn could lead to a FW reset.
Fix by validating the "mbuf->buf_iova" or "mbuf->buf_addr" passed for
the Tx
When the PMD gets a bad Tx mbuf from the application, it is not
freeing it currently. The PMD is depending on the application to
do it. but in most cases, the application may not know this.
Instead the Tx burst function now frees the mbuf and updates the
oerrors counter to indicate that the PMD en
Remove the unnecessary and useless compile-time option for IEEE 1588.
Signed-off-by: Ajit Khaparde
---
drivers/net/bnxt/bnxt_rxr.c | 8
1 file changed, 8 deletions(-)
diff --git a/drivers/net/bnxt/bnxt_rxr.c b/drivers/net/bnxt/bnxt_rxr.c
index 8f0a1b9cfd..5b43bcbea6 100644
--- a/driver
Fix LRO offload capability for P7 devices.
Export the capability to the application only if compressed
Rx CQE mode is not enabled.
LRO aka TPA is not supported when compressed CQE mode is set.
Fixes: 3b56c3ffc182 ("net/bnxt: refactor code to support P7 devices")
Cc: sta...@dpdk.org
Signed-off-by
Remove some unnecessary logs messages when buffer allocation fails.
We already have stats to indicate such failures.
Signed-off-by: Ajit Khaparde
---
drivers/net/bnxt/bnxt_rxr.c | 9 +
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/drivers/net/bnxt/bnxt_rxr.c b/drivers/net/
Improvements and unification of logging library.
This version works on all platforms: Linux, Windows and FreeBSD.
This is update to rework patch set. It adds several new features
to the console log output.
* Putting a timestamp on console output which is useful for
analyzing performance of
From: Kalesh AP
Currently driver has a check to validate TSO seg_size for 0 which
is to detect corrupted packet. But user can set any value as the
TSO seg_size. Adding a check to validate the minimum TSO seg_size
in the driver.
Driver will drop a packet with TSO seg_size less than 4 when
TSO is
This patchset contains changes to the BNXT PMD.
Some of them are fixes.
Please accept and apply.
v1->v2: Fixed up coding style issues, spelling errors.
Ajit Khaparde (6):
net/bnxt: fix TCP and UDP checksum flags
net/bnxt: free and account a bad Tx mbuf
net/bnxt: fix LRO offload capability
From: Peter Spreadborough
This change ensures that the high part of an action table entry
offset stored in the Tx BD is set correctly. A bad value will
cause the PDCU to abort a fetch an may stall the pipeline.
Fixes: 527b10089cc5 ("net/bnxt: optimize Tx completion handling")
Cc: sta...@dpdk.org
Set TCP and UDP checksum flags explicitly for LSO capable packets.
In some older chip variants, this will enable the hardware compute
the checksum correctly for tunnel and non-tunnel packets.
Fixes: 1d76c878b21d ("net/bnxt: support updating IPID")
Cc: sta...@dpdk.org
Signed-off-by: Ajit Khaparde
On Tue, 22 Oct 2024 20:20:40 +0800
Junlong Wang wrote:
> +/* Interrupt handler triggered by NIC for handling specific interrupt. */
> +static void zxdh_fromriscv_intr_handler(void *param)
> +{
> + struct rte_eth_dev *dev = param;
> + struct zxdh_hw *hw = dev->data->dev_private;
> + ui
The code to parse for log-level option should be same on
all OS variants.
Signed-off-by: Stephen Hemminger
Acked-by: Tyler Retzlaff
Acked-by: Morten Brørup
Acked-by: Bruce Richardson
---
lib/eal/common/eal_common_options.c | 40 +++
lib/eal/common/eal_options.h
Having different prototypes on different platforms can lead
to lots of unnecessary workarounds. Looks like the version of
getopt used from windows was based on an older out of date
version from FreeBSD.
This patch changes getopt, getopt_long, etc to have the same const
attributes as Linux and Fre
The rte_exit() output format confuses the timestamp and coloring
options. Change it to use be a single line with proper prefix.
Before:
[ 0.006481] EAL: Error - exiting with code: 1
Cause: [ 0.006489] Cannot init EAL: Permission denied
After:
[ 0.006238] EAL: Error - exiting with co
Windows does not have localtime_r but it does have a similar
function that can be used instead.
Use rte_os_shim.h in lib/log instead of redefine of strdup.
Add fileno() and isatty() to the wrapper.
Signed-off-by: Stephen Hemminger
Acked-by: Tyler Retzlaff
Acked-by: Morten Brørup
Acked-by: Bru
Like dmesg, colorize the log output (unless redirected to file).
Timestamp is green, the subsystem is in yellow and the message
is red if urgent, boldface if an error, and normal for info and
debug messages.
The default is to not use color since it may disturb
automatic tests and other embedded us
In order for all log messages (including CPU mismatch) to
come out through the logging library, it must be initialized
as early in rte_eal_init() as possible on all platforms.
Where it was done before was likely historical based on
the support of non-OS isolated CPU's which required a shared
memor
Significant enough to warrant a release note.
Signed-off-by: Stephen Hemminger
Acked-by: Morten Brørup
Acked-by: Bruce Richardson
Acked-by: Chengwen Feng
---
doc/guides/rel_notes/release_24_11.rst | 20
1 file changed, 20 insertions(+)
diff --git a/doc/guides/rel_notes/r
When debugging driver or startup issues, it is useful to have
a timestamp on each message printed. The messages in syslog
already have a timestamp, but often syslog is not available
during testing.
There are multiple timestamp formats similar to Linux dmesg.
The default is time relative since star
If DPDK application is being run as a systemd service, then
it can use the journal protocol which allows putting more information
in the log such as priority and other information.
The use of journal protocol is automatically detected and
handled. Rather than having a dependency on libsystemd,
ju
This is useful for when decorating log output for console
or journal. Provide basic version in this patch.
Signed-off-by: Stephen Hemminger
Acked-by: Morten Brørup
Acked-by: Bruce Richardson
Acked-by: Chengwen Feng
---
lib/log/log.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
The message already goes through logging, and does not need
to be printed on stderr. Message level should be ALERT
to match function name.
Signed-off-by: Stephen Hemminger
Acked-by: Tyler Retzlaff
Acked-by: Morten Brørup
Acked-by: Bruce Richardson
Acked-by: Chengwen Feng
---
lib/eal/freebsd/
Refactor how syslog is handled, make it common to Linux and FreeBSD
The syslog facility property is better handled in lib/log
rather than in eal. This also add syslog support to FreeBSD.
Log to syslog only if option is specified.
If no --syslog is given then use only standard error.
Signed-off-by
"You touch it you own it"
Add myself as maintainer for log library.
Signed-off-by: Stephen Hemminger
Acked-by: Tyler Retzlaff
Acked-by: Morten Brørup
Acked-by: Chengwen Feng
Acked-by: Bruce Richardson
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git a/MAINTAINERS b/MAINTAINE
HWS context is created during port configuration.
PMD allowed meter operations before port configuration.
The patch rejects HWS meter operations before port configuration.
Signed-off-by: Gregory Etelson
Acked-by: Dariusz Sosnowski
---
drivers/net/mlx5/mlx5.h| 18 ++
dr
The PMD uses METER `state` variable to monitor ASO object
availability.
The patch updates SWS meter object state.
Fixes: 4359d9d1f76b ("net/mlx5: fix sync meter processing in HWS")
Cc: sta...@dpdk.org
Signed-off-by: Gregory Etelson
Acked-by: Dariusz Sosnowski
---
drivers/net/mlx5/mlx5_flow_m
Acked-by: Chengwen Feng
On 2024/10/28 2:28, Stephen Hemminger wrote:
> The rte_pcapng_add_interface could fail.
> For example: running out of space for the file.
>
> Covertity issue: 446742
> Signed-off-by: Stephen Hemminger
When DPDK copies flow items with the `rte_flow_conv` call, it assumes
that size of PMD private data has pointer size - see patch [1]
MLX5 PMD defined `struct mlx5_rte_flow_item_sq` as 32 bits.
As the result, on 64 bits systems, when DPDK copied
MLX5_RTE_FLOW_ITEM_TYPE_SQ item, the target buffer wa
On Fri, 25 Oct 2024 11:35:13 +0800
Howard Wang wrote:
> Implement logging macros for debug purposes.
>
> Signed-off-by: Howard Wang
Did you see this from checkpatch? Probably not because it was buried
in all the CamelCase warnings.
Warning in drivers/net/r8169/r8169_logs.h:
Prefer RTE_LOG_LIN
There was a incorrect bit to define TXGBE_ICRMISC_VFMBX that prevents the
interrupt from being handled correctly.
Fixes: a6712cd029a4 ("net/txgbe: add PF module init and uninit for SRIOV")
Cc: sta...@dpdk.org
Signed-off-by: Jiawen Wu
---
drivers/net/txgbe/base/txgbe_regs.h | 2 +-
1 file change
On Fri, 25 Oct 2024 11:35:16 +0800
Howard Wang wrote:
> Implement the rtl_hw_config function to configure the hardware.
>
> Signed-off-by: Howard Wang
If you send a new version, this should be fixed.
### [PATCH] net/r8169: add support for hw config
WARNING:BLOCK_COMMENT_STYLE: Block comments
HWS actions template validation checks actions parameters in actions
masks.
Non-template API does not have actions masks.
Actions templates in the non-template API are artificial and
created internally by the PMD.
The patch removes HWS actions template validation in non-template
setup.
Fixes: 04a
Testpmd example that could not work with existing number of DV
sub-flows:
dpdk-testpmd -a PCI,dv_xmeta_en=1,l3_vxlan_en=1,dv_flow_en=1 -- \
-i --nb-cores=4 --rxq=5 --txq=5
set sample_actions 1 mark id 43704 / \
rss queues 3 0 1 1 end types ipv4 ipv4-other udp tcp ipv4-udp end /
If counter action initialization failed, the PMD used integer values,
primarily (-1) or errno, to notify upper layers.
The patch uses the `rte_flow_error` structure for counter
initialization failure notifications.
Fixes: 4d368e1da3a4 ("net/mlx5: support flow counter action for HWS")
Cc: sta...@
PMD did not assign rte_errno value after it discovered an error in
matcher range parameters.
As a result, the calling function was not notified about the fault.
The patch assigns EINVAL to rte_errno if matcher range definition was
invalid.
Fixes: 9732ffe13bd6 ("net/mlx5/hws: add range definer cre
24/10/2024 16:11, Raslan Darawsheh:
> Series applied to next-net-mlx,
This series fails to build on MinGW because of the weak stubs.
Please check why.
Note: I'm off for a week.
The rte_pcapng_add_interface could fail.
For example: running out of space for the file.
Covertity issue: 446742
Signed-off-by: Stephen Hemminger
---
app/dumpcap/main.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/app/dumpcap/main.c b/app/dumpcap/main.c
index fcfaa19
Acked-by: Morten Brørup
Flow items translations for the root tables reuses DV code.
DV GRE item translation did not initiate item mask for HWS template.
Fixes: cd4ab742064a ("net/mlx5: split flow item matcher and value translation")
Cc: sta...@dpdk.org
Signed-off-by: Gregory Etelson
Acked-by: Suanming Mou
---
drive
74 matches
Mail list logo