udp: Add GRO functions to UDP socket
This patch adds GRO functions (gro_receive and gro_complete) to UDP sockets. udp_gro_receive is changed to perform socket lookup on a packet. If a socket is found the related GRO functions are called. This features obsoletes using UDP offload infrastructure for GRO (udp_offload). This has the advantage of not being limited to provide offload on a per port basis, GRO is now applied to whatever individual UDP sockets are bound to. This also allows the possbility of "application defined GRO"-- that is we can attach something like a BPF program to a UDP socket to perfrom GRO on an application layer protocol. Signed-off-by:Tom Herbert <tom@herbertland.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
- include/linux/udp.h 8 additions, 0 deletionsinclude/linux/udp.h
- include/net/udp.h 5 additions, 2 deletionsinclude/net/udp.h
- net/ipv4/udp_offload.c 20 additions, 32 deletionsnet/ipv4/udp_offload.c
- net/ipv6/Makefile 3 additions, 2 deletionsnet/ipv6/Makefile
- net/ipv6/af_inet6.c 8 additions, 0 deletionsnet/ipv6/af_inet6.c
- net/ipv6/ip6_offload.c 0 additions, 2 deletionsnet/ipv6/ip6_offload.c
- net/ipv6/ip6_offload.h 2 additions, 1 deletionnet/ipv6/ip6_offload.h
- net/ipv6/udp_offload.c 8 additions, 3 deletionsnet/ipv6/udp_offload.c
Loading
Please register or sign in to comment