All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [dpdk-dev] [Bug 698] i40e unload on FreeBSD prints "unqualified module" and breaks link
Date: Fri, 07 May 2021 13:30:06 +0000	[thread overview]
Message-ID: <bug-698-3@http.bugs.dpdk.org/> (raw)

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.

                 reply	other threads:[~2021-05-07 13:30 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-698-3@http.bugs.dpdk.org/ \
    --to=bugzilla@dpdk.org \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.