DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [Bug 698] i40e unload on FreeBSD prints "unqualified module" and breaks link
@ 2021-05-07 13:30 bugzilla
  0 siblings, 0 replies; only message in thread
From: bugzilla @ 2021-05-07 13:30 UTC (permalink / raw)
  To: dev

https://bugs.dpdk.org/show_bug.cgi?id=698

            Bug ID: 698
           Summary: i40e unload on FreeBSD prints "unqualified module" and
                    breaks link
           Product: DPDK
           Version: 20.11
          Hardware: x86
                OS: FreeBSD
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: ethdev
          Assignee: dev@dpdk.org
          Reporter: brian90013@gmail.com
  Target Milestone: ---

Hello,

I am using an Intel XL710-Q2 (2x40GbE) NIC on FreeBSD-12.2 with DPDK 20.11.1. I
have the two ports connected to each other via fiber. I have been testing my
application by running DPDK on ixl0 and using the standard OS driver for ixl1.
I am able to transmit and receive packets between the two without issue.
However, when I unload DPDK with 'kldunload nic_uio', the ixl0 driver attempts
to reload then prints:

ixl0: Link failed because an unqualified module was detected!

At this point, both ixl0 and ixl1 are in a "no carrier" state. I have found a
complete power cycle is required to bring the interfaces back online. I have
used both ixl0 and ixl1 in FreeBSD but only see this message and lose link when
returning from using DPDK. Here's the full trace from /var/log/messages showing
ixl0 coming back up as nic_uio is removed:


kernel: nic_uio0: 
kernel: detached
kernel: pci8: <network, ethernet> at device 0.0 (no driver attached)
kernel: nic_uio_unload: entered...
kernel: nic_uio_unload: calling to device_probe_and_attach for
dev=0xfffff8010632f600...
kernel: ixl0: <Intel(R) Ethernet Controller XL710 for 40GbE QSFP+ - 2.3.0-k>
mem 0xfa800000-0xfaffffff
kernel: ,0xfb008000-0xfb00ffff irq 40 at device 0.0 on pci8
kernel: ixl0: fw 6.0.48442 api 1.7 nvm 6.01 etid 80003564 oem 0.0.0
kernel: ixl0: PF-ID[0]: VFs 64, MSI-X 129, VF MSI-X 5, QPs 768, I2C
kernel: ixl0: 
kernel: Using 1024 TX descriptors and 1024 RX descriptors
kernel: ixl0: 
kernel: queue equality override not set, capping rx_queues at 4 and tx_queues
at 4
kernel: ixl0: Using 4 RX queues 4 TX queues
kernel: ixl0: Using MSI-X interrupts with 5 vectors
kernel: ixl0: Ethernet address: 00:23:56:1f:22:15
kernel: ixl0: Allocating 4 queues for PF LAN VSI; 4 queues active
kernel: ixl0: PCI Express Bus: Speed 8.0GT/s Width x8
kernel: ixl0: netmap queues/slots: TX 4/1024, RX 4/1024
kernel: nic_uio_unload: done.
kernel: nic_uio_unload: leaving...
kernel: ixl0: 
kernel: Link failed because an unqualified module was detected!


My problem - returning from DPDK breaks the link - sounds very similar to the
following message posted to DPDK-users in June 2017. That issue was on Ubuntu
16.04 / DPDK 17.02. The second thread indicates it was fixed by updating to
DPDK 17.08 and the Linux driver 2.0.30. The third link contains a Linux i40e
patch from September 2017 related to moving the unqualified module check. I
wonder if a similar change is required to work with FreeBSD? I have posted here
vs. the FreeBSD bug tracker as the behavior has only been seen when leaving
DPDK.

http://mails.dpdk.org/archives/users/2017-June/002116.html
https://sourceforge.net/p/e1000/bugs/570/
https://patchwork.ozlabs.org/project/netdev/patch/20170930004507.20072-3-jeffrey.t.kirsher@intel.com/

Thank you for your help. I am hopeful the XL710 can be used both in FreeBSD and
DPDK without power cycles between use.

-- 
You are receiving this mail because:
You are the assignee for the bug.

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-05-07 13:30 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-07 13:30 [dpdk-dev] [Bug 698] i40e unload on FreeBSD prints "unqualified module" and breaks link bugzilla

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).