[Bug 1097] i40e: TSO breaks when MSS spans more than 8 data fragments
bugzilla at dpdk.org
bugzilla at dpdk.org
Tue Oct 11 11:41:02 CEST 2022
https://bugs.dpdk.org/show_bug.cgi?id=1097
Bug ID: 1097
Summary: i40e: TSO breaks when MSS spans more than 8 data
fragments
Product: DPDK
Version: unspecified
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: ethdev
Assignee: dev at dpdk.org
Reporter: ivan.malov at oktetlabs.ru
Target Milestone: ---
We've been running opensource ethdev tests [1] lately and we've come across a
bug in TSO:
https://ts-factory.io/bublik/v2/log/100333?focusId=102700&mode=treeAndinfoAndlog
.
In the above example, a TSO transaction with MSS=4000 is requested for a packet
bearing 6000 bytes of payload, with the first 4000 bytes spanning data located
in 13 mbuf segments. As a result, no packets are seen on the opposite end of
the wire, and the following log is produced:
i40e_dev_alarm_handler(): ICR0: malicious programming detected
i40e_handle_mdd_event(): Malicious Driver Detection event 0x02 on TX queue 1 PF
number 0x00 VF number 0x00 device 0000:01:00.0
i40e_handle_mdd_event(): TX driver issue detected on PF
According to
https://github.com/torvalds/linux/blob/master/drivers/net/ethernet/intel/i40e/i40e_txrx.c#L3416
, the "HW can't DMA more than 8 buffers to build a packet on the wire". By the
looks of it, Tx prepare method in the PMD turns a blind eye to crossing this
boundary. Hence the error.
Apparrently, Tx prepare in i40e shall either turn such transactions down or
linearise the superframe data to some extent.
[1] http://mails.dpdk.org/archives/dev/2022-October/251663.html
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the dev
mailing list