diff options
| author | Stanislav Fomichev <[email protected]> | 2025-03-11 14:40:26 +0000 |
|---|---|---|
| committer | Jakub Kicinski <[email protected]> | 2025-03-12 20:32:35 +0000 |
| commit | 1d22d3060b9b1f33da617045480c59c4c0511196 (patch) | |
| tree | b42e6ccff4ac3e7de770512b6f7463680b621bfa /net/core/devmem.c | |
| parent | net: add granular lock for the netdev netlink socket (diff) | |
| download | kernel-1d22d3060b9b1f33da617045480c59c4c0511196.tar.gz kernel-1d22d3060b9b1f33da617045480c59c4c0511196.zip | |
net: drop rtnl_lock for queue_mgmt operations
All drivers that use queue API are already converted to use
netdev instance lock. Move netdev instance lock management to
the netlink layer and drop rtnl_lock.
Signed-off-by: Stanislav Fomichev <[email protected]>
Reviewed-by: Mina Almasry. <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
Diffstat (limited to 'net/core/devmem.c')
| -rw-r--r-- | net/core/devmem.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/core/devmem.c b/net/core/devmem.c index 7c6e0b5b6acb..5c4d79a1bcd8 100644 --- a/net/core/devmem.c +++ b/net/core/devmem.c @@ -25,7 +25,6 @@ /* Device memory support */ -/* Protected by rtnl_lock() */ static DEFINE_XARRAY_FLAGS(net_devmem_dmabuf_bindings, XA_FLAGS_ALLOC1); static const struct memory_provider_ops dmabuf_devmem_ops; @@ -128,9 +127,10 @@ void net_devmem_unbind_dmabuf(struct net_devmem_dmabuf_binding *binding) rxq->mp_params.mp_priv = NULL; rxq->mp_params.mp_ops = NULL; + netdev_lock(binding->dev); rxq_idx = get_netdev_rx_queue_index(rxq); - WARN_ON(netdev_rx_queue_restart(binding->dev, rxq_idx)); + netdev_unlock(binding->dev); } xa_erase(&net_devmem_dmabuf_bindings, binding->id); |
