* [dpdk-users] PF link status is not getting detected correctly by dpdk driver in VM
@ 2018-01-10 6:48 Tushar Mulkar
2018-01-10 10:44 ` Tushar Mulkar
0 siblings, 1 reply; 4+ messages in thread
From: Tushar Mulkar @ 2018-01-10 6:48 UTC (permalink / raw)
To: users
Hi All,
I am using "Ethernet Controller X710 for 10GbE SFP+" SRIOV NIC card on
the host with 8 VFs. Out of these VFs two VFs are associated with a VM, one
VF is bound to Linux kernel driver i40evf and another is bound to dpdk pmd
i.e. igb_uio.
when there is a link fault on the hardware nic, the fault is not
detected for the VF that is bound to dpdk. Instead it is detecting medium
change from 10GBase-SR to 100BASE-TXFD. Is there any configuration, that
will allow me to detect the link state on hardware NIC in the VM ?
Basically I want to get the Link change notification on the dpdk
application in VM.
I tried to register for the link state change interrupt but the
"rte_eth_dev_configure" fails with error code -22
I believe link-state auto actually means replicate PF link-state to VF
Current Config :
[root at ironman <https://dpdk.org/ml/listinfo/dev> tmp]# ip link show p2p2
34: p2p2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP
mode DEFAULT qlen 1000
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
vf 0 MAC xx:xx:xx:xx:xx:01, spoof checking on, link-state auto, trust off
vf 1 MAC xx:xx:xx:xx:xx:02, spoof checking on, link-state auto, trust off
vf 2 MAC xx:xx:xx:xx:xx:03, spoof checking on, link-state auto, trust off
vf 3 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
vf 4 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
vf 5 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
vf 6 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
vf 7 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
Regards,
Tushar
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-users] PF link status is not getting detected correctly by dpdk driver in VM
2018-01-10 6:48 [dpdk-users] PF link status is not getting detected correctly by dpdk driver in VM Tushar Mulkar
@ 2018-01-10 10:44 ` Tushar Mulkar
2018-01-11 13:54 ` Tushar Mulkar
0 siblings, 1 reply; 4+ messages in thread
From: Tushar Mulkar @ 2018-01-10 10:44 UTC (permalink / raw)
To: users
I think the IX710 device doesn't support the Link Change Interrupt. I have
enabled the debug traces and I could see following in the messages
Jan 10 02:07:53 <hostname> packet-forwarding[1518]: rte_eth_dev_configure:
driver net_i40e_vf does not support lsc
Also I could verify that the virtual function bound to kernel (i.e. i40evf
) is able to detect the link failure in the PF.
Tushar
On Wed, Jan 10, 2018 at 12:18 PM, Tushar Mulkar <tusharmulkar@gmail.com>
wrote:
> Hi All,
>
> I am using "Ethernet Controller X710 for 10GbE SFP+" SRIOV NIC card on
> the host with 8 VFs. Out of these VFs two VFs are associated with a VM, one
> VF is bound to Linux kernel driver i40evf and another is bound to dpdk pmd
> i.e. igb_uio.
> when there is a link fault on the hardware nic, the fault is not
> detected for the VF that is bound to dpdk. Instead it is detecting medium
> change from 10GBase-SR to 100BASE-TXFD. Is there any configuration, that
> will allow me to detect the link state on hardware NIC in the VM ?
>
> Basically I want to get the Link change notification on the dpdk
> application in VM.
>
> I tried to register for the link state change interrupt but the
> "rte_eth_dev_configure" fails with error code -22
>
> I believe link-state auto actually means replicate PF link-state to VF
> Current Config :
>
>
> [root at ironman <https://dpdk.org/ml/listinfo/dev> tmp]# ip link show p2p2
> 34: p2p2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP
> mode DEFAULT qlen 1000
> link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
> vf 0 MAC xx:xx:xx:xx:xx:01, spoof checking on, link-state auto, trust off
> vf 1 MAC xx:xx:xx:xx:xx:02, spoof checking on, link-state auto, trust off
> vf 2 MAC xx:xx:xx:xx:xx:03, spoof checking on, link-state auto, trust off
> vf 3 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
> vf 4 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
> vf 5 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
> vf 6 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
> vf 7 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
>
>
> Regards,
> Tushar
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-users] PF link status is not getting detected correctly by dpdk driver in VM
2018-01-10 10:44 ` Tushar Mulkar
@ 2018-01-11 13:54 ` Tushar Mulkar
2018-01-11 14:43 ` Van Haaren, Harry
0 siblings, 1 reply; 4+ messages in thread
From: Tushar Mulkar @ 2018-01-11 13:54 UTC (permalink / raw)
To: users
Hi All,
So finally I am able to find the issue. Actually in dpdk i40evf driver,
the way link up/down is propagated is not working for me. Below change set
worked for me.
diff --git a/drivers/net/i40e/i40e_ethdev_vf.c
b/drivers/net/i40e/i40e_ethdev_vf.c
index 87a760796..0389f4bfa 100644
--- a/drivers/net/i40e/i40e_ethdev_vf.c
+++ b/drivers/net/i40e/i40e_ethdev_vf.c
@@ -2235,13 +2235,13 @@ i40evf_dev_link_update(struct rte_eth_dev *dev,
new_link.link_speed = ETH_SPEED_NUM_100M;
break;
}
+
/* full duplex only */
new_link.link_duplex = ETH_LINK_FULL_DUPLEX;
- new_link.link_status = vf->link_up ? ETH_LINK_UP :
- ETH_LINK_DOWN;
+ new_link.link_status = (vf->link_up & true) ? ETH_LINK_UP :
+ ETH_LINK_DOWN;
i40evf_dev_atomic_write_link_status(dev, &new_link);
-
return 0;
}
On Wed, Jan 10, 2018 at 4:14 PM, Tushar Mulkar <tusharmulkar@gmail.com>
wrote:
> I think the IX710 device doesn't support the Link Change Interrupt. I have
> enabled the debug traces and I could see following in the messages
>
>
> Jan 10 02:07:53 <hostname> packet-forwarding[1518]:
> rte_eth_dev_configure: driver net_i40e_vf does not support lsc
>
>
> Also I could verify that the virtual function bound to kernel (i.e. i40evf
> ) is able to detect the link failure in the PF.
>
>
> Tushar
>
>
>
> On Wed, Jan 10, 2018 at 12:18 PM, Tushar Mulkar <tusharmulkar@gmail.com>
> wrote:
>
>> Hi All,
>>
>> I am using "Ethernet Controller X710 for 10GbE SFP+" SRIOV NIC card on
>> the host with 8 VFs. Out of these VFs two VFs are associated with a VM, one
>> VF is bound to Linux kernel driver i40evf and another is bound to dpdk pmd
>> i.e. igb_uio.
>> when there is a link fault on the hardware nic, the fault is not
>> detected for the VF that is bound to dpdk. Instead it is detecting medium
>> change from 10GBase-SR to 100BASE-TXFD. Is there any configuration, that
>> will allow me to detect the link state on hardware NIC in the VM ?
>>
>> Basically I want to get the Link change notification on the dpdk
>> application in VM.
>>
>> I tried to register for the link state change interrupt but the
>> "rte_eth_dev_configure" fails with error code -22
>>
>> I believe link-state auto actually means replicate PF link-state to VF
>> Current Config :
>>
>>
>> [root at ironman <https://dpdk.org/ml/listinfo/dev> tmp]# ip link show p2p2
>> 34: p2p2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP
>> mode DEFAULT qlen 1000
>> link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
>> vf 0 MAC xx:xx:xx:xx:xx:01, spoof checking on, link-state auto, trust off
>> vf 1 MAC xx:xx:xx:xx:xx:02, spoof checking on, link-state auto, trust off
>> vf 2 MAC xx:xx:xx:xx:xx:03, spoof checking on, link-state auto, trust off
>> vf 3 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
>> vf 4 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
>> vf 5 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
>> vf 6 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
>> vf 7 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off
>>
>>
>> Regards,
>> Tushar
>>
>>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [dpdk-users] PF link status is not getting detected correctly by dpdk driver in VM
2018-01-11 13:54 ` Tushar Mulkar
@ 2018-01-11 14:43 ` Van Haaren, Harry
0 siblings, 0 replies; 4+ messages in thread
From: Van Haaren, Harry @ 2018-01-11 14:43 UTC (permalink / raw)
To: Tushar Mulkar, users
> From: users [mailto:users-bounces@dpdk.org] On Behalf Of Tushar Mulkar
> Sent: Thursday, January 11, 2018 1:55 PM
> To: users@dpdk.org
> Subject: Re: [dpdk-users] PF link status is not getting detected correctly
> by dpdk driver in VM
>
> Hi All,
Hi!
> So finally I am able to find the issue. Actually in dpdk i40evf driver,
> the way link up/down is propagated is not working for me. Below change set
> worked for me.
Please send a patch to dev@dpdk.org (http://dpdk.org/doc/guides/contributing/patches.html)
In the commit message, please describe the issue a bit more, and how the patch
fixes it. Also add a "signoff" so it can be accepted into the DPDK source.
Also CC the i40e maintainers to bring it to their attention.
From the MAINTAINERS file, i40e heading:
Beilei Xing <beilei.xing@intel.com>
Qi Zhang <qi.z.zhang@intel.com>
Regards, -Harry
> diff --git a/drivers/net/i40e/i40e_ethdev_vf.c
> b/drivers/net/i40e/i40e_ethdev_vf.c
> index 87a760796..0389f4bfa 100644
> --- a/drivers/net/i40e/i40e_ethdev_vf.c
> +++ b/drivers/net/i40e/i40e_ethdev_vf.c
> @@ -2235,13 +2235,13 @@ i40evf_dev_link_update(struct rte_eth_dev *dev,
> new_link.link_speed = ETH_SPEED_NUM_100M;
> break;
> }
> +
> /* full duplex only */
> new_link.link_duplex = ETH_LINK_FULL_DUPLEX;
> - new_link.link_status = vf->link_up ? ETH_LINK_UP :
> - ETH_LINK_DOWN;
> + new_link.link_status = (vf->link_up & true) ? ETH_LINK_UP :
> + ETH_LINK_DOWN;
>
> i40evf_dev_atomic_write_link_status(dev, &new_link);
> -
> return 0;
> }
>
>
<snip>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-01-11 14:43 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-10 6:48 [dpdk-users] PF link status is not getting detected correctly by dpdk driver in VM Tushar Mulkar
2018-01-10 10:44 ` Tushar Mulkar
2018-01-11 13:54 ` Tushar Mulkar
2018-01-11 14:43 ` Van Haaren, Harry
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).