RDMA/nldev: Check CAP_NET_RAW in user namespace for QP modify
authorParav Pandit <parav@nvidia.com>
Thu, 26 Jun 2025 18:58:11 +0000 (21:58 +0300)
committerLeon Romanovsky <leon@kernel.org>
Wed, 2 Jul 2025 09:11:44 +0000 (05:11 -0400)
commit28ea058a2979f063d4b756c5d82d885fc16f5ca2
tree445896c5447c40553fd6b3a94c8ae4f5e91d26ec
parentbd82467f17e0940c6f6a5396278cda586c9cb6fd
RDMA/nldev: Check CAP_NET_RAW in user namespace for QP modify

Currently, the capability check is done in the default
init_user_ns user namespace. When a process runs in a
non default user namespace, such check fails. Due to this
when a process is running using Podman, it fails to modify
the QP.

Since the RDMA device is a resource within a network namespace,
use the network namespace associated with the RDMA device to
determine its owning user namespace.

Fixes: 0cadb4db79e1 ("RDMA/uverbs: Restrict usage of privileged QKEYs")
Signed-off-by: Parav Pandit <parav@nvidia.com>
Link: https://patch.msgid.link/099eb263622ccdd27014db7e02fec824a3307829.1750963874.git.leon@kernel.org
Signed-off-by: Leon Romanovsky <leon@kernel.org>
drivers/infiniband/core/nldev.c
drivers/infiniband/core/uverbs_cmd.c