From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gregory Etelson Subject: Re: IXBGE VF: link state detection Date: Thu, 25 May 2017 06:45:22 +0300 Message-ID: <1555038.6RsqslMA5V@polaris> References: <8509342.3MbcxIPMKs@polaris> <6A0DE07E22DDAD4C9103DF62FEBC09093B5BC8B8@shsmsx102.ccr.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Cc: "dev@dpdk.org" , "users@dpdk.org" , "Yigit, Ferruh" To: "Lu, Wenzhuo" Return-path: Received: from mail-wm0-f43.google.com (mail-wm0-f43.google.com [74.125.82.43]) by dpdk.org (Postfix) with ESMTP id 41616914B for ; Thu, 25 May 2017 05:45:24 +0200 (CEST) Received: by mail-wm0-f43.google.com with SMTP id d127so84418678wmf.0 for ; Wed, 24 May 2017 20:45:24 -0700 (PDT) In-Reply-To: <6A0DE07E22DDAD4C9103DF62FEBC09093B5BC8B8@shsmsx102.ccr.corp.intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hello, In this case I would expect ixgbe VF bound to kernel driver also fail on link up detection In my tests, VFs bound to kernel drivers operate correctly. Regards, Gregory On Thursday, 25 May 2017 03:56:34 IDT Lu, Wenzhuo wrote: Hi Gregory, After you turned the port donw/up, PF will re-init the VF=E2=80=99s registe= rs. So, VF cannot work correctly. That=E2=80=99s why you can know link down= but not link up and have to reset the process. =20 =20 Best regards Wenzhuo Lu =20 *From:* Gregory Etelson [mailto:gregory@weka.io]=20 *Sent:* Wednesday, May 24, 2017 5:50 PM *To:* dev@dpdk.org *Cc:* users@dpdk.org; Yigit, Ferruh; Lu, Wenzhuo *Subject:* IXBGE VF: link state detection =20 Hello, In my tests DPDK-17.05.0 process queries link state with rte_eth_link_get()= each 50 msec during 5-20 MB/sec IOs flow. I turn Ethernet switch port down and up and check IXGBE VF PMD reaction to = link state changes.=20 VF PMD correctly recognize link down events but may miss link up. When the fault occurs, subsequent calls to rte_eth_link_get will return lin= k_status =3D=3D 0 forever. I need to reset DPDK process to get correct link state value. My debugging shows that in case of the fault, mbx->ops.read(hw, &in_msg, 1,= 0) in ixgbe_check_mac_link_vf keeps returning non-zero value Regards, Gregory=20