mirror_ubuntu-kernels/drivers/net
Toke Høiland-Jørgensen 547aabcac3 freescale: Remove rcu_read_lock() around XDP program invocation
The dpaa and dpaa2 drivers have rcu_read_lock()/rcu_read_unlock() pairs
around XDP program invocations. However, the actual lifetime of the objects
referred by the XDP program invocation is longer, all the way through to
the call to xdp_do_flush(), making the scope of the rcu_read_lock() too
small. This turns out to be harmless because it all happens in a single
NAPI poll cycle (and thus under local_bh_disable()), but it makes the
rcu_read_lock() misleading.

Rather than extend the scope of the rcu_read_lock(), just get rid of it
entirely. With the addition of RCU annotations to the XDP_REDIRECT map
types that take bh execution into account, lockdep even understands this to
be safe, so there's really no reason to keep it around.

Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Reviewed-by: Camelia Groza <camelia.groza@nxp.com>
Cc: Ioana Radulescu <ruxandra.radulescu@nxp.com>
Cc: Madalin Bucur <madalin.bucur@nxp.com>
Cc: Ioana Ciornei <ioana.ciornei@nxp.com>
Link: https://lore.kernel.org/bpf/20210624160609.292325-11-toke@redhat.com
2021-06-24 19:44:17 +02:00
..
appletalk Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-05-27 09:55:10 -07:00
arcnet
bonding net: bonding: Use per-cpu rr_tx_counter 2021-06-15 11:26:15 -07:00
caif Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-05-27 09:55:10 -07:00
can can: m_can: fix whitespace in a few comments 2021-05-27 09:42:24 +02:00
dsa net: dsa: xrs700x: forward HSR supervision frames 2021-06-16 12:17:03 -07:00
ethernet freescale: Remove rcu_read_lock() around XDP program invocation 2021-06-24 19:44:17 +02:00
fddi net: fddi: skfp: remove leading spaces before tabs 2021-05-20 15:10:57 -07:00
fjes fjes: check return value after calling platform_get_resource() 2021-06-10 13:53:13 -07:00
hamradio hamradio: bpqether: Fix -Wunused-const-variable warning 2021-06-01 17:00:51 -07:00
hippi
hyperv
ieee802154 Merge tag 'ieee802154-for-davem-2021-06-03' of git://git.kernel.org/pub/scm/linux/kernel/git/sschmidt/wpan 2021-06-03 15:21:58 -07:00
ipa net: ipa: Add missing of_node_put() in ipa_firmware_load() 2021-06-17 11:34:25 -07:00
ipvlan
mdio net: mdio: use device_set_node() to setup both fwnode and of 2021-06-17 12:06:52 -07:00
mhi net: mhi_net: make mhi_wwan_ops static 2021-06-16 00:38:02 -07:00
netdevsim drivers: net: netdevsim: add devlink trap_drop_counter_get implementation 2021-06-14 13:04:25 -07:00
pcs net: pcs: xpcs: Fix a less than zero u16 comparison error 2021-06-17 11:14:06 -07:00
phy net: mdio: use device_set_node() to setup both fwnode and of 2021-06-17 12:06:52 -07:00
plip
ppp net: ppp: remove leading spaces before tabs 2021-05-20 15:10:57 -07:00
slip net: slip: remove leading spaces before tabs 2021-05-20 15:10:57 -07:00
team
usb r8152: store the information of the pipes 2021-06-17 11:58:11 -07:00
vmxnet3
wan net: hdlc_ppp: add required space 2021-06-17 12:08:46 -07:00
wireguard wireguard: allowedips: free empty intermediate nodes when removing single node 2021-06-04 14:25:14 -07:00
wireless wireless-drivers-next patches for v5.14 2021-06-16 12:59:42 -07:00
wwan net: iosm: remove the repeated declaration and comment 2021-06-16 12:18:57 -07:00
xen-netback
bareudp.c
dummy.c
eql.c
geneve.c
gtp.c gtp: Fix a typo 2021-06-01 17:05:04 -07:00
ifb.c ifb: remove leading spaces before tabs 2021-05-20 15:10:57 -07:00
Kconfig net: wwan: Fix WWAN config symbols 2021-06-14 13:17:10 -07:00
LICENSE.SRC
loopback.c
macsec.c
macvlan.c macvlan: Fix a typo 2021-06-01 17:05:04 -07:00
macvtap.c
Makefile
mdio.c
mii.c mii: remove leading spaces before tabs 2021-05-20 15:10:57 -07:00
net_failover.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tap.c
thunderbolt.c
tun.c tun: use DEVICE_ATTR_RO macro 2021-05-19 12:01:44 -07:00
veth.c
virtio_net.c virtio_net: Remove BUG() to avoid machine dead 2021-06-07 13:06:46 -07:00
vrf.c vrf: Fix a typo 2021-06-01 17:05:04 -07:00
vsockmon.c
vxlan.c
xen-netfront.c