Thread (9 messages) 9 messages, 2 authors, 2018-10-15

Re: [PATCH] doc: add known issue about legacy intr mode for ixgbe

From: Li, Xiaoyun <hidden>
Date: 2018-09-30 02:46:14

Hi
-----Original Message-----
From: Zhang, Qi Z
Sent: Sunday, September 30, 2018 10:25
To: Li, Xiaoyun <redacted>; Xing, Beilei <redacted>;
dev@dpdk.org; Lu, Wenzhuo [off-list ref]; Wu, Jingjing
[off-list ref]
Subject: RE: [PATCH] doc: add known issue about legacy intr mode for ixgbe


quoted
-----Original Message-----
From: Li, Xiaoyun
Sent: Thursday, September 27, 2018 5:17 PM
To: Xing, Beilei <redacted>; Zhang, Qi Z
[off-list ref]; dev@dpdk.org; Lu, Wenzhuo
[off-list ref]; Wu, Jingjing [off-list ref]
Cc: Li, Xiaoyun <redacted>
Subject: [PATCH] doc: add known issue about legacy intr mode for ixgbe

When using uio_pci_generic module or using legacy interrupt mode of
igb_uio or vfio, X550 cannot get interrupts. Because the Interrupt
Status bit is not implemented, then the irq cannot be handled
correctly and cannot report the event fd to DPDK apps.

Add this hw limitation and details into ixgbe known issue.

Signed-off-by: Xiaoyun Li <redacted>
---
 doc/guides/nics/ixgbe.rst | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)
diff --git a/doc/guides/nics/ixgbe.rst b/doc/guides/nics/ixgbe.rst
index 16d6390..4f89a6d 100644
--- a/doc/guides/nics/ixgbe.rst
+++ b/doc/guides/nics/ixgbe.rst
@@ -200,6 +200,32 @@ There is no RTE API to add a VF's MAC address
from the PF. On ixgbe, the  ``rte_eth_dev_mac_addr_add()`` function
can be used to add a VF's MAC address,  as a workaround.

+legacy interrupt mode and uio pci generic module cannot be used in
+X550
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~
quoted
~~~~~~~
the reason we can't use uio_pci_generic, is it also because uio_pci_generic
require legacy mode?
If it is, can we simplified the title as " x550 does not support legacy interrupt
mode"
Sure.
quoted
+
+Desccription
+^^^^^^^^^^^^
+X550 cannot get interrupts if using ``uio_pci_generic`` module or
+using legacy interrupt mode of ``igb_uio`` or ``vfio``. Because the
+errata of
+X550 states that the Interrupt Status bit is not implemented. The
+errata is the item #22 from `X550 spec update
+<https://www.intel.com/content/dam/www/public/us/en/documents/dat
as
quoted
heet
+s/ethernet-x550-spec-update.pdf>`_
Seems the url here is not correct, there is no errata item #22
Yes. Will correct it.
Thanks.
Regards
Qi
quoted
+
+Implication
+^^^^^^^^^^^
+When using ``uio_pci_generic`` module or using legacy interrupt mode
+of ``igb_uio`` or ``vfio``, the Interrupt Status bit would be checked
+if the interrupt is comming. Since the bit is not implemented in
+X550, the irq cannot be handled correctly and cannot report the event
+fd to DPDK apps. Then apps cannot get interrupts and ``dmesg`` will
+show messages like ``irq #No.: `` ``nobody cared.``
+
+Workaround
+^^^^^^^^^^
+Do not bind the ``uio_pci_generic`` module in X550 NICs.
+Do not bind ``igb_uio`` with legacy mode in X550 NICs.
+Before using ``vfio`` with legacy mode in X550 NICs, using ``modprobe
+vfio `` ``nointxmask=1`` to bind ``vfio``.

 Inline crypto processing support
 --------------------------------
--
2.7.4
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help