linux/net
Stanislav Fomichev cae03e5bdd net: hold netdev instance lock during queue operations
For the drivers that use queue management API, switch to the mode where
core stack holds the netdev instance lock. This affects the following
drivers:
- bnxt
- gve
- netdevsim

Originally I locked only start/stop, but switched to holding the
lock over all iterations to make them look atomic to the device
(feels like it should be easier to reason about).

Reviewed-by: Eric Dumazet <edumazet@google.com>
Cc: Saeed Mahameed <saeed@kernel.org>
Signed-off-by: Stanislav Fomichev <sdf@fomichev.me>
Link: https://patch.msgid.link/20250305163732.2766420-6-sdf@fomichev.me
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-03-06 12:59:43 -08:00
..
6lowpan
9p
802 net: 802: LLC+SNAP OID:PID lookup on start of skb data 2025-01-04 08:06:24 -08:00
8021q net: Use link/peer netns in newlink() of rtnl_link_ops 2025-02-21 15:28:02 -08:00
appletalk net: appletalk: Drop aarp_send_probe_phase1() 2025-01-20 10:08:19 +00:00
atm
ax25 ax25: Fix refcount leak caused by setting SO_BINDTODEVICE sockopt 2025-02-06 17:02:40 -08:00
batman-adv net: rename netns_local to netns_immutable 2025-03-04 12:44:48 +01:00
bluetooth Bluetooth: L2CAP: Fix L2CAP_ECRED_CONN_RSP response 2025-02-20 13:25:11 -05:00
bpf bpf, test_run: Fix use-after-free issue in eth_skb_pkt_type() 2025-01-29 08:51:51 -08:00
bridge net: rename netns_local to netns_immutable 2025-03-04 12:44:48 +01:00
caif rtnetlink: Pack newlink() params into struct 2025-02-21 15:28:02 -08:00
can net: initialize mark in sockcm_init 2025-02-18 18:27:19 -08:00
ceph ceph: allocate sparse_ext map only for sparse reads 2024-12-16 23:25:44 +01:00
core net: hold netdev instance lock during queue operations 2025-03-06 12:59:43 -08:00
dcb
dccp inet: consolidate inet_csk_clone_lock() 2025-02-14 13:40:33 -08:00
devlink devlink: Improve the port attributes description 2025-01-02 17:10:57 -08:00
dns_resolver
dsa bpf: Add BPF_SOCK_OPS_TSTAMP_SND_HW_CB callback 2025-02-20 14:29:36 -08:00
ethernet
ethtool Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-02-27 10:20:58 -08:00
handshake module: Convert symbol namespace to string literal 2024-12-02 11:34:44 -08:00
hsr net: rename netns_local to netns_immutable 2025-03-04 12:44:48 +01:00
ieee802154 net: rename netns_local to netns_immutable 2025-03-04 12:44:48 +01:00
ife
ipv4 inet: fix lwtunnel_valid_encap_type() lock imbalance 2025-03-05 19:16:56 -08:00
ipv6 inet: fix lwtunnel_valid_encap_type() lock imbalance 2025-03-05 19:16:56 -08:00
iucv
kcm
key
l2tp ppp: use IFF_NO_QUEUE in virtual interfaces 2025-03-04 17:11:17 -08:00
l3mdev
lapb
llc sysctl net: Remove macro checks for CONFIG_SYSCTL 2025-01-20 12:01:34 -08:00
mac80211 First 6.15 material: 2025-03-04 08:50:42 -08:00
mac802154 Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-01-09 16:11:47 -08:00
mctp Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2024-12-19 11:35:07 -08:00
mpls
mptcp mptcp: pm: exit early with ADD_ADDR echo if possible 2025-03-04 16:57:38 -08:00
ncsi net/ncsi: use dev_set_mac_address() for Get MC MAC Address handling 2025-01-27 09:20:07 +00:00
netfilter net: hold netdev instance lock during nft ndo_setup_tc 2025-03-06 12:59:43 -08:00
netlabel net: corrections for security_secid_to_secctx returns 2025-01-04 22:11:22 -05:00
netlink Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-02-27 10:20:58 -08:00
netrom netrom: check buffer length before accessing it 2024-12-23 10:04:55 -08:00
nfc nfc: hci: Remove unused nfc_llc_unregister 2025-02-19 19:04:26 -08:00
nsh
openvswitch net: rename netns_local to netns_immutable 2025-03-04 12:44:48 +01:00
packet net: initialize mark in sockcm_init 2025-02-18 18:27:19 -08:00
phonet
psample psample: adjust size if rate_as_probability is set 2024-12-18 19:23:04 -08:00
qrtr
rds Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-02-27 10:20:58 -08:00
rfkill net: rfkill: gpio: allow booting in blocked state 2025-02-11 11:55:55 +01:00
rose net: rose: lock the socket in rose_bind() 2025-02-04 14:03:58 -08:00
rxrpc rxrpc: Fix locking issues with the peer record hash 2025-02-21 15:06:29 -08:00
sched net: hold netdev instance lock during qdisc ndo_setup_tc 2025-03-06 12:59:43 -08:00
sctp net: use sock_kmemdup for ip_options 2025-03-03 17:16:34 -08:00
shaper net: add netdev_lock() / netdev_unlock() helpers 2025-01-15 19:13:33 -08:00
smc net: better track kernel sockets lifetime 2025-02-21 16:00:58 -08:00
strparser strparser: Add read_sock callback 2025-01-29 13:32:08 -08:00
sunrpc Including fixes from bluetooth. We didn't get netfilter or wireless PRs 2025-02-27 09:32:42 -08:00
switchdev
tipc tipc: Reduce scope for the variable “fdefq” in tipc_link_tnl_prepare() 2025-03-04 17:19:49 -08:00
tls tls: skip setting sk_write_space on rekey 2025-01-10 18:34:45 -08:00
unix Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2025-02-27 10:20:58 -08:00
vmw_vsock vsock/bpf: Warn on socket without transport 2025-02-18 12:00:01 +01:00
wireless First 6.15 material: 2025-03-04 08:50:42 -08:00
x25
xdp bpf-next-for-netdev 2025-02-21 15:59:47 -08:00
xfrm net: xfrm: Use link netns in newlink() of rtnl_link_ops 2025-02-21 15:28:03 -08:00
compat.c
devres.c
Kconfig
Kconfig.debug
Makefile
socket.c net: skb: free up one bit in tx_flags 2025-02-26 19:01:08 -08:00
sysctl_net.c