From patchwork Sat Jun 24 10:30:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 112447 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:994d:0:b0:3d9:f83d:47d9 with SMTP id k13csp6340175vqr; Sat, 24 Jun 2023 04:31:39 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ6vd+b6TLn4UJol+G2tgQ0+C20fv81kwBeB45/p47rG699M5mDAxgYgUwpPrsXHtz5lmKUC X-Received: by 2002:a05:6a20:4288:b0:125:88ae:977a with SMTP id o8-20020a056a20428800b0012588ae977amr4514557pzj.42.1687606299447; Sat, 24 Jun 2023 04:31:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1687606299; cv=none; d=google.com; s=arc-20160816; b=mDxPe5rshy63SZ6qSy/FARwD1Dn5Tc7T8oxP17+4g0oZFtEUp22Teaqhd+d7tRtSkg sHj/Ljq7dPH+dpIe4ZmrdU2P2/dxm7IEPB0ZbwxAmU4/FqdNI3xzlyPDGCO3cNhseWlb 7A0UgtlOHx0MKYbzU+HS2d1AxY/OPn+6+J8+s9PFdtNw4c1f9819fZexje0q5Qu47Fvc me7VY3HXN5l0ryC7nVteAHdA3iZM2WWSEYAe8oXIcZ+c2R3jSJr5WGYcaVbftsop+suD aL3yHvu+6XPw4DUGX7Q34wHQ8cMDBZiGQQc/0waN8THXRPGMDcUoc3JmhmkBLReYyr+9 ZIHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=JTyiW3SMfi4YScZcQQ/Eqsuo4T4lZH34HBQp89fNxMU=; fh=g5y7j50HCusOFRgKNhVWk9U9UI6WIiaHKjQ0jhBEuBM=; b=A/LqPombQ4TqYLUshxZAo40CVSfVvbo0EQgCsuXgFfPG/8/OS6zQVgBzF0Hhg9POZF RNrV58fPB52KTzuIH2GL4MLCQcZpn9BMYKO1Xb75iQuRSGI2KyT7klaQ13AtybO4BiWu m0O6NqWYgKGQ0ewVGY+Vj0/9xpv0ZF5vZlv+J9yQ9zpefajITifsKDe3f1A7Tvs4Um5v CBn+wq3FHikNFo1sEhGFC/FTs54RD01/cyVNHMUtGZYlJaNOhJZrMzc4QFDmRnf4CTab y/kS3IGj4epnRVcXf+WC65d3IJZW0JJ8T37vdxXd/jL2HmCv5hLXxccXni736euo0ELd vnfg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=s736ziZI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id b9-20020a170902d50900b001b3c40cae6dsi1229188plg.342.2023.06.24.04.31.24; Sat, 24 Jun 2023 04:31:39 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=s736ziZI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233082AbjFXKbO (ORCPT + 99 others); Sat, 24 Jun 2023 06:31:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37694 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232879AbjFXKbG (ORCPT ); Sat, 24 Jun 2023 06:31:06 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [159.69.126.157]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1BAE710F5; Sat, 24 Jun 2023 03:31:05 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1687602663; bh=hzizDE0ofd3T5vSSD4XlksVV4PJv55T5z7/2M1lRIzg=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=s736ziZIOYjSRE+ah/C5l268BQPA45kdL1qrax+pxBfF+O7My/Q6C+a14kXoky8vd YD0T5fapsmdqU7/11Y2mxLLX8GEhHfH0afuNV9akfrNn7cs69o9wmwfopXqDBOuSmm 5N0JpQv4GcnWJyxfOmMl/njB2v8Q++EXPaz9O8XA= Date: Sat, 24 Jun 2023 12:30:46 +0200 Subject: [PATCH 1/2] selftests/nolibc: drop test chmod_net MIME-Version: 1.0 Message-Id: <20230624-proc-net-setattr-v1-1-73176812adee@weissschuh.net> References: <20230624-proc-net-setattr-v1-0-73176812adee@weissschuh.net> In-Reply-To: <20230624-proc-net-setattr-v1-0-73176812adee@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, Zhangjin Wu , Arnd Bergmann , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1687602663; l=1385; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=hzizDE0ofd3T5vSSD4XlksVV4PJv55T5z7/2M1lRIzg=; b=DF/vX9Kb4oDrP3HJyxHWbLrQCz+jWOTPWYigChKBgenfVT0teCpk23ZpjtVERScZTkb2ojuco R0JddflQm3cANkMb6S0BW1K7oDY/9Vp863E3rP4pbXqXGkRt2TgfmL1 X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1769583463196333972?= X-GMAIL-MSGID: =?utf-8?q?1769583463196333972?= The test relies on /proc/$PID/net to allow chmod() operations. It is the only file or directory in /proc/$PID/ to allow this and a bug. That bug will be fixed in the next patch in the series and therefore the test would start failing. Link: https://lore.kernel.org/lkml/d0d111ef-edae-4760-83fb-36db84278da1@t-8ch.de/ Signed-off-by: Thomas Weißschuh --- tools/testing/selftests/nolibc/nolibc-test.c | 1 - 1 file changed, 1 deletion(-) diff --git a/tools/testing/selftests/nolibc/nolibc-test.c b/tools/testing/selftests/nolibc/nolibc-test.c index 21bacc928bf7..7e649814a241 100644 --- a/tools/testing/selftests/nolibc/nolibc-test.c +++ b/tools/testing/selftests/nolibc/nolibc-test.c @@ -512,7 +512,6 @@ int run_syscall(int min, int max) CASE_TEST(chdir_root); EXPECT_SYSZR(1, chdir("/")); break; CASE_TEST(chdir_dot); EXPECT_SYSZR(1, chdir(".")); break; CASE_TEST(chdir_blah); EXPECT_SYSER(1, chdir("/blah"), -1, ENOENT); break; - CASE_TEST(chmod_net); EXPECT_SYSZR(proc, chmod("/proc/self/net", 0555)); break; CASE_TEST(chmod_self); EXPECT_SYSER(proc, chmod("/proc/self", 0555), -1, EPERM); break; CASE_TEST(chown_self); EXPECT_SYSER(proc, chown("/proc/self", 0, 0), -1, EPERM); break; CASE_TEST(chroot_root); EXPECT_SYSZR(euid0, chroot("/")); break; From patchwork Sat Jun 24 10:30:47 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Patchwork-Id: 112445 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:994d:0:b0:3d9:f83d:47d9 with SMTP id k13csp6340049vqr; Sat, 24 Jun 2023 04:31:27 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ4bcGB5IvuYGJpiHPbZRhbBN2NF5WPlAjFvjmAas4egm9TmjSteK3E6JqBwTKjcpMXUnz4O X-Received: by 2002:a05:6a20:258c:b0:123:6bd8:90d5 with SMTP id k12-20020a056a20258c00b001236bd890d5mr8202217pzd.36.1687606287281; Sat, 24 Jun 2023 04:31:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1687606287; cv=none; d=google.com; s=arc-20160816; b=zflv7HymcRhzmdBReqw7LT+EnoIoyALlD96n1NaDbHhfL7VsK0RNUsHOYX+6jZeN2e aI8ZKZU5UsiaeMsNduBzQc2N/gHEE3eCym7jhVtwy6PCdQ5fbYSN6nvIJZ6PKX2IRFsi 1V7/tzJ2rQoOHCWGtGazC8JpIsGlwyfWkfDYbGBzxC8dasbm3TSQmWsAufhlYxSHpte0 AAXtzGXYG0dyYa+nzeV+wgPnNYZvvVgLglYsS3rg98xH3fTYU7AwU/Q4Tce2Bn9NEpqo 8J0XrH2JoHzHP7cLQhNHDmlYyJmR7+idqShvHd2l5YV8hWaY5Xmdjx8+s8Vo0Kp1hiyw htsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:in-reply-to:references:message-id :content-transfer-encoding:mime-version:subject:date:dkim-signature :from; bh=7kesrMtWuc7lW5uxQ6MtNAQSv1EsHW4rM9QC9mSHr6k=; fh=g5y7j50HCusOFRgKNhVWk9U9UI6WIiaHKjQ0jhBEuBM=; b=us38pOgG4YFaX81C7CtpSkNZBhWH9XYzxmmLA5CAcSps5gxvwBokNCY7Ed8PY9CT6z d9wmx6T5g5QsSf311D6sjPGWJ0X+TuQmua10Z0lPOhg2++WuMYHZqLL0dpE840zX0XgZ xMzAWhrwyf2EpqmfT1W0opSWA6nz59XudcAZKO14qCW2sRaWyr5a1eHWz5f9SHMfOcxb YNTtlhQJQqTyAp4YmWrmUAylO7yKx/XKLS4P7lYKrif0qKwYiThdIhbfadLwJ0IJGoOz 3+cktewMO36QeZs2whv311ZZwEbwUSp3A/xOGFv0NP3Gy42OyiDwGs4S19JQJtDcYFci 43CA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=PLpwolsw; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q20-20020a170902f35400b001b3d4af4457si1072602ple.248.2023.06.24.04.31.04; Sat, 24 Jun 2023 04:31:27 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@weissschuh.net header.s=mail header.b=PLpwolsw; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233122AbjFXKbQ (ORCPT + 99 others); Sat, 24 Jun 2023 06:31:16 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37698 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232881AbjFXKbH (ORCPT ); Sat, 24 Jun 2023 06:31:07 -0400 Received: from todd.t-8ch.de (todd.t-8ch.de [IPv6:2a01:4f8:c010:41de::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C71F51BC1; Sat, 24 Jun 2023 03:31:05 -0700 (PDT) From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=weissschuh.net; s=mail; t=1687602663; bh=Hv07IQfpUi17QmNQC9s2OoEvXVUFS7E+TFWplvGmRyw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=PLpwolsw7ZlHoPEmIDUplUBmlSCa8ZaqedGFxQZIe0KHkvGBuIEYCQ8fghPvWEHzT SKEHwbl8Fn4kDf3E4tFrHvu9hHBDkBN4yeBxd0MteqcfvTu6IpSN0ofP8O6i0eeDPm ILi84B1HpjuS8Gb3Jcx1a0ZocYvInkSZ5kH1WKmI= Date: Sat, 24 Jun 2023 12:30:47 +0200 Subject: [PATCH 2/2] proc: use generic setattr() for /proc/$PID/net MIME-Version: 1.0 Message-Id: <20230624-proc-net-setattr-v1-2-73176812adee@weissschuh.net> References: <20230624-proc-net-setattr-v1-0-73176812adee@weissschuh.net> In-Reply-To: <20230624-proc-net-setattr-v1-0-73176812adee@weissschuh.net> To: Willy Tarreau , Shuah Khan Cc: linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, Zhangjin Wu , Arnd Bergmann , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=ed25519-sha256; t=1687602663; l=1087; i=linux@weissschuh.net; s=20221212; h=from:subject:message-id; bh=Hv07IQfpUi17QmNQC9s2OoEvXVUFS7E+TFWplvGmRyw=; b=sydRcATQix4hEhnx962ZvNEbCLjg3XbDnJu/cS4rm0AFbOauHU1aZOpDDZuLyUmH8xsoEiR6s ZKxXc2ZQni9DLO1vq0PQMim7IYCgXab/zowgtqGT8vwCFxon9fdZPdW X-Developer-Key: i=linux@weissschuh.net; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1769583449985749492?= X-GMAIL-MSGID: =?utf-8?q?1769583449985749492?= All other files in /proc/$PID/ use proc_setattr(). Not using it allows the usage of chmod() on /proc/$PID/net, even on other processes owned by the same user. The same would probably also be true for other attributes to be changed. As this technically represents an ABI change it is not marked for stable so any unlikely regressions are caught during a full release cycle. Fixes: e9720acd728a ("[NET]: Make /proc/net a symlink on /proc/self/net (v3)") Signed-off-by: Thomas Weißschuh --- fs/proc/proc_net.c | 1 + 1 file changed, 1 insertion(+) diff --git a/fs/proc/proc_net.c b/fs/proc/proc_net.c index a0c0419872e3..78f9e6b469c0 100644 --- a/fs/proc/proc_net.c +++ b/fs/proc/proc_net.c @@ -321,6 +321,7 @@ static int proc_tgid_net_getattr(struct mnt_idmap *idmap, const struct inode_operations proc_net_inode_operations = { .lookup = proc_tgid_net_lookup, .getattr = proc_tgid_net_getattr, + .setattr = proc_setattr, }; static int proc_tgid_net_readdir(struct file *file, struct dir_context *ctx)