linux/include
Jakub Kicinski 4ec9031cbe netdev: add "ops compat locking" helpers
Add helpers to "lock a netdev in a backward-compatible way",
which for ops-locked netdevs will mean take the instance lock.
For drivers which haven't opted into the ops locking we'll take
rtnl_lock.

The scoped foreach is dropping and re-taking the lock for each
device, even if prev and next are both under rtnl_lock.
I hope that's fine since we expect that netdev nl to be mostly
supported by modern drivers, and modern drivers should also
opt into the instance locking.

Note that these helpers are mostly needed for queue related state,
because drivers modify queue config in their ops in a non-atomic
way. Or differently put, queue changes don't have a clear-cut API
like NAPI configuration. Any state that can should just use the
instance lock directly, not the "compat" hacks.

Reviewed-by: Joe Damato <jdamato@fastly.com>
Acked-by: Stanislav Fomichev <sdf@fomichev.me>
Link: https://patch.msgid.link/20250408195956.412733-4-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-04-09 17:01:51 -07:00
..
acpi misc: Constify amba_id table 2025-03-29 18:25:34 -07:00
asm-generic mm: pgtable: remove tlb_remove_page_ptdesc() 2025-04-01 15:17:14 -07:00
clocksource
crypto This update includes the following changes: 2025-03-29 10:01:55 -07:00
cxl cxl for v6.15 2025-04-02 20:04:43 -07:00
drm Rust changes for v6.15 2025-03-30 17:03:26 -07:00
dt-bindings Char/Misc/IIO driver updates for 6.15-rc1 2025-04-01 11:26:08 -07:00
hyperv x86/hyperv: Add comments about hv_vpset and var size hypercall input args 2025-03-21 18:24:22 +00:00
keys
kunit
kvm Merge branch 'kvm-arm64/pmu-fixes' into kvmarm/next 2025-03-19 14:54:52 -07:00
linux net: designate XSK pool pointers in queues as "ops protected" 2025-04-09 17:01:51 -07:00
math-emu
media
memory
misc
net netdev: add "ops compat locking" helpers 2025-04-09 17:01:51 -07:00
pcmcia
ras
rdma
rv
scsi
soc soc: driver updates for 6.15, part 1 2025-03-27 09:05:55 -07:00
sound soundwire updates for 6.15 2025-04-01 12:43:13 -07:00
target
trace NFS client updates for Linux 6.15 2025-04-02 17:06:31 -07:00
uapi io_uring-6.15-20250403 2025-04-03 15:48:58 -07:00
ufs
vdso
video
xen
Kbuild