Toshiaki Makita
2014-Dec-10 02:43 UTC
[Bridge] [PATCH net-next] bridge: Add ability to always enable TSO/UFO
Currently a bridge device turns off TSO/UFO features if no bridge ports support it. We can always enable them, since packets can be segmented on ports by software as well as on the bridge device. This will reduce the number of packets processed in the bridge. Signed-off-by: Toshiaki Makita <makita.toshiaki at lab.ntt.co.jp> --- net/bridge/br_if.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/bridge/br_if.c b/net/bridge/br_if.c index ed307db..e93bf17 100644 --- a/net/bridge/br_if.c +++ b/net/bridge/br_if.c @@ -418,7 +418,7 @@ netdev_features_t br_features_recompute(struct net_bridge *br, return features; mask = features; - features &= ~NETIF_F_ONE_FOR_ALL; + features &= ~NETIF_F_ONE_FOR_ALL | NETIF_F_GSO_SOFTWARE; list_for_each_entry(p, &br->port_list, list) { features = netdev_increment_features(features, -- 1.8.1.2
David Miller
2014-Dec-10 19:50 UTC
[Bridge] [PATCH net-next] bridge: Add ability to always enable TSO/UFO
From: Toshiaki Makita <makita.toshiaki at lab.ntt.co.jp> 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. I think you meant: features &= ~(NETIF_F_ONE_FOR_ALL | NETIF_F_GSO_SOFTWARE); Or: features = ~NETIF_F_ONE_FOR_ALL; features |= NETIF_F_GSO_SOFTWARE;