Skip to content

Commit c080559

Browse files
committed
Merge branch 'net-make-udp-tunnel-devices-support-fraglist'
Xin Long says: ==================== net: make udp tunnel devices support fraglist Like GRE device, UDP tunnel devices should also support fraglist, so that some protocol (like SCTP) HW GSO that requires NETIF_F_FRAGLIST in the dev can work. Especially when the lower device support both NETIF_F_GSO_UDP_TUNNEL and NETIF_F_GSO_SCTP. ==================== Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Jakub Kicinski <[email protected]>
2 parents 505e3f0 + 3224dcf commit c080559

File tree

3 files changed

+9
-6
lines changed

3 files changed

+9
-6
lines changed

drivers/net/bareudp.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -532,11 +532,12 @@ static void bareudp_setup(struct net_device *dev)
532532
dev->netdev_ops = &bareudp_netdev_ops;
533533
dev->needs_free_netdev = true;
534534
SET_NETDEV_DEVTYPE(dev, &bareudp_type);
535-
dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM;
535+
dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_FRAGLIST;
536536
dev->features |= NETIF_F_RXCSUM;
537537
dev->features |= NETIF_F_LLTX;
538538
dev->features |= NETIF_F_GSO_SOFTWARE;
539-
dev->hw_features |= NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_RXCSUM;
539+
dev->hw_features |= NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_FRAGLIST;
540+
dev->hw_features |= NETIF_F_RXCSUM;
540541
dev->hw_features |= NETIF_F_GSO_SOFTWARE;
541542
dev->hard_header_len = 0;
542543
dev->addr_len = 0;

drivers/net/geneve.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1197,11 +1197,12 @@ static void geneve_setup(struct net_device *dev)
11971197
SET_NETDEV_DEVTYPE(dev, &geneve_type);
11981198

11991199
dev->features |= NETIF_F_LLTX;
1200-
dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM;
1200+
dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_FRAGLIST;
12011201
dev->features |= NETIF_F_RXCSUM;
12021202
dev->features |= NETIF_F_GSO_SOFTWARE;
12031203

1204-
dev->hw_features |= NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_RXCSUM;
1204+
dev->hw_features |= NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_FRAGLIST;
1205+
dev->hw_features |= NETIF_F_RXCSUM;
12051206
dev->hw_features |= NETIF_F_GSO_SOFTWARE;
12061207

12071208
/* MTU range: 68 - (something less than 65535) */

drivers/net/vxlan.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3283,12 +3283,13 @@ static void vxlan_setup(struct net_device *dev)
32833283
SET_NETDEV_DEVTYPE(dev, &vxlan_type);
32843284

32853285
dev->features |= NETIF_F_LLTX;
3286-
dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM;
3286+
dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_FRAGLIST;
32873287
dev->features |= NETIF_F_RXCSUM;
32883288
dev->features |= NETIF_F_GSO_SOFTWARE;
32893289

32903290
dev->vlan_features = dev->features;
3291-
dev->hw_features |= NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_RXCSUM;
3291+
dev->hw_features |= NETIF_F_SG | NETIF_F_HW_CSUM | NETIF_F_FRAGLIST;
3292+
dev->hw_features |= NETIF_F_RXCSUM;
32923293
dev->hw_features |= NETIF_F_GSO_SOFTWARE;
32933294
netif_keep_dst(dev);
32943295
dev->priv_flags |= IFF_NO_QUEUE;

0 commit comments

Comments
 (0)