From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <bugzilla@dpdk.org>
Received: by dpdk.org (Postfix, from userid 33)
 id D67905F24; Wed, 10 Apr 2019 11:21:18 +0200 (CEST)
From: bugzilla@dpdk.org
To: dev@dpdk.org
Date: Wed, 10 Apr 2019 09:21:18 +0000
X-Bugzilla-Reason: AssignedTo
X-Bugzilla-Type: new
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: DPDK
X-Bugzilla-Component: ethdev
X-Bugzilla-Version: 18.11
X-Bugzilla-Keywords: 
X-Bugzilla-Severity: normal
X-Bugzilla-Who: martin.weiser@allegro-packets.com
X-Bugzilla-Status: CONFIRMED
X-Bugzilla-Resolution: 
X-Bugzilla-Priority: Normal
X-Bugzilla-Assigned-To: dev@dpdk.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags: 
X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform
 op_sys bug_status bug_severity priority component assigned_to reporter
 target_milestone
Message-ID: <bug-250-3@http.bugs.dpdk.org/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://bugs.dpdk.org/
Auto-Submitted: auto-generated
X-Auto-Response-Suppress: All
MIME-Version: 1.0
Subject: [dpdk-dev] [Bug 250] i40e: rte_eth_link_get_nowait() on X722
 returns wrong link_speed value 20000 instead of 10000
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Wed, 10 Apr 2019 09:21:19 -0000

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

            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

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

From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by dpdk.space (Postfix) with ESMTP id 62864A0096
	for <public@inbox.dpdk.org>; Wed, 10 Apr 2019 11:21:20 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 2C7F35F24;
	Wed, 10 Apr 2019 11:21:20 +0200 (CEST)
Received: by dpdk.org (Postfix, from userid 33)
 id D67905F24; Wed, 10 Apr 2019 11:21:18 +0200 (CEST)
From: bugzilla@dpdk.org
To: dev@dpdk.org
Date: Wed, 10 Apr 2019 09:21:18 +0000
X-Bugzilla-Reason: AssignedTo
X-Bugzilla-Type: new
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: DPDK
X-Bugzilla-Component: ethdev
X-Bugzilla-Version: 18.11
X-Bugzilla-Keywords: 
X-Bugzilla-Severity: normal
X-Bugzilla-Who: martin.weiser@allegro-packets.com
X-Bugzilla-Status: CONFIRMED
X-Bugzilla-Resolution: 
X-Bugzilla-Priority: Normal
X-Bugzilla-Assigned-To: dev@dpdk.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags: 
X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform
 op_sys bug_status bug_severity priority component assigned_to reporter
 target_milestone
Message-ID: <bug-250-3@http.bugs.dpdk.org/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Bugzilla-URL: http://bugs.dpdk.org/
Auto-Submitted: auto-generated
X-Auto-Response-Suppress: All
MIME-Version: 1.0
Subject: [dpdk-dev] [Bug 250] i40e: rte_eth_link_get_nowait() on X722
 returns wrong link_speed value 20000 instead of 10000
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>
Message-ID: <20190410092118.WGhLRrPflnA4KSGV9oKVJ80fFhpAVttbqU9lkNTNC6E@z>

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

            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

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