Change remote checksum handling to set checksum partial as default behavior. Added an iflink parameter to configure not using checksum partial (calling csum_partial to update checksum).
Showing the changes to include/net (1 of 3 files). Show all
Unified · Split
| @@ -128,13 +128,15 @@ struct vxlan_sock { · 127 unmodified lines | |||
| 128 | #define VXLAN_F_REMCSUM_TX 0x200 | 128 | #define VXLAN_F_REMCSUM_TX 0x200 |
| 129 | #define VXLAN_F_REMCSUM_RX 0x400 | 129 | #define VXLAN_F_REMCSUM_RX 0x400 |
| 130 | #define VXLAN_F_GBP 0x800 | 130 | #define VXLAN_F_GBP 0x800 |
| 131 | #define VXLAN_F_REMCSUM_NOPARTIAL 0x1000 | ||
| 131 | 132 | ||
| 132 | /* Flags that are used in the receive patch. These flags must match in | 133 | /* Flags that are used in the receive patch. These flags must match in |
| 133 | * order for a socket to be shareable | 134 | * order for a socket to be shareable |
| 134 | */ | 135 | */ |
| 135 | #define VXLAN_F_RCV_FLAGS (VXLAN_F_GBP | \ | 136 | #define VXLAN_F_RCV_FLAGS (VXLAN_F_GBP | \ |
| 136 | VXLAN_F_UDP_ZERO_CSUM6_RX | \ | 137 | VXLAN_F_UDP_ZERO_CSUM6_RX | \ |
| 137 | VXLAN_F_REMCSUM_RX) | 138 | VXLAN_F_REMCSUM_RX | \ |
| 139 | VXLAN_F_REMCSUM_NOPARTIAL) | ||
| 138 | 140 | ||
| 139 | struct vxlan_sock *vxlan_sock_add(struct net *net, __be16 port, | 141 | struct vxlan_sock *vxlan_sock_add(struct net *net, __be16 port, |
| 140 | vxlan_rcv_t *rcv, void *data, | 142 | vxlan_rcv_t *rcv, void *data, |