alistair23-linux/net
Paolo Abeni 7fd4b288ea tc/act: remove unneeded RCU lock in action callback
Each lockless action currently does its own RCU locking in ->act().
This allows using plain RCU accessor, even if the context
is really RCU BH.

This change drops the per action RCU lock, replace the accessors
with the _bh variant, cleans up a bit the surrounding code and
documents the RCU status in the relevant header.
No functional nor performance change is intended.

The goal of this patch is clarifying that the RCU critical section
used by the tc actions extends up to the classifier's caller.

v1 -> v2:
 - preserve rcu lock in act_bpf: it's needed by eBPF helpers,
   as pointed out by Daniel

v3 -> v4:
 - fixed some typos in the commit message (JiriP)

Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-07-30 09:31:13 -07:00
..
6lowpan
9p net/9p/client.c: put refcount of trans_mod in error case in parse_opts() 2018-07-14 11:11:09 -07:00
802
8021q net: remove blank lines at end of file 2018-07-24 14:10:43 -07:00
appletalk
atm net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
ax25 ax25: remove blank line at EOF 2018-07-24 14:10:42 -07:00
batman-adv Merge ra.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux 2018-07-20 21:17:12 -07:00
bluetooth
bpf
bpfilter bpfilter: remove trailing newline 2018-07-24 14:10:42 -07:00
bridge net: bridge: add support for backup port 2018-07-23 09:32:15 -07:00
caif net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
can
ceph
core net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
dcb net: dcb: Add priority-to-DSCP map getters 2018-07-27 13:17:50 -07:00
dccp net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
decnet decnet: whitespace fixes 2018-07-24 14:10:42 -07:00
dns_resolver net: remove blank lines at end of file 2018-07-24 14:10:43 -07:00
dsa net: dsa: Remove VLA usage 2018-07-18 15:08:31 -07:00
ethernet
hsr
ieee802154 net: remove blank lines at end of file 2018-07-24 14:10:43 -07:00
ife
ipv4 net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
ipv6 net/ipv6: allow any source address for sendmsg pktinfo with ip_nonlocal_bind 2018-07-29 12:27:13 -07:00
iucv net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
kcm net: remove blank lines at end of file 2018-07-24 14:10:43 -07:00
key Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec-next 2018-07-27 09:33:37 -07:00
l2tp l2tp: drop ->mru from struct l2tp_session 2018-07-27 13:34:53 -07:00
l3mdev
lapb
llc llc: fix whitespace issues 2018-07-24 14:10:42 -07:00
mac80211 Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-07-24 19:21:58 -07:00
mac802154
mpls mpls: remove trailing whitepace 2018-07-24 14:10:42 -07:00
ncsi
netfilter Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-07-24 19:21:58 -07:00
netlabel
netlink netlink: do not store start function in netlink_cb 2018-07-24 10:04:49 -07:00
netrom
nfc net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
nsh
openvswitch ipv6: remove dependency of nf_defrag_ipv6 on ipv6 module 2018-07-18 11:26:53 +02:00
packet Merge ra.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux 2018-07-20 21:17:12 -07:00
phonet
psample
qrtr
rds net/rds/Kconfig: Correct the RDS depends 2018-07-27 13:19:01 -07:00
rfkill
rose
rxrpc net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
sched tc/act: remove unneeded RCU lock in action callback 2018-07-30 09:31:13 -07:00
sctp sctp: whitespace fixes 2018-07-24 14:10:42 -07:00
smc net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
strparser
sunrpc
switchdev
tipc net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
tls tls: Fix improper revert in zerocopy_from_iter 2018-07-28 22:53:31 -07:00
unix net: simplify sock_poll_wait 2018-07-30 09:10:25 -07:00
vmw_vsock
wimax wimax: remove blank lines at EOF 2018-07-24 14:10:42 -07:00
wireless Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-07-24 19:21:58 -07:00
x25 x25: remove blank lines at EOF 2018-07-24 14:10:42 -07:00
xdp
xfrm Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec-next 2018-07-27 09:33:37 -07:00
compat.c
Kconfig net: remove blank lines at end of file 2018-07-24 14:10:43 -07:00
Makefile
socket.c net: remove sock_poll_busy_flag 2018-07-30 09:10:25 -07:00
sysctl_net.c