kernel_optimize_test/net
Patrick McHardy f9c2288837 netlink: implement memory mapped recvmsg()
Add support for mmap'ed recvmsg(). To allow the kernel to construct messages
into the mapped area, a dataless skb is allocated and the data pointer is
set to point into the ring frame. This means frames will be delivered to
userspace in order of allocation instead of order of transmission. This
usually doesn't matter since the order is either not determinable by
userspace or message creation/transmission is serialized. The only case
where this can have a visible difference is nfnetlink_queue. Userspace
can't assume mmap'ed messages have ordered IDs anymore and needs to check
this if using batched verdicts.

For non-mapped sockets, nothing changes.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-04-19 14:57:58 -04:00
..
9p
802
8021q net: vlan: add 802.1ad support 2013-04-19 14:46:06 -04:00
appletalk
atm
ax25
batman-adv net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
bluetooth
bridge net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
caif
can
ceph
core net: add function to allocate sk_buff head without data area 2013-04-19 14:57:57 -04:00
dcb
dccp
decnet
dns_resolver
dsa
ethernet
ieee802154
ipv4 netlink: rename ssk to sk in struct netlink_skb_params 2013-04-19 14:57:56 -04:00
ipv6
ipx
irda
iucv
key
l2tp
lapb
llc
mac80211
mac802154
netfilter netlink: rename ssk to sk in struct netlink_skb_params 2013-04-19 14:57:56 -04:00
netlabel
netlink netlink: implement memory mapped recvmsg() 2013-04-19 14:57:58 -04:00
netrom
nfc
openvswitch net: vlan: add protocol argument to packet tagging functions 2013-04-19 14:46:06 -04:00
packet
phonet
rds
rfkill
rose
rxrpc
sched netlink: rename ssk to sk in struct netlink_skb_params 2013-04-19 14:57:56 -04:00
sctp
sunrpc
tipc
unix
vmw_vsock
wimax
wireless
x25
xfrm
compat.c
Kconfig netlink: mmaped netlink: ring setup 2013-04-19 14:57:57 -04:00
Makefile
nonet.c
socket.c
sysctl_net.c