From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f170.google.com (mail-pl1-f170.google.com [209.85.214.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B367E360EDE for ; Mon, 1 Jun 2026 19:24:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.170 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780341881; cv=none; b=B7/ZQ16ZPTxDupMQKiS0qPl934GU5bmSKqL/Pp3g+OphrV9PZlhxAiPnizx3ewE5dVu64xcyy2AbkDU2PRiyJQSUItIpw1I5C2i+BqZUCRQJ5oq1o9PmZ7IAviPoav7OhYMlrhJVOkbhKJKM9zhgHrwYLu3JDUV+RJxjtim9OMk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780341881; c=relaxed/simple; bh=rkHcjsPkRR9nNSHxR46h2y9fTpo1dvARrrbdvhIHj/M=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=O3Jx5UrO9QQ8bkgGByTll2ZL7jHrv9da0SiuASyLSEph1dlIjPyefdjyHYHc1TWe6SGq/KHR+sjlLndt9FJYToVy5OiE1oOkmi4qESCoLQ9DAu90s5wkba9f767AU9NyGen+rl4lGGRHggJt4W2gYErq7B3mgE9jox5SSS6tSag= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Ky3hS9Aq; arc=none smtp.client-ip=209.85.214.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Ky3hS9Aq" Received: by mail-pl1-f170.google.com with SMTP id d9443c01a7336-2c0c3315c5dso17666315ad.3 for ; Mon, 01 Jun 2026 12:24:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1780341878; x=1780946678; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=p8Jk1ivLmwr3VP3ike29F6VRWUYvoG1CiSF1zOqSE6U=; b=Ky3hS9AqHXRSJRKrQavLc3UCZYwr7npEDXG78lJeKbVx8lKsMxgYDvOwjHHukeehgo atSxmGiMrF71OcGGX32O6CAIlV9eo5Yk+lbACPC70YvKqcO3Rqdvhh3oKoaeYUmu7jbE V4Q6AEMfpp9ac0lN46yEntowvNO9NM9rJJGIY75VWjNn6lvjI+RtKQIE5wOfMOzkhegh HPxQN6/+KLkA/ABBiPEecPTnDGsaMRsJZMlJtwCr+pM8LiXTjD1xdXBECB+++LiwBpbA neFlcoSwXK/0hcPuoY9BZJDKUSoXW/g1T9/wiBECs4LbnlqW3MF0Qd30SYZ2XoQOOx8P SL6g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780341878; x=1780946678; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=p8Jk1ivLmwr3VP3ike29F6VRWUYvoG1CiSF1zOqSE6U=; b=p8NG0CU/9emRR+C4tDZZbe8VZroWwmR2WDpaJKQoP4tD/BTVlVUeB4m4MyfkROaOsT U46WW4RncwLwY7kZwEWGSIolj6Wy4/nVPwdcEo6WvlyB6eBeNIm+sbECUNhwMhnbf2kx 8VgA7SdfNo6AGMFazeSmy4oSNpZXmcBa/b2ljJMPvu8vzhwiXOLBXl4mBLLHoRxpdxDy Y45xG3VGHCjTwp8GRYao+H81BKV2OVApeQLtqHHwM3QGfVX9NO0+KkL9vAdm7DR126HM bI9YM50A/JfzRhUDeimin8FVYMS6ZPPgyQ6T75FIiYYM6ihXL6AlFMvH9eLUaU9xoLD5 JSKg== X-Forwarded-Encrypted: i=1; AFNElJ9O5m4wZGBodCm7NCbsWTeQ/AYyrn2l7azZzUVWU5/aTfBEynUuoKMbTG6pSYkpY6Sb0uXquE9dWYufMyo=@vger.kernel.org X-Gm-Message-State: AOJu0Yz3Rb8QBX0S3I3ZwPBBTFZVIOapOAxWey+gsMHmfoBhFe5tOr9H Q0x5SonhTCwLlHlRN66yuS0EnJMoEkS5IE44pDKEBpmzK9SB5t7OodLe X-Gm-Gg: Acq92OFDSX631StdhDX6OQ8/+JgO7DTlT67WLbfE6Wq6e9mkR75k05qncxE7LQf8NIx NmyJOISxd3K8dhhIfXnRMCbMw+n9pBCWgeeyK+mBbqch25X7bgllkxMAtbi8vNEqFMkyf7PyCfd xfOGx7dbBPbguLcBzEThcZkAMkaJnNx1xQeR5G1vmie85vwTxtZCxEvg61jXOBBfSq3pGUjcKP8 Ft70d1rHcyACtqkyW9viERfGK2hRt6a+jK+dxeNO/vkKmVqVsAbZR7eF2daPfzYL8r0I29AvDXZ RqmQ4AWJDOXSnowTkKdLSLQMMulLnB/liv6Za0Qy31ztqsdHM8zGv9DyeiNkSs5x/sV1oiApL48 WEgdfeyoYSmREKXIgndshKz1UO/By8RcgDA2JtHe/Me614cw4yRQuNp6KMXNQ06Bgn1ovCviJ/z 2X9NPYJC26TGqfvonYk6cpOSXZzemUuQ== X-Received: by 2002:a17:903:8c8:b0:2bc:eea4:83c3 with SMTP id d9443c01a7336-2bf368334b0mr136497405ad.25.1780341877857; Mon, 01 Jun 2026 12:24:37 -0700 (PDT) Received: from localhost ([2a03:2880:ff:41::]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2bf23a2dbfbsm113520295ad.37.2026.06.01.12.24.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 01 Jun 2026 12:24:37 -0700 (PDT) From: Bobby Eshleman Date: Mon, 01 Jun 2026 12:24:27 -0700 Subject: [PATCH net-next 1/2] net: devmem: allow bind-rx from non-init user namespaces Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260601-nl-prov-v1-1-9bc57d6ca3f3@meta.com> References: <20260601-nl-prov-v1-0-9bc57d6ca3f3@meta.com> In-Reply-To: <20260601-nl-prov-v1-0-9bc57d6ca3f3@meta.com> To: Donald Hunter , Jakub Kicinski , "David S. Miller" , Eric Dumazet , Paolo Abeni , Simon Horman , Andrew Lunn , Shuah Khan Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, Stanislav Fomichev , Mina Almasry , Bobby Eshleman X-Mailer: b4 0.14.3 From: Bobby Eshleman NETDEV_CMD_BIND_RX is currently GENL_ADMIN_PERM, which checks CAP_NET_ADMIN against init userns. With recent container/netkit/ns support for devmem, other userns/netns use cases come online and require bind-rx to allow CAP_NET_ADMIN in non-init user ns as well. Switch the flag to GENL_UNS_ADMIN_PERM to allow bind-rx for CAP_NET_ADMIN in the netns's owning userns as well. Signed-off-by: Bobby Eshleman --- Documentation/netlink/specs/netdev.yaml | 2 +- net/core/netdev-genl-gen.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Documentation/netlink/specs/netdev.yaml b/Documentation/netlink/specs/netdev.yaml index a1f4c5a561e9..49862b666d7d 100644 --- a/Documentation/netlink/specs/netdev.yaml +++ b/Documentation/netlink/specs/netdev.yaml @@ -798,7 +798,7 @@ operations: name: bind-rx doc: Bind dmabuf to netdev attribute-set: dmabuf - flags: [admin-perm] + flags: [uns-admin-perm] do: request: attributes: diff --git a/net/core/netdev-genl-gen.c b/net/core/netdev-genl-gen.c index c7e138bfe345..d18c89b5a6c7 100644 --- a/net/core/netdev-genl-gen.c +++ b/net/core/netdev-genl-gen.c @@ -220,7 +220,7 @@ static const struct genl_split_ops netdev_nl_ops[] = { .doit = netdev_nl_bind_rx_doit, .policy = netdev_bind_rx_nl_policy, .maxattr = NETDEV_A_DMABUF_FD, - .flags = GENL_ADMIN_PERM | GENL_CMD_CAP_DO, + .flags = GENL_UNS_ADMIN_PERM | GENL_CMD_CAP_DO, }, { .cmd = NETDEV_CMD_NAPI_SET, -- 2.53.0-Meta