e166e0db8c
In some cases, DPDK application may send packets
while PMD is going through load or unload flow.
This causes firmware to access invalid/unallocated
memory to process transmit buffer. Which results in
error on PCI bus and chip further blocks access to host,
causing a DMAE timeout.
Fix this issue by installing dummy empty transmit and receive
handlers at the beginning of unload path (rte_eth_dev_stop())
and install actual transmit and receive handlers after successful
load of the PMD port (rte_eth_dev_start()). This way, application
won't be able to send packets while device is going through
load/unload flow.
Fixes:
|
||
---|---|---|
.. | ||
bnx2x_ethdev.c | ||
bnx2x_ethdev.h | ||
bnx2x_logs.h | ||
bnx2x_rxtx.c | ||
bnx2x_rxtx.h | ||
bnx2x_stats.c | ||
bnx2x_stats.h | ||
bnx2x_vfpf.c | ||
bnx2x_vfpf.h | ||
bnx2x.c | ||
bnx2x.h | ||
ecore_fw_defs.h | ||
ecore_hsi.h | ||
ecore_init_ops.h | ||
ecore_init.h | ||
ecore_mfw_req.h | ||
ecore_reg.h | ||
ecore_sp.c | ||
ecore_sp.h | ||
elink.c | ||
elink.h | ||
Makefile | ||
meson.build | ||
rte_pmd_bnx2x_version.map |