net: move misc netdev_lock flavors to a separate header
authorJakub Kicinski <kuba@kernel.org>
Fri, 7 Mar 2025 18:30:06 +0000 (10:30 -0800)
committerJakub Kicinski <kuba@kernel.org>
Sat, 8 Mar 2025 17:06:50 +0000 (09:06 -0800)
commit8ef890df4031121a94407c84659125cbccd3fdbe
tree3200b186f428a9dd37b0b7e9bd034cf8e32a9f9f
parent9bfc9d65a1dc9ca2d45210ff4227517b460c19af
net: move misc netdev_lock flavors to a separate header

Move the more esoteric helpers for netdev instance lock to
a dedicated header. This avoids growing netdevice.h to infinity
and makes rebuilding the kernel much faster (after touching
the header with the helpers).

The main netdev_lock() / netdev_unlock() functions are used
in static inlines in netdevice.h and will probably be used
most commonly, so keep them in netdevice.h.

Acked-by: Stanislav Fomichev <sdf@fomichev.me>
Link: https://patch.msgid.link/20250307183006.2312761-1-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
51 files changed:
drivers/net/bonding/bond_main.c
drivers/net/dummy.c
drivers/net/ethernet/broadcom/bnxt/bnxt.c
drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c
drivers/net/ethernet/intel/iavf/iavf_main.c
drivers/net/ethernet/microsoft/mana/mana_en.c
drivers/net/geneve.c
drivers/net/hamradio/bpqether.c
drivers/net/hyperv/netvsc_drv.c
drivers/net/ipvlan/ipvlan_main.c
drivers/net/loopback.c
drivers/net/macsec.c
drivers/net/macvlan.c
drivers/net/netdevsim/netdev.c
drivers/net/ppp/ppp_generic.c
drivers/net/team/team_core.c
drivers/net/veth.c
drivers/net/vrf.c
drivers/net/vxlan/vxlan_core.c
include/linux/netdevice.h
include/net/netdev_lock.h [new file with mode: 0644]
kernel/bpf/offload.c
net/8021q/vlan_dev.c
net/bluetooth/6lowpan.c
net/bridge/br_device.c
net/core/dev.c
net/core/dev.h
net/core/dev_api.c
net/core/dev_ioctl.c
net/core/net-sysfs.c
net/core/rtnetlink.c
net/dsa/conduit.c
net/ethtool/cabletest.c
net/ethtool/cmis_fw_update.c
net/ethtool/features.c
net/ethtool/ioctl.c
net/ethtool/module.c
net/ethtool/netlink.c
net/ethtool/phy.c
net/ethtool/rss.c
net/ethtool/tsinfo.c
net/ieee802154/6lowpan/core.c
net/ipv4/ip_tunnel.c
net/ipv6/ip6_gre.c
net/ipv6/ip6_tunnel.c
net/ipv6/ip6_vti.c
net/ipv6/sit.c
net/l2tp/l2tp_eth.c
net/sched/sch_api.c
net/xdp/xsk.c
net/xdp/xsk_buff_pool.c