On 2018/9/20 22:50, Haiyang Zhang wrote: > > >> -----Original Message----- >> From: Stephen Hemminger <step...@networkplumber.org> >> Sent: Thursday, September 20, 2018 10:44 AM >> To: YueHaibing <yuehaib...@huawei.com> >> Cc: da...@davemloft.net; dmitry.tarnya...@lockless.no; >> w...@grandegger.com; m...@pengutronix.de; michal.si...@xilinx.com; >> hswee...@visionengravers.com; madalin.bu...@nxp.com; >> pantelis.anton...@gmail.com; claudiu.man...@nxp.com; leoyang...@nxp.com; >> li...@armlinux.org.uk; sa...@sammy.net; r...@linux-mips.org; >> n...@fluxnic.net; steve.glendinn...@shawell.net; f.faine...@gmail.com; >> grygorii.stras...@ti.com; w-kw...@ti.com; m-kariche...@ti.com; >> t.sai...@alumni.ethz.ch; jreu...@yaina.de; KY Srinivasan >> <k...@microsoft.com>; >> Haiyang Zhang <haiya...@microsoft.com>; wei.l...@citrix.com; >> paul.durr...@citrix.com; arvid.bro...@alten.se; pshe...@ovn.org; >> d...@openvswitch.org; linux-m...@linux-mips.org; xen- >> de...@lists.xenproject.org; net...@vger.kernel.org; >> linux-...@vger.kernel.org; >> linux-ker...@vger.kernel.org; linux-...@vger.kernel.org; >> de...@linuxdriverproject.org; linux-h...@vger.kernel.org; linux- >> o...@vger.kernel.org; linuxppc-dev@lists.ozlabs.org; linux-arm- >> ker...@lists.infradead.org >> Subject: Re: [PATCH net-next 17/22] hv_netvsc: fix return type of >> ndo_start_xmit function >> >> On Thu, 20 Sep 2018 20:33:01 +0800 >> YueHaibing <yuehaib...@huawei.com> wrote: >>> int netvsc_start_xmit(struct sk_buff *skb, struct net_device *net) >>> */ >>> vf_netdev = rcu_dereference_bh(net_device_ctx->vf_netdev); >>> if (vf_netdev && netif_running(vf_netdev) && >>> - !netpoll_tx_running(net)) >>> - return netvsc_vf_xmit(net, vf_netdev, skb); >>> + !netpoll_tx_running(net)) { >>> + ret = netvsc_vf_xmit(net, vf_netdev, skb); >>> + if (ret) >>> + return NETDEV_TX_BUSY; >>> + } >> >> Sorry, the new code is wrong. It will fall through if ret == 0 (NETDEV_TX_OK) >> Please review and test your patches. > > Plus consideration of -- For error case, please just return NETDEV_TX_OK. We > are not sure if the error can go away after retrying, returning > NETDEV_TX_BUSY > may cause infinite retry from the upper layer. > > So, let's just always return NETDEV_TX_OK like this: > netvsc_vf_xmit(net, vf_netdev, skb); > return NETDEV_TX_OK;
Thank you for review. Will do that in v2. > > Thanks, > - Haiyang > > . >