On 2014/12/11 4:50, David Miller wrote: > From: Toshiaki Makita <makita.toshiaki@xxxxxxxxxxxxx> > Date: Wed, 10 Dec 2014 11:43:14 +0900 > >> - features &= ~NETIF_F_ONE_FOR_ALL; >> + features &= ~NETIF_F_ONE_FOR_ALL | NETIF_F_GSO_SOFTWARE; > > I don't think this is the expression you intend to use. Thank you, but this is really my intended expression. "features &= ~NETIF_F_ONE_FOR_ALL" drops all of ONE_FOR_ALL bits including GSO_SOFTWARE. But I want to leave GSO_SOFTWARE bits here. > > I think you meant: > > features &= ~(NETIF_F_ONE_FOR_ALL | NETIF_F_GSO_SOFTWARE); ONE_FOR_ALL already includes GSO_SOFTWARE. > > Or: > > features = ~NETIF_F_ONE_FOR_ALL; > features |= NETIF_F_GSO_SOFTWARE; This way, users cannot drop TSO/UFO by ethtool. Thanks, Toshiaki Makita