All of lore.kernel.org
 help / color / mirror / Atom feed
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [dpdk-dev] [Bug 250] i40e: rte_eth_link_get_nowait() on X722 returns wrong link_speed value 20000 instead of 10000
Date: Wed, 10 Apr 2019 09:21:18 +0000	[thread overview]
Message-ID: <bug-250-3@http.bugs.dpdk.org/> (raw)

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

            Bug ID: 250
           Summary: i40e: rte_eth_link_get_nowait() on X722 returns wrong
                    link_speed value 20000 instead of 10000
           Product: DPDK
           Version: 18.11
          Hardware: All
                OS: Linux
            Status: CONFIRMED
          Severity: normal
          Priority: Normal
         Component: ethdev
          Assignee: dev@dpdk.org
          Reporter: martin.weiser@allegro-packets.com
  Target Milestone: ---

When using a Xeon D with an integrated X722 NIC that provides two
ports of 8086:37d2 and two ports of 8086:37d0 all four ports show the
same behavior: they return a link speed value of 20000 for a 10Gbps link.

This only seems to happen when internally the update_link_reg() function
in i40e_ethdev.c is used. This requires the application to use the
rte_eth_link_get_nowait() function and not use link status change
interrupts.

To reproduce use e.g. testpmd with the option --no-lsc-interrupt:
it will suddenly show a link speed of 20000 Mbps instead of 10000 Mbps.

Here are two examples of the register values read by update_link_reg():

A 10Gbps link which produces the wrong link speed value:

I40E_PRTMAC_LINKSTA: 0x60000080
I40E_PRTMAC_MACC:    0x3d00


A 1Gbps link which produces the correct link speed value:

I40E_PRTMAC_LINKSTA: 0x48000081
I40E_PRTMAC_MACC:    0x3d00

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

                 reply	other threads:[~2019-04-10  9:21 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-250-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.