Re: [PATCH 2/2] v2 GRE: Add segmentation offload for GRE
From: Michał Mirosław <hidden>
Date: 2013-01-25 01:15:08
2013/1/24 Pravin B Shelar [off-list ref]: [...]
quoted hunk ↗ jump to hunk
@@ -1374,6 +1421,10 @@ static int ipgre_tunnel_init(struct net_device *dev) return err; } + if (!(tunnel->parms.o_flags & GRE_SEQ)) { + dev->features |= NETIF_F_GSO_SOFTWARE; + dev->hw_features |= NETIF_F_GSO_SOFTWARE; + } return 0; }
Can o_flags change after tunnel creation? If so, NETIF_F_GSO_SOFTWARE should be set in dev->hw_features always, and it should be forced zero in ndo_fix_features when GRE_SEQ is set. ipgre_netlink_parms() should call netdev_update_features() when o_flags changes.
quoted hunk ↗ jump to hunk
@@ -1564,6 +1615,10 @@ static int ipgre_tap_init(struct net_device *dev) if (!dev->tstats) return -ENOMEM; + if (!(tunnel->parms.o_flags & GRE_SEQ)) { + dev->features |= NETIF_F_GSO_SOFTWARE; + dev->hw_features |= NETIF_F_GSO_SOFTWARE; + } return 0; }
Same here. Best Regards, Michał Mirosław