* [dpdk-dev] IXBGE VF: link state detection
@ 2017-05-24 9:50 Gregory Etelson
2017-05-24 13:26 ` Olivier Matz
2017-05-25 0:56 ` Lu, Wenzhuo
0 siblings, 2 replies; 11+ messages in thread
From: Gregory Etelson @ 2017-05-24 9:50 UTC (permalink / raw)
To: dev; +Cc: users, Ferruh Yigit, wenzhuo.lu
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.
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 link_status == 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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] IXBGE VF: link state detection
2017-05-24 9:50 [dpdk-dev] IXBGE VF: link state detection Gregory Etelson
@ 2017-05-24 13:26 ` Olivier Matz
2017-05-25 3:48 ` Gregory Etelson
2017-05-25 0:56 ` Lu, Wenzhuo
1 sibling, 1 reply; 11+ messages in thread
From: Olivier Matz @ 2017-05-24 13:26 UTC (permalink / raw)
To: Gregory Etelson; +Cc: dev, users, Ferruh Yigit, wenzhuo.lu, Dai, Wei
Hi Gregory,
On Wed, 24 May 2017 12:50:19 +0300, Gregory Etelson <gregory@weka.io> wrote:
> 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.
> 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 link_status == 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
It looks there is at least one issue with
commit c12d22f65b13 ("net/ixgbe: ensure link status is updated")
Someone already complained about a problem related to the link status
on ixgbe (which is probably different than yours):
http://dpdk.org/ml/archives/dev/2017-May/066238.html
Anyway, maybe you can try to revert this patch and see if it
solves your issue?
Thanks
Olivier
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] IXBGE VF: link state detection
2017-05-24 9:50 [dpdk-dev] IXBGE VF: link state detection Gregory Etelson
2017-05-24 13:26 ` Olivier Matz
@ 2017-05-25 0:56 ` Lu, Wenzhuo
2017-05-25 3:45 ` Gregory Etelson
1 sibling, 1 reply; 11+ messages in thread
From: Lu, Wenzhuo @ 2017-05-25 0:56 UTC (permalink / raw)
To: Gregory Etelson, dev; +Cc: users, Yigit, Ferruh
Hi Gregory,
After you turned the port donw/up, PF will re-init the VF's registers. So, VF cannot work correctly. That's why you can know link down but not link up and have to reset the process.
Best regards
Wenzhuo Lu
From: Gregory Etelson [mailto:gregory@weka.io]
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
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.
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 link_status == 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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] IXBGE VF: link state detection
2017-05-25 0:56 ` Lu, Wenzhuo
@ 2017-05-25 3:45 ` Gregory Etelson
2017-05-25 5:01 ` Lu, Wenzhuo
0 siblings, 1 reply; 11+ messages in thread
From: Gregory Etelson @ 2017-05-25 3:45 UTC (permalink / raw)
To: Lu, Wenzhuo; +Cc: dev, users, Yigit, Ferruh
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’s registers. So, VF cannot work correctly. That’s why you can know link down but not link up and have to reset the process.
Best regards
Wenzhuo Lu
*From:* Gregory Etelson [mailto:gregory@weka.io]
*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
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.
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 link_status == 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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] IXBGE VF: link state detection
2017-05-24 13:26 ` Olivier Matz
@ 2017-05-25 3:48 ` Gregory Etelson
0 siblings, 0 replies; 11+ messages in thread
From: Gregory Etelson @ 2017-05-25 3:48 UTC (permalink / raw)
To: Olivier Matz; +Cc: dev, users, Ferruh Yigit, wenzhuo.lu, Dai, Wei
Hello,
After the revert, my environment reproduced link up detection failure almost immediately
With the patch the fault is rare.
Regards,
Gregory
On Wednesday, 24 May 2017 16:26:47 IDT Olivier Matz wrote:
> Hi Gregory,
>
> On Wed, 24 May 2017 12:50:19 +0300, Gregory Etelson <gregory@weka.io> wrote:
> > 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.
> > 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 link_status == 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
>
> It looks there is at least one issue with
> commit c12d22f65b13 ("net/ixgbe: ensure link status is updated")
>
> Someone already complained about a problem related to the link status
> on ixgbe (which is probably different than yours):
> http://dpdk.org/ml/archives/dev/2017-May/066238.html
>
> Anyway, maybe you can try to revert this patch and see if it
> solves your issue?
>
> Thanks
> Olivier
>
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] IXBGE VF: link state detection
2017-05-25 3:45 ` Gregory Etelson
@ 2017-05-25 5:01 ` Lu, Wenzhuo
2017-05-25 5:22 ` Gregory Etelson
0 siblings, 1 reply; 11+ messages in thread
From: Lu, Wenzhuo @ 2017-05-25 5:01 UTC (permalink / raw)
To: Gregory Etelson; +Cc: dev, users, Yigit, Ferruh
Hi Gregory,
The mechanism is different. Kernel driver has a watchdog to check the link state periodically. So, it can reset the link automatically.
Best regards
Wenzhuo Lu
From: Gregory Etelson [mailto:gregory@weka.io]
Sent: Thursday, May 25, 2017 11:45 AM
To: Lu, Wenzhuo
Cc: dev@dpdk.org; users@dpdk.org; Yigit, Ferruh
Subject: Re: IXBGE VF: link state detection
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’s registers. So, VF cannot work correctly. That’s why you can know link down but not link up and have to reset the process.
Best regards
Wenzhuo Lu
From: Gregory Etelson [mailto:gregory@weka.io]
Sent: Wednesday, May 24, 2017 5:50 PM
To: dev@dpdk.org<mailto:dev@dpdk.org>
Cc: users@dpdk.org<mailto:users@dpdk.org>; Yigit, Ferruh; Lu, Wenzhuo
Subject: IXBGE VF: link state detection
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.
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 link_status == 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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] IXBGE VF: link state detection
2017-05-25 5:01 ` Lu, Wenzhuo
@ 2017-05-25 5:22 ` Gregory Etelson
2017-05-25 5:44 ` Lu, Wenzhuo
0 siblings, 1 reply; 11+ messages in thread
From: Gregory Etelson @ 2017-05-25 5:22 UTC (permalink / raw)
To: Lu, Wenzhuo; +Cc: dev, users, Yigit, Ferruh
Hello,
What about i40e VF PMD ?
Does it have reliable link state monitoring ?
Thank you.
Regards,
Gregory
On Thursday, 25 May 2017 08:01:00 IDT Lu, Wenzhuo wrote:
Hi Gregory,
The mechanism is different. Kernel driver has a watchdog to check the link state periodically. So, it can reset the link automatically.
Best regards
Wenzhuo Lu
*From:* Gregory Etelson [mailto:gregory@weka.io]
*Sent:* Thursday, May 25, 2017 11:45 AM
*To:* Lu, Wenzhuo
*Cc:* dev@dpdk.org; users@dpdk.org; Yigit, Ferruh
*Subject:* Re: IXBGE VF: link state detection
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’s registers. So, VF cannot work correctly. That’s why you can know link down but not link up and have to reset the process.
Best regards
Wenzhuo Lu
*From:* Gregory Etelson [mailto:gregory@weka.io[1]]
*Sent:* Wednesday, May 24, 2017 5:50 PM
*To:* dev@dpdk.org[2]
*Cc:* users@dpdk.org[3]; Yigit, Ferruh; Lu, Wenzhuo
*Subject:* IXBGE VF: link state detection
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.
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 link_status == 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
--------
[1] mailto:gregory@weka.io
[2] mailto:dev@dpdk.org
[3] mailto:users@dpdk.org
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] IXBGE VF: link state detection
2017-05-25 5:22 ` Gregory Etelson
@ 2017-05-25 5:44 ` Lu, Wenzhuo
2017-05-25 6:03 ` Gregory Etelson
0 siblings, 1 reply; 11+ messages in thread
From: Lu, Wenzhuo @ 2017-05-25 5:44 UTC (permalink / raw)
To: Gregory Etelson; +Cc: dev, users, Yigit, Ferruh
Hi Gregory,
Yes, I remember i40e kernel driver has the watchdog too. I guess maybe all the NICs’ kernel driver has the similar mechanism. Not sure as I haven’t checked ☺
Best regards
Wenzhuo Lu
From: Gregory Etelson [mailto:gregory@weka.io]
Sent: Thursday, May 25, 2017 1:22 PM
To: Lu, Wenzhuo
Cc: dev@dpdk.org; users@dpdk.org; Yigit, Ferruh
Subject: Re: IXBGE VF: link state detection
Hello,
What about i40e VF PMD ?
Does it have reliable link state monitoring ?
Thank you.
Regards,
Gregory
On Thursday, 25 May 2017 08:01:00 IDT Lu, Wenzhuo wrote:
Hi Gregory,
The mechanism is different. Kernel driver has a watchdog to check the link state periodically. So, it can reset the link automatically.
Best regards
Wenzhuo Lu
From: Gregory Etelson [mailto:gregory@weka.io]
Sent: Thursday, May 25, 2017 11:45 AM
To: Lu, Wenzhuo
Cc: dev@dpdk.org<mailto:dev@dpdk.org>; users@dpdk.org<mailto:users@dpdk.org>; Yigit, Ferruh
Subject: Re: IXBGE VF: link state detection
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’s registers. So, VF cannot work correctly. That’s why you can know link down but not link up and have to reset the process.
Best regards
Wenzhuo Lu
From: Gregory Etelson [mailto:gregory@weka.io]
Sent: Wednesday, May 24, 2017 5:50 PM
To: dev@dpdk.org<mailto:dev@dpdk.org>
Cc: users@dpdk.org<mailto:users@dpdk.org>; Yigit, Ferruh; Lu, Wenzhuo
Subject: IXBGE VF: link state detection
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.
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 link_status == 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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] IXBGE VF: link state detection
2017-05-25 5:44 ` Lu, Wenzhuo
@ 2017-05-25 6:03 ` Gregory Etelson
2017-05-26 0:54 ` Lu, Wenzhuo
0 siblings, 1 reply; 11+ messages in thread
From: Gregory Etelson @ 2017-05-25 6:03 UTC (permalink / raw)
To: Lu, Wenzhuo; +Cc: dev, users, Yigit, Ferruh
Hello,
In that case if I need reliable link state detection
the only option is PF link verification.
Is it so ?
Thank you.
Regards,
Gregory
On Thursday, 25 May 2017 08:44:56 IDT Lu, Wenzhuo wrote:
Hi Gregory,
Yes, I remember i40e kernel driver has the watchdog too. I guess maybe all the NICs’ kernel driver has the similar mechanism. Not sure as I haven’t checked J
Best regards
Wenzhuo Lu
*From:* Gregory Etelson [mailto:gregory@weka.io]
*Sent:* Thursday, May 25, 2017 1:22 PM
*To:* Lu, Wenzhuo
*Cc:* dev@dpdk.org; users@dpdk.org; Yigit, Ferruh
*Subject:* Re: IXBGE VF: link state detection
Hello,
What about i40e VF PMD ?
Does it have reliable link state monitoring ?
Thank you.
Regards,
Gregory
On Thursday, 25 May 2017 08:01:00 IDT Lu, Wenzhuo wrote:
Hi Gregory,
The mechanism is different. Kernel driver has a watchdog to check the link state periodically. So, it can reset the link automatically.
Best regards
Wenzhuo Lu
*From:* Gregory Etelson [mailto:gregory@weka.io[1]]
*Sent:* Thursday, May 25, 2017 11:45 AM
*To:* Lu, Wenzhuo
*Cc:* dev@dpdk.org[2]; users@dpdk.org[3]; Yigit, Ferruh
*Subject:* Re: IXBGE VF: link state detection
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’s registers. So, VF cannot work correctly. That’s why you can know link down but not link up and have to reset the process.
Best regards
Wenzhuo Lu
*From:* Gregory Etelson [mailto:gregory@weka.io[1]]
*Sent:* Wednesday, May 24, 2017 5:50 PM
*To:* dev@dpdk.org[2]
*Cc:* users@dpdk.org[3]; Yigit, Ferruh; Lu, Wenzhuo
*Subject:* IXBGE VF: link state detection
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.
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 link_status == 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
--------
[1] mailto:gregory@weka.io
[2] mailto:dev@dpdk.org
[3] mailto:users@dpdk.org
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] IXBGE VF: link state detection
2017-05-25 6:03 ` Gregory Etelson
@ 2017-05-26 0:54 ` Lu, Wenzhuo
2017-05-26 4:25 ` Gregory Etelson
0 siblings, 1 reply; 11+ messages in thread
From: Lu, Wenzhuo @ 2017-05-26 0:54 UTC (permalink / raw)
To: Gregory Etelson; +Cc: dev, users, Yigit, Ferruh
Hi Gregory,
I think so. For example, In kernel driver, you can find there’s a message that’s used for PF to notify VF when the link state changes.
Best regards
Wenzhuo Lu
From: Gregory Etelson [mailto:gregory@weka.io]
Sent: Thursday, May 25, 2017 2:03 PM
To: Lu, Wenzhuo
Cc: dev@dpdk.org; users@dpdk.org; Yigit, Ferruh
Subject: Re: IXBGE VF: link state detection
Hello,
In that case if I need reliable link state detection
the only option is PF link verification.
Is it so ?
Thank you.
Regards,
Gregory
On Thursday, 25 May 2017 08:44:56 IDT Lu, Wenzhuo wrote:
Hi Gregory,
Yes, I remember i40e kernel driver has the watchdog too. I guess maybe all the NICs’ kernel driver has the similar mechanism. Not sure as I haven’t checked ☺
Best regards
Wenzhuo Lu
From: Gregory Etelson [mailto:gregory@weka.io]
Sent: Thursday, May 25, 2017 1:22 PM
To: Lu, Wenzhuo
Cc: dev@dpdk.org<mailto:dev@dpdk.org>; users@dpdk.org<mailto:users@dpdk.org>; Yigit, Ferruh
Subject: Re: IXBGE VF: link state detection
Hello,
What about i40e VF PMD ?
Does it have reliable link state monitoring ?
Thank you.
Regards,
Gregory
On Thursday, 25 May 2017 08:01:00 IDT Lu, Wenzhuo wrote:
Hi Gregory,
The mechanism is different. Kernel driver has a watchdog to check the link state periodically. So, it can reset the link automatically.
Best regards
Wenzhuo Lu
From: Gregory Etelson [mailto:gregory@weka.io]
Sent: Thursday, May 25, 2017 11:45 AM
To: Lu, Wenzhuo
Cc: dev@dpdk.org<mailto:dev@dpdk.org>; users@dpdk.org<mailto:users@dpdk.org>; Yigit, Ferruh
Subject: Re: IXBGE VF: link state detection
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’s registers. So, VF cannot work correctly. That’s why you can know link down but not link up and have to reset the process.
Best regards
Wenzhuo Lu
From: Gregory Etelson [mailto:gregory@weka.io]
Sent: Wednesday, May 24, 2017 5:50 PM
To: dev@dpdk.org<mailto:dev@dpdk.org>
Cc: users@dpdk.org<mailto:users@dpdk.org>; Yigit, Ferruh; Lu, Wenzhuo
Subject: IXBGE VF: link state detection
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.
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 link_status == 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
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [dpdk-dev] IXBGE VF: link state detection
2017-05-26 0:54 ` Lu, Wenzhuo
@ 2017-05-26 4:25 ` Gregory Etelson
0 siblings, 0 replies; 11+ messages in thread
From: Gregory Etelson @ 2017-05-26 4:25 UTC (permalink / raw)
To: Lu, Wenzhuo; +Cc: dev, users, Yigit, Ferruh
Hello,
I'll update the code.
Thank you.
Regards,
Gregory
Hi Gregory,
I think so. For example, In kernel driver, you can find there’s a message that’s used for PF to notify VF when the link state changes.
Best regards
Wenzhuo Lu
*From:* Gregory Etelson [mailto:gregory@weka.io]
*Sent:* Thursday, May 25, 2017 2:03 PM
*To:* Lu, Wenzhuo
*Cc:* dev@dpdk.org; users@dpdk.org; Yigit, Ferruh
*Subject:* Re: IXBGE VF: link state detection
Hello,
In that case if I need reliable link state detection
the only option is PF link verification.
Is it so ?
Thank you.
Regards,
Gregory
On Thursday, 25 May 2017 08:44:56 IDT Lu, Wenzhuo wrote:
Hi Gregory,
Yes, I remember i40e kernel driver has the watchdog too. I guess maybe all the NICs’ kernel driver has the similar mechanism. Not sure as I haven’t checked J
Best regards
Wenzhuo Lu
*From:* Gregory Etelson [mailto:gregory@weka.io[1]]
*Sent:* Thursday, May 25, 2017 1:22 PM
*To:* Lu, Wenzhuo
*Cc:* dev@dpdk.org[2]; users@dpdk.org[3]; Yigit, Ferruh
*Subject:* Re: IXBGE VF: link state detection
Hello,
What about i40e VF PMD ?
Does it have reliable link state monitoring ?
Thank you.
Regards,
Gregory
On Thursday, 25 May 2017 08:01:00 IDT Lu, Wenzhuo wrote:
Hi Gregory,
The mechanism is different. Kernel driver has a watchdog to check the link state periodically. So, it can reset the link automatically.
Best regards
Wenzhuo Lu
*From:* Gregory Etelson [mailto:gregory@weka.io[1]]
*Sent:* Thursday, May 25, 2017 11:45 AM
*To:* Lu, Wenzhuo
*Cc:* dev@dpdk.org[2]; users@dpdk.org[3]; Yigit, Ferruh
*Subject:* Re: IXBGE VF: link state detection
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’s registers. So, VF cannot work correctly. That’s why you can know link down but not link up and have to reset the process.
Best regards
Wenzhuo Lu
*From:* Gregory Etelson [mailto:gregory@weka.io[1]]
*Sent:* Wednesday, May 24, 2017 5:50 PM
*To:* dev@dpdk.org[2]
*Cc:* users@dpdk.org[3]; Yigit, Ferruh; Lu, Wenzhuo
*Subject:* IXBGE VF: link state detection
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.
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 link_status == 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
--------
[1] mailto:gregory@weka.io
[2] mailto:dev@dpdk.org
[3] mailto:users@dpdk.org
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2017-05-26 4:25 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-24 9:50 [dpdk-dev] IXBGE VF: link state detection Gregory Etelson
2017-05-24 13:26 ` Olivier Matz
2017-05-25 3:48 ` Gregory Etelson
2017-05-25 0:56 ` Lu, Wenzhuo
2017-05-25 3:45 ` Gregory Etelson
2017-05-25 5:01 ` Lu, Wenzhuo
2017-05-25 5:22 ` Gregory Etelson
2017-05-25 5:44 ` Lu, Wenzhuo
2017-05-25 6:03 ` Gregory Etelson
2017-05-26 0:54 ` Lu, Wenzhuo
2017-05-26 4:25 ` Gregory Etelson
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).