kernel_optimize_test/net
Paolo Abeni cb891fa6a1 udp6: fix jumbogram reception
Since commit 67a51780ae ("ipv6: udp: leverage scratch area
helpers") udp6_recvmsg() read the skb len from the scratch area,
to avoid a cache miss.
But the UDP6 rx path support RFC 2675 UDPv6 jumbograms, and their
length exceeds the 16 bits available in the scratch area. As a side
effect the length returned by recvmsg() is:
<ingress datagram len> % (1<<16)

This commit addresses the issue allocating one more bit in the
IP6CB flags field and setting it for incoming jumbograms.
Such field is still in the first cacheline, so at recvmsg()
time we can check it and fallback to access skb->len if
required, without a measurable overhead.

Fixes: 67a51780ae ("ipv6: udp: leverage scratch area helpers")
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-07-31 22:01:21 -07:00
..
6lowpan
9p Merge branch 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-15 12:00:42 -07:00
802
8021q
appletalk
atm
ax25
batman-adv
bluetooth
bpf
bridge net: bridge: fix dest lookup when vlan proto doesn't match 2017-07-14 08:19:23 -07:00
caif
can
ceph libceph: potential NULL dereference in ceph_msg_data_create() 2017-07-17 14:54:59 +02:00
core net: check dev->addr_len for dev_set_mac_address() 2017-07-29 11:25:05 -07:00
dcb
dccp dccp: fix a memleak for dccp_feat_init err process 2017-07-27 00:01:05 -07:00
decnet
dns_resolver
dsa net: dsa: Initialize ds->cpu_port_mask earlier 2017-07-24 17:36:27 -07:00
ethernet
hsr
ieee802154
ife
ipv4 ipv4: fib: Fix NULL pointer deref during fib_sync_down_dev() 2017-07-31 17:51:11 -07:00
ipv6 udp6: fix jumbogram reception 2017-07-31 22:01:21 -07:00
ipx
irda Merge branch 'work.memdup_user' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-05 16:05:24 -07:00
iucv
kcm
key
l2tp
l3mdev
lapb
llc
mac80211
mac802154
mpls mpls: fix uninitialized in_label var warning in mpls_getroute 2017-07-08 11:26:41 +01:00
ncsi
netfilter Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-07-20 16:33:39 -07:00
netlabel
netlink
netrom
nfc
openvswitch openvswitch: fix potential out of bound access in parse_ct 2017-07-24 16:25:06 -07:00
packet packet: fix use-after-free in prb_retire_rx_blk_timer_expired() 2017-07-24 17:33:19 -07:00
phonet
psample
qrtr
rds rds: Make sure updates to cp_send_gen can be observed 2017-07-20 15:33:01 -07:00
rfkill
rose
rxrpc
sched Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-07-20 16:33:39 -07:00
sctp sctp: fix an array overflow when all ext chunks are set 2017-07-14 09:05:10 -07:00
smc
strparser
sunrpc NFS client updates for Linux 4.13 2017-07-13 14:35:37 -07:00
switchdev
tipc
tls TLS: Fix length check in do_tls_getsockopt_tx() 2017-07-06 10:58:19 +01:00
unix
vmw_vsock
wimax
wireless netlink validation fixes for nl80211 2017-07-07 11:35:55 +01:00
x25
xfrm
compat.c
Kconfig
Makefile
socket.c net/socket: fix type in assignment and trim long line 2017-07-24 14:17:01 -07:00
sysctl_net.c