From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id EB381C02180 for ; Wed, 15 Jan 2025 11:14:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 836DD6B0088; Wed, 15 Jan 2025 06:14:15 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7E6E56B0089; Wed, 15 Jan 2025 06:14:15 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 68750280001; Wed, 15 Jan 2025 06:14:15 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 44F156B0088 for ; Wed, 15 Jan 2025 06:14:15 -0500 (EST) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id DC791C09CE for ; Wed, 15 Jan 2025 11:14:14 +0000 (UTC) X-FDA: 83009427228.24.CB56616 Received: from flow-a3-smtp.messagingengine.com (flow-a3-smtp.messagingengine.com [103.168.172.138]) by imf15.hostedemail.com (Postfix) with ESMTP id B44D4A000E for ; Wed, 15 Jan 2025 11:14:12 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=coelacanthus.name header.s=fm3 header.b="N+/sHNII"; dkim=pass header.d=messagingengine.com header.s=fm2 header.b=F0fAlafw; dmarc=pass (policy=quarantine) header.from=coelacanthus.name; spf=pass (imf15.hostedemail.com: domain of uwu@coelacanthus.name designates 103.168.172.138 as permitted sender) smtp.mailfrom=uwu@coelacanthus.name ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1736939652; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=w3CMkxf3HW7o25usDv8iCcrO7cdY52Vx1FFiviBkZRQ=; b=YGNVJNH7t48Y1w8rvRVXvRQ/4t+CDGEkmw4RUuwNgC2qyckNLhRmhN6Q5vajd1FaDvluul rM0oN6jVm5Z7NgcHMNjYkxVuQ7tntYC162f33JO/x1Jh9oatMpbfFpnX3zr9IndLgJ9S6k 8HJD1Dwgzy31+QiLOyEdKQ/vJe/1sYc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1736939652; a=rsa-sha256; cv=none; b=4taXW3+H7Pbo4CzFY6J2klrcK9Mwqbg3DNq0FKPxlbCGZQDU8OfRAkvoqMnCUaJGBO7C3R qJz4Q4TDu+WRLaOE/74HN+qIUZncc0DxJonNPw6cJUhDEUEZHme3g1e7tCTmJ/sMp/jsVD XO83MRuYffFdUu/jyFzghpFcihhC6iU= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=coelacanthus.name header.s=fm3 header.b="N+/sHNII"; dkim=pass header.d=messagingengine.com header.s=fm2 header.b=F0fAlafw; dmarc=pass (policy=quarantine) header.from=coelacanthus.name; spf=pass (imf15.hostedemail.com: domain of uwu@coelacanthus.name designates 103.168.172.138 as permitted sender) smtp.mailfrom=uwu@coelacanthus.name Received: from phl-compute-02.internal (phl-compute-02.phl.internal [10.202.2.42]) by mailflow.phl.internal (Postfix) with ESMTP id EA50D200D70; Wed, 15 Jan 2025 06:14:11 -0500 (EST) Received: from phl-mailfrontend-01 ([10.202.2.162]) by phl-compute-02.internal (MEProxy); Wed, 15 Jan 2025 06:14:11 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= coelacanthus.name; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:from:from:in-reply-to :message-id:mime-version:reply-to:subject:subject:to:to; s=fm3; t=1736939651; x=1736946851; bh=w3CMkxf3HW7o25usDv8iCcrO7cdY52Vx 1FFiviBkZRQ=; b=N+/sHNIIrS8nSIf+52FMx0My/H3AAFSPC0m6ppYXOskGMFdl 6YKsikchZ3GKPtyQB33bPmhYNbRyxCRIc4ua2rw03licQLWZfabMleeig+eqIkSZ 3FT7aoTyN5+s+064ofTjdPWzBopBzKnM6pkVMRnCpfoNm8m/3SxZNEomC0DIq0Ks eO+S1QiJKMV8P3VNDXG+P8leyRTtheQ1kD8zxx5zt+ClJ6uyIbpKL9jSMWX+SxF2 2xr99ymYbekIE8ADhNF1f2ljyP3yzPDjbU+zQbHblueMdajKz3p1sj9wzBiY4BNl wGNYTynOHO3SaGgkbQ+CkCM+tPChObme0AIOuA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:message-id:mime-version:reply-to:subject :subject:to:to:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm2; t=1736939651; x=1736946851; bh=w3CMkxf3HW7o25usDv8iCcrO7cdY 52Vx1FFiviBkZRQ=; b=F0fAlafwK51/557AY5k9uOSZP6Yo6R/Hqt26AeqSCXkL OKGgqNguN54483ncg2ZAVf/6j0HkZ9uBp9wQchlWhkNNz1CVahd/p51V8UrWmrQy vEkOgq8Wp7B8WeC9BxVcdDEmN80bA5f2Gyi9IsODc+FhO51tA04mMcDOSOphKVrw 82hqi5XnQfN1rWc+XclRW4vKArtjmPfcTqaIKj49aGp1zC6YgEKgfHr7e/KAGeuG BbzxSo71GQDj2eKUNWXktthr2FzEASjZcyO+w+VUndKCPwtHkeHuhN1n48U6+uYs HtjiDcU0VHNBtJYgjY/9o0aEIgnhvAw5wcGE6Eku6w== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefuddrudehlecutefuodetggdotefrodftvfcurf hrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdpuffrtefo kffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsuc dlqddutddtmdenucfjughrpefhufffkfggtgfgvfevofesthejredtredtjeenucfhrhho mhepvegvlhgvshhtvgcunfhiuhcuoehufihusegtohgvlhgrtggrnhhthhhushdrnhgrmh gvqeenucggtffrrghtthgvrhhnpeduveelffdvkeekkedvgeeugfdutdekteeuudfhleff hffhffeihfetjefhleehueenucffohhmrghinhepkhgvrhhnvghlrdhorhhgnecuvehluh hsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepuhifuhestghovghl rggtrghnthhhuhhsrdhnrghmvgdpnhgspghrtghpthhtohepvdejpdhmohguvgepshhmth hpohhuthdprhgtphhtthhopehlihhnuhigqdhkvghrnhgvlhesvhhgvghrrdhkvghrnhgv lhdrohhrghdprhgtphhtthhopehlughvsehsthhrrggtvgdrihhopdhrtghpthhtoheptg hhrghrlhhivgesrhhivhhoshhinhgtrdgtohhmpdhrtghpthhtohepsghjohhrnheskhgv rhhnvghlrdhorhhgpdhrtghpthhtohepshhhuhgrhheskhgvrhhnvghlrdhorhhgpdhrtg hpthhtoheprhgvseifiehriidrnhgvthdprhgtphhtthhopegvsghivgguvghrmhesgihm ihhsshhiohhnrdgtohhmpdhrtghpthhtohepiihhohhuqhhurghnsehishgtrghsrdgrtg drtghnpdhrtghpthhtoheplhhinhhugidqkhhsvghlfhhtvghsthesvhhgvghrrdhkvghr nhgvlhdrohhrgh X-ME-Proxy: Feedback-ID: i95c648bc:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 15 Jan 2025 06:14:09 -0500 (EST) From: Celeste Liu Subject: [PATCH v6 0/3] riscv/ptrace: add new regset to access original a0 register Date: Wed, 15 Jan 2025 19:13:26 +0800 Message-Id: <20250115-riscv-new-regset-v6-0-59bfddd33525@coelacanthus.name> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIAFaYh2cC/4XPTU7DMBAF4KtUXmNkj38as+IeiIU9njaWwKnsY EBV7o5TCamLBJZvpPnmzZVVKokqezpcWaGWappyD/bhwHD0+Uw8xZ4ZCNAShOQlVWw80ycvdK4 082jABWfARxFZX7sUOqWvG/ny2vOY6jyV79uFJtfpH1iTXHIcFJrBB8RjeMaJ3jz6PI8f9TH7d 2Ir2uAeUhsQcMGjOkY/oMDg7R6k7iCwG5Dq0MkEZ7U1A9jdRvo/SHdIa2c9uCi02m1kfiEjpDQ bkFlfE2QJhZIe1Ba0LMsPOnmfftwBAAA= X-Change-ID: 20241201-riscv-new-regset-d529b952ad0d To: Oleg Nesterov , Paul Walmsley , Palmer Dabbelt , Eric Biederman , Kees Cook , Shuah Khan , Albert Ou Cc: Alexandre Ghiti , "Dmitry V. Levin" , Andrea Bolognani , =?utf-8?q?Bj=C3=B6rn_T=C3=B6pel?= , Thomas Gleixner , Ron Economos , Charlie Jenkins , Andrew Jones , Quan Zhou , Felix Yan , Ruizhe Pan , Guo Ren , Yao Zi , linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, Celeste Liu , stable@vger.kernel.org, =?utf-8?q?Bj=C3=B6rn_T=C3=B6pel?= X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=openpgp-sha256; l=2363; i=uwu@coelacanthus.name; h=from:subject:message-id; bh=FtOeBaQupavKu+tI2Y/VxaBtsP4LjSP/8QVEtgdjb88=; b=owJ4nJvAy8zAJeafov85RWVtBeNptSSG9PYZxUdeN+tX5ojqBk9PyJa83qFn/Lx5steJU3ppZ h8/bPjx+nVHKQuDGBeDrJgiS14Jy0/OS2e793Zs74KZw8oEMoSBi1MAJnJvLSPD039fZ8xTXxRZ /HbyAl/BaZeXvp3usq5ffWFb0Y779x/KiDEyzF5xyyKdf0pxVnmJ5KrUxEP7FpXvaFNqrw8Q+Ln s6UcWfgAbTU2B X-Developer-Key: i=uwu@coelacanthus.name; a=openpgp; fpr=892EBC7DC392DFF9C9C03F1D15F4180E73787863 X-Stat-Signature: ibea4mdmhzdiiguhcn56xxdpwi5d3d48 X-Rspamd-Queue-Id: B44D4A000E X-Rspam-User: X-Rspamd-Server: rspam01 X-HE-Tag: 1736939652-95367 X-HE-Meta: U2FsdGVkX18XOAsjpXHa8qlQWKaCNrhs8sf6SjX1DRj54MtNjYeEQj4yFtxDFOkqfPhil401r6V/1QE1FY85AvLv04hXzDzhKL53Ptgf1kNlgxr9BiHswEiDWQMUfnjUYhvehdi8+KcTVE6Bx/Wba4cwVbQIkjzN5RVF7EHGV0I4xFbfRUohY62H7yxHHNUJ5JYsm5Nl3MaNUcEq1sf4Lrrkqj3JA5Kzfp8UZFljaMQ2rMdDUCZAt/xjaOThBtXMnlXdGzQJQz7n8p9eFxHRPWgUlS6+ddO13qs0mXskD9PjzUr1VeY6m6Xyoa6TG5lZZU9tiCDuTHU84cIcl7tV181Zwvh1MsC3byAuGgARULGw3PxfcwhAN6rVELZOotA5VVXZP6CHAPR1wN+FjkG9BPz+i9xgyZC0tSM1u4ReicDuekf0WDW3T5I5sBnvSP9dfgheORRegR8a0+v3HlG0Tp4McioLCEHQb7MekvFSG50HcbfQXHnmbIrJ/OWVmFAPkC6Qwx4jAt0Cx2M/2ULl6caJtHzc/cYpEVDNSkJe6EyCBpmKzky+/7K6uN0L+ljHPYJwnfKzv+V3NKglcOWB2/nghQaZlRsPPahD8xxk7FTle0Xd4KP2ID5ew1Qzw53aVimxoVzkT5qWal1TC0Rfcafov4A/gRug/NYkneeakmLFCrNoriW6FxHbPt9sNKSKLf1B5Fm9GYo8pDJm2Ei3lP/T9JINBiAHt0dVQRBTfMH8ZhXFH+XLYa00fMKmjYrAQGkMBeJFdw9N8621qW7uRzPcFNCwKpNL6Z5NeKqcACTcMQVibivOdc9tgvnfeF5xulVoEApaP3EJd7VNUTomObdPksn0jioN4mDhimPrSyHiuOZTEp6CxsZv9qqHPmFCsGq2tdhB9/Ii1EYtP0Sn4BZO0AZPe/LxlY1VCQH0GR3aMUK7rIt6lOthDvJOH83TQXRZwhKJl5sFDDizcoZ AtfWsnOH Qgpi2Gvza8eNQRhH3fhrCBOvnq4AAz+nb/yK99CJfCyoF62RMsq398ZmKFmlljIY5xtQ1aF6JQ8Z0hiUfGG+RRJ0PNn9n76gTTvYqd4m7QeaMYTAB8y/M/Y7qjPUbDi8HLDYhYIM0FvVgMMf6CIFCwMyV0WxjkrJyPW/csRIqUn9PHjRtO/fE345uce4jPFHmKOEb+rcf2C1JIvJ4yCbuPnnhoc9D1R6Ywr7t1e6P1sDMUgxAIOOQii9FvZNC/OceFoegRDFxKxoAjyiq+O30s+4OgZUZFM2zhpt78W34n1lbJ7cNrj0WnZ2Mcl4+zGWCWYPqGjVK2ohjHfh73GU0WGjNRv56jttWKeOh6p2d05wr68cwcYYLslyogDbyFywg/lMErRHFDToDDGMna+z1pcyuHwKzqzZy58BJ3E45DmRvS8BF7c0LVO4xydXHc9YAObciWqPghplFHI8WLBoXlD2ymfx0snaWzO7n X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: The orig_a0 is missing in struct user_regs_struct of riscv, and there is no way to add it without breaking UAPI. (See Link tag below) Like NT_ARM_SYSTEM_CALL do, we add a new regset name NT_RISCV_ORIG_A0 to access original a0 register from userspace via ptrace API. Link: https://lore.kernel.org/all/59505464-c84a-403d-972f-d4b2055eeaac@gmail.com/ Signed-off-by: Celeste Liu --- Changes in v6: - Fix obsolute comment. - Copy include/linux/stddef.h to tools/include to use offsetofend in selftests. - Link to v5: https://lore.kernel.org/r/20250115-riscv-new-regset-v5-0-d0e6ec031a23@coelacanthus.name Changes in v5: - Fix wrong usage in selftests. - Link to v4: https://lore.kernel.org/r/20241226-riscv-new-regset-v4-0-4496a29d0436@coelacanthus.name Changes in v4: - Fix a copy paste error in selftest. (Forget to commit...) - Link to v3: https://lore.kernel.org/r/20241226-riscv-new-regset-v3-0-f5b96465826b@coelacanthus.name Changes in v3: - Use return 0 directly for readability. - Fix test for modify a0. - Add Fixes: tag - Remove useless Cc: stable. - Selftest will check both a0 and orig_a0, but depends on the correctness of PTRACE_GET_SYSCALL_INFO. - Link to v2: https://lore.kernel.org/r/20241203-riscv-new-regset-v2-0-d37da8c0cba6@coelacanthus.name Changes in v2: - Fix integer width. - Add selftest. - Link to v1: https://lore.kernel.org/r/20241201-riscv-new-regset-v1-1-c83c58abcc7b@coelacanthus.name --- Celeste Liu (3): riscv/ptrace: add new regset to access original a0 register tools: copy include/linux/stddef.h to tools/include riscv: selftests: Add a ptrace test to verify a0 and orig_a0 access arch/riscv/kernel/ptrace.c | 32 +++++ include/uapi/linux/elf.h | 1 + tools/include/linux/stddef.h | 85 ++++++++++++ tools/include/uapi/linux/stddef.h | 6 +- tools/testing/selftests/riscv/abi/.gitignore | 1 + tools/testing/selftests/riscv/abi/Makefile | 6 +- tools/testing/selftests/riscv/abi/ptrace.c | 193 +++++++++++++++++++++++++++ 7 files changed, 319 insertions(+), 5 deletions(-) --- base-commit: 0e287d31b62bb53ad81d5e59778384a40f8b6f56 change-id: 20241201-riscv-new-regset-d529b952ad0d Best regards, -- Celeste Liu