net: expect instance lock in netdev_queue_get_dma_dev()
authorJakub Kicinski <kuba@kernel.org>
Thu, 6 Aug 2026 22:56:26 +0000 (15:56 -0700)
committerJakub Kicinski <kuba@kernel.org>
Mon, 10 Aug 2026 22:54:42 +0000 (15:54 -0700)
commit92465f46f3c3a92e4758af20d2363b7adc43e1f5
tree6b4095add53c26def245475a4808e83ff74173ce
parentcef51860becd9700217c81732ca1eb1ea6ed6fe1
net: expect instance lock in netdev_queue_get_dma_dev()

netdev_queue_get_dma_dev() uses "compat" locking assert which wants
either the rtnl_lock or netdev instance lock. This is not right,
the callers are taking the instance lock unconditionally. All entry
points for queue config are purely instance locked.

In other words the callers use netdev_get_by_index_lock(), not
netdev_get_by_index_lock_ops_compat(). All the state we will
access is effectively instance lock protected (it's const for
devices which are not ops-locked).

Update the assert to avoid false positive warnings.

Cc: stable@vger.kernel.org
Fixes: b6c5f9454ef34 ("io_uring/zcrx: call netdev_queue_get_dma_dev() under instance lock")
Reported-by: syzbot+a78926bdac2adb52dc0e@syzkaller.appspotmail.com
Reviewed-by: Simon Horman <horms@kernel.org>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://patch.msgid.link/20260806225627.3998672-1-kuba@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/core/netdev_queues.c