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