• Sridhar Samudrala's avatar
    packet: Add GSO/csum offload support. · bfd5f4a3
    Sridhar Samudrala authored
    This patch adds GSO/checksum offload to af_packet sockets using
    virtio_net_hdr. Based on Rusty's patch to add this support to tun.
    It allows GSO/checksum offload to be enabled when using raw socket
    backend with virtio_net.
    Adds PACKET_VNET_HDR socket option to prepend virtio_net_hdr in the
    receive path and process/skip virtio_net_hdr in the send path. This
    option is only allowed with SOCK_RAW sockets attached to ethernet
    type devices.
    
    v2 updates
    ----------
    Michael's Comments
    - Perform length check in packet_snd() when GSO is off even when
      vnet_hdr is present.
    - Check for SKB_GSO_FCOE type and return -EINVAL
    - don't allow tx/rx ring when vnet_hdr is enabled.
    Herbert's Comments
    - Removed ethernet specific code.
    - protocol value is assumed to be passed in by the caller.
    Signed-off-by: 's avatarSridhar Samudrala <sri@us.ibm.com>
    Signed-off-by: 's avatarDavid S. Miller <davem@davemloft.net>
    bfd5f4a3
Name
Last commit
Last update
..
802 Loading commit data...
8021q Loading commit data...
9p Loading commit data...
appletalk Loading commit data...
atm Loading commit data...
ax25 Loading commit data...
bluetooth Loading commit data...
bridge Loading commit data...
can Loading commit data...
core Loading commit data...
dcb Loading commit data...
dccp Loading commit data...
decnet Loading commit data...
dsa Loading commit data...
econet Loading commit data...
ethernet Loading commit data...
ieee802154 Loading commit data...
ipv4 Loading commit data...
ipv6 Loading commit data...
ipx Loading commit data...
irda Loading commit data...
iucv Loading commit data...
key Loading commit data...
lapb Loading commit data...
llc Loading commit data...
mac80211 Loading commit data...
netfilter Loading commit data...
netlabel Loading commit data...
netlink Loading commit data...
netrom Loading commit data...
packet Loading commit data...
phonet Loading commit data...
rds Loading commit data...
rfkill Loading commit data...
rose Loading commit data...
rxrpc Loading commit data...
sched Loading commit data...
sctp Loading commit data...
sunrpc Loading commit data...
tipc Loading commit data...
unix Loading commit data...
wanrouter Loading commit data...
wimax Loading commit data...
wireless Loading commit data...
x25 Loading commit data...
xfrm Loading commit data...
Kconfig Loading commit data...
Makefile Loading commit data...
TUNABLE Loading commit data...
compat.c Loading commit data...
nonet.c Loading commit data...
socket.c Loading commit data...
sysctl_net.c Loading commit data...