(resend) Thanks Florian for the review! I will add ndo_fix_features hook in v2 to prevent the case that a user wants to turn off NETIF_F_LRO but RX flow is programmed. If any programmed RX flow exists, NETIF_F_LRO cannot be turned off.
-----Original Message----- From: Florian Fainelli [mailto:f.faine...@gmail.com] Sent: Wednesday, September 14, 2016 2:27 AM To: Nelson Chang (張家祥); j...@phrozen.org; da...@davemloft.net Cc: n...@openwrt.org; netdev@vger.kernel.org; linux-media...@lists.infradead.org; nelsonch...@gmail.com Subject: Re: [PATCH net-next 2/3] net: ethernet: mediatek: add ethtool functions to configure RX flows of HW LRO On 09/13/2016 06:54 AM, Nelson Chang wrote: > The codes add ethtool functions to set RX flows for HW LRO. Because > the HW LRO hardware can only recognize the destination IP of TCP/IP RX > flows, the ethtool command to add HW LRO flow is as below: > ethtool -N [devname] flow-type tcp4 dst-ip [ip_addr] loc [0~1] > > Otherwise, cause the hardware can set total four destination IPs, each > GMAC (GMAC1/GMAC2) can set two IPs separately at most. > > Signed-off-by: Nelson Chang <nelson.ch...@mediatek.com> > --- > + > +static int mtk_set_features(struct net_device *dev, netdev_features_t > +features) { > + int err = 0; > + > + if (!((dev->features ^ features) & NETIF_F_LRO)) > + return 0; > + > + if (!(features & NETIF_F_LRO)) > + mtk_hwlro_netdev_disable(dev); you may want to implement a fix_features ndo operations which makes sure that NETIF_F_LRO is turned on in case a RX flow is programmed, otherwise, it may be confusing to the user that a flow was programmed, but no offload is happening. -- Florian