DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] issue with ixgbevf speed/duplex introduced with commit 8ef32003772a14c61c70b540e41c259c482c2fb6
@ 2014-11-07 16:36 Roberts, Lee A.
  2014-11-07 16:46 ` Thomas Monjalon
  0 siblings, 1 reply; 3+ messages in thread
From: Roberts, Lee A. @ 2014-11-07 16:36 UTC (permalink / raw)
  To: thomas.monjalon; +Cc: dev

Thomas,

I'm seeing an issue with ixgbevf speed/duplex reporting that appears to have been introduced with
commit 8ef32003772a14c61c70b540e41c259c482c2fb6 (http://www.dpdk.org/browse/dpdk/commit/lib/librte_pmd_ixgbe/ixgbe/ixgbe_vf.c?id=8ef32003772a14c61c70b540e41c259c482c2fb6)

The issue I'm seeing seems to involve the following code.  If I'm reading this correctly,
one sets "mac->get_link_status = true" if the port is not OK, where "true" means that one
still needs to get the link status.  Due to the added test "if (!mac->get_link_status)",
one branches to the early exit if mac->get_link_status is false---meaning we have already
obtained the link status---instead of continuing with the analysis in the function body.

-       if (!(hw->mbx.ops.check_for_rst(hw, 0))) {
-               *link_up = false;
-               *speed = 0;
-               return -1;
-       }
+       /* If we were hit with a reset drop the link */
+       if (!mbx->ops.check_for_rst(hw, 0) || !mbx->timeout)
+               mac->get_link_status = true;

-       links_reg = IXGBE_VFREAD_REG(hw, IXGBE_VFLINKS);
+       if (!mac->get_link_status)
+               goto out;

When I run "testpmd" on ixgbevf ports either in the host OS or passed
through to a virtual machine, "testpmd" reports that the ixgbevf ports
have "speed 100 Mbps - half-duplex".  With the previous code (or with
my patch), "testpmd" reports "speed 10000 Mbps - full-duplex".

-       Lee Roberts

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [dpdk-dev] issue with ixgbevf speed/duplex introduced with commit 8ef32003772a14c61c70b540e41c259c482c2fb6
  2014-11-07 16:36 [dpdk-dev] issue with ixgbevf speed/duplex introduced with commit 8ef32003772a14c61c70b540e41c259c482c2fb6 Roberts, Lee A.
@ 2014-11-07 16:46 ` Thomas Monjalon
  2014-11-27 17:36   ` Thomas Monjalon
  0 siblings, 1 reply; 3+ messages in thread
From: Thomas Monjalon @ 2014-11-07 16:46 UTC (permalink / raw)
  To: Roberts, Lee A.; +Cc: dev

Hi,

Thank you for reporting and explaining the issue.

You have already sent a bug report and a patch for this issue.
Are you sending this email to ask a review and integration of your patch?
I think it should be reviewed by an Intel developer.

Note: it would be good to have the commit reference in the commit log
of your patch.

PS: in such case, it's better to reply to the previous emails

Thanks
-- 
Thomas

2014-11-07 16:36, Roberts, Lee A.:
> I'm seeing an issue with ixgbevf speed/duplex reporting that appears to have been introduced with
> commit 8ef32003772a14c61c70b540e41c259c482c2fb6 (http://www.dpdk.org/browse/dpdk/commit/lib/librte_pmd_ixgbe/ixgbe/ixgbe_vf.c?id=8ef32003772a14c61c70b540e41c259c482c2fb6)
> 
> The issue I'm seeing seems to involve the following code.  If I'm reading this correctly,
> one sets "mac->get_link_status = true" if the port is not OK, where "true" means that one
> still needs to get the link status.  Due to the added test "if (!mac->get_link_status)",
> one branches to the early exit if mac->get_link_status is false---meaning we have already
> obtained the link status---instead of continuing with the analysis in the function body.
> 
> -       if (!(hw->mbx.ops.check_for_rst(hw, 0))) {
> -               *link_up = false;
> -               *speed = 0;
> -               return -1;
> -       }
> +       /* If we were hit with a reset drop the link */
> +       if (!mbx->ops.check_for_rst(hw, 0) || !mbx->timeout)
> +               mac->get_link_status = true;
> 
> -       links_reg = IXGBE_VFREAD_REG(hw, IXGBE_VFLINKS);
> +       if (!mac->get_link_status)
> +               goto out;
> 
> When I run "testpmd" on ixgbevf ports either in the host OS or passed
> through to a virtual machine, "testpmd" reports that the ixgbevf ports
> have "speed 100 Mbps - half-duplex".  With the previous code (or with
> my patch), "testpmd" reports "speed 10000 Mbps - full-duplex".

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [dpdk-dev] issue with ixgbevf speed/duplex introduced with commit 8ef32003772a14c61c70b540e41c259c482c2fb6
  2014-11-07 16:46 ` Thomas Monjalon
@ 2014-11-27 17:36   ` Thomas Monjalon
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Monjalon @ 2014-11-27 17:36 UTC (permalink / raw)
  To: dev

Ping?
There is still no review of this patch:
	http://dpdk.org/dev/patchwork/patch/1079/
And there is another patch for the same issue:
	http://dpdk.org/dev/patchwork/patch/1224/


2014-11-07 17:46, Thomas Monjalon:
> Hi,
> 
> Thank you for reporting and explaining the issue.
> 
> You have already sent a bug report and a patch for this issue.
> Are you sending this email to ask a review and integration of your patch?
> I think it should be reviewed by an Intel developer.
> 
> Note: it would be good to have the commit reference in the commit log
> of your patch.
> 
> PS: in such case, it's better to reply to the previous emails
> 
> Thanks
> > I'm seeing an issue with ixgbevf speed/duplex reporting that appears to have been introduced with
> > commit 8ef32003772a14c61c70b540e41c259c482c2fb6 (http://www.dpdk.org/browse/dpdk/commit/lib/librte_pmd_ixgbe/ixgbe/ixgbe_vf.c?id=8ef32003772a14c61c70b540e41c259c482c2fb6)
> > 
> > The issue I'm seeing seems to involve the following code.  If I'm reading this correctly,
> > one sets "mac->get_link_status = true" if the port is not OK, where "true" means that one
> > still needs to get the link status.  Due to the added test "if (!mac->get_link_status)",
> > one branches to the early exit if mac->get_link_status is false---meaning we have already
> > obtained the link status---instead of continuing with the analysis in the function body.
> > 
> > -       if (!(hw->mbx.ops.check_for_rst(hw, 0))) {
> > -               *link_up = false;
> > -               *speed = 0;
> > -               return -1;
> > -       }
> > +       /* If we were hit with a reset drop the link */
> > +       if (!mbx->ops.check_for_rst(hw, 0) || !mbx->timeout)
> > +               mac->get_link_status = true;
> > 
> > -       links_reg = IXGBE_VFREAD_REG(hw, IXGBE_VFLINKS);
> > +       if (!mac->get_link_status)
> > +               goto out;
> > 
> > When I run "testpmd" on ixgbevf ports either in the host OS or passed
> > through to a virtual machine, "testpmd" reports that the ixgbevf ports
> > have "speed 100 Mbps - half-duplex".  With the previous code (or with
> > my patch), "testpmd" reports "speed 10000 Mbps - full-duplex".
> 


-- 
Thomas

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-11-27 17:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-11-07 16:36 [dpdk-dev] issue with ixgbevf speed/duplex introduced with commit 8ef32003772a14c61c70b540e41c259c482c2fb6 Roberts, Lee A.
2014-11-07 16:46 ` Thomas Monjalon
2014-11-27 17:36   ` Thomas Monjalon

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).