[dpdk-dev] [Bug 25] Ixgbe driver sets TDH register after TXDCTL.ENABLE is set
bugzilla at dpdk.org
bugzilla at dpdk.org
Sun Apr 1 14:59:49 CEST 2018
https://dpdk.org/tracker/show_bug.cgi?id=25
Bug ID: 25
Summary: Ixgbe driver sets TDH register after TXDCTL.ENABLE is
set
Product: DPDK
Version: unspecified
Hardware: All
OS: All
Status: CONFIRMED
Severity: normal
Priority: Normal
Component: ethdev
Assignee: dev at dpdk.org
Reporter: solal.pirelli at gmail.com
Target Milestone: ---
The Intel 82599 data sheet
(https://www.intel.com/content/dam/www/public/us/en/documents/datasheets/82599-10-gbe-controller-datasheet.pdf,
§8.2.3.9.8) states that "The only time that software should write to [the TDH]
register is after a reset (hardware reset or CTRL.RST) and before enabling the
transmit function (TXDCTL.ENABLE). If software were to write to this register
while the transmit function was enabled, the on-chip descriptor buffers might
be invalidated and the hardware could become confused".
The ixgbe driver's ixgbe_dev_tx_queue_start function
(http://dpdk.org/browse/dpdk/tree/drivers/net/ixgbe/ixgbe_rxtx.c?h=v18.02#n5148)
first enables TXDCTL.ENABLE, then performs some admirable efforts to make sure
it is truly enabled, and then changes TDH, ensuring that hardware confusion can
happen.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the dev
mailing list