From patchwork Wed Feb 26 11:44:40 2025 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: 13992137 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 E7D19C021BF for ; Wed, 26 Feb 2025 11:45:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 03BC1280014; Wed, 26 Feb 2025 06:45:29 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id D7DA6280013; Wed, 26 Feb 2025 06:45:28 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A24E1280014; Wed, 26 Feb 2025 06:45:28 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 62A6328000D for ; Wed, 26 Feb 2025 06:45:28 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 40829A3783 for ; Wed, 26 Feb 2025 11:45:13 +0000 (UTC) X-FDA: 83161914906.11.1E99194 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf22.hostedemail.com (Postfix) with ESMTP id 6E196C0004 for ; Wed, 26 Feb 2025 11:45:11 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b="HG2/OSTT"; dkim=pass header.d=linutronix.de header.s=2020e header.b=nld6xex1; spf=pass (imf22.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570311; a=rsa-sha256; cv=none; b=8A/kfueb2VnXZofThaeGVyXDcFC3xsiEiTbNEoPES4u/wCsgdU8Bo44RLV3VSke5b3khf2 2MBJXVbxbyFaYOUZwHyypRWqCPKwqvbuGX62kPqxjvO7JRLR+Bm8m1XSgJQucr93LTNeie uH4qgMZJwaB+4+Ytgsl+tRxbKigI1cg= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b="HG2/OSTT"; dkim=pass header.d=linutronix.de header.s=2020e header.b=nld6xex1; spf=pass (imf22.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570311; 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:in-reply-to:references:references:dkim-signature; bh=Mc60C8g9Fb1tmdPaCWjP2wsKb3/BHTAaOKy7dD4Q/9Y=; b=7jd19v316HmAlyDPbk+HW+Uu69uhBYkkqRhbMeeZdaK47BrWoKoJhr70/eZjYT4YvY7H0S LWcvwOyq1YxHkCTQgUzshEJSQN+/XMdVpmy61KGfniNfsQ1fitUG8z4nH8vzwxGsD4b25p ILvVM5j0AP8M9KkiNKcqYDZEoYLhBXc= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570309; h=from:from: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:in-reply-to:references:references; bh=Mc60C8g9Fb1tmdPaCWjP2wsKb3/BHTAaOKy7dD4Q/9Y=; b=HG2/OSTTB6A6DxnV9fJlxcbHxinFNkvCoc5Av0QoN/O5O+YI/YJJ/bruh7X8hN/Pw9tgph IvazjtlrEHvE70F096sE5glzpOsk/2seGBEE6mnWqKyR7quNplEuJULu48Ip6K1P9ALaSc CcIEO0Wx17XWQkF/v0cKIMDE2HGNkckrrXzPp8dEFRrg3wND1aSJFNIdawyf9uLxaTABRo ZaLQlEl5Ls8TI0NZ/sV4xP68+0hmYhn07h0uUoBEBcFcOZKdXrp6IW2fE9PtWJkDyHEUD0 oQtSjyeQ/Xpg2WNBMg2fGnBibELpAJAVp21s+DjKJ5dw3tCPwi51eWcUjp5leg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570309; h=from:from: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:in-reply-to:references:references; bh=Mc60C8g9Fb1tmdPaCWjP2wsKb3/BHTAaOKy7dD4Q/9Y=; b=nld6xex166KgiTl4cwebgevCV8SivocBIvcZsJEvFPKYFQRriCZczK7R2BtRLLOQ4JjzCQ SUUrhpc+PqFJSfDQ== Date: Wed, 26 Feb 2025 12:44:40 +0100 Subject: [PATCH v2 01/16] MAINTAINERS: Add vDSO selftests MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-1-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=675; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=s3dkTBDXdzo+I16hjaEXfC4T5xD6NlAF4J47urRaCBo=; b=RmTkrNBpC+8rUj4SUZbDrfqW5Rz+2JesNkGa22nnnObwaeaPhHsLR2eLjesHwiz9iee7NIV4Q XJaNIHxUageD+jmnkXoAdx2diftbLQQUokA/XWcB8tDXaA54QQQwuSI X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: 6E196C0004 X-Stat-Signature: koub1okognb5d4pwjo4xnqhy9cefoq1s X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1740570311-742555 X-HE-Meta: U2FsdGVkX1/rTHWhKDy12MAtNXyOjCwH671+7l0NiOAh9R7QKFjDg6Qo/MpFjRSaPi93XspQ4J3bq10BWGZLFLsU0gR4KswpzvyFa7NXL/yeVCYYpvysjIua6F5MQdwbFbKD54AWSVgcawMl+WSRdKJSkxGSJQgXlZnxMSH1Z9uzXgAT2fe5gKoZ2EHg524EvgctfiW/+bAS88fU+VPxgRJY6+YDgc3S2v90SDytucSUv3LbiLge0YJMp4GL52PEh1S6SFaCgxKeoYwDTcLOIYHa9p+mkQzh5lQh+CJWN/8hGYxVGBxvaxZ1WlCK/lojApAwnZFGDvJ0RwGnxkeqSMofLOtFmSTUs4fJ5CF0jEumZ0pIPgscoRlDwcIoPKZCYs5oDF1U2Pdqe4VvViadgI2CKiQB3HYmmQRAp1JKyu+/DRVmx2xswdxn3kCcM18yRPE6vMkObQNpWHzr5Jmd3ZnWn/ctJk27wffA09MD7J/EP6oEM2TJk572BN2KmvXW95ehiGkQ9GFxatM4sDwwFq5BOqg3X21J/cwcgvRJ2Q0A3w3QacpDmm2JD/8cIRd/28G8YCe3P1iRCTiiSKI/iA+6mUQ1qrS2CNBBD7H8RPaVzZSoVSrBWqze8ASMQNtElT4ho6yYC8s6HOgVGDwro27P2qyII2VWBVMrikCgH0Q8UwoGiVs5LxAAUYeWCzCalPNuzq/4BLmjW9YVwpfZ7jrrHKwmvL1jI7LAWgAebxQ7l2cD0Q+0eQJ9JcotCsQMyNdP5h1N5BBDL5KJuSCrRxVOX4BwoPYwTkoTIJzGvtnHFnBTaHCTzlJPsitnI+LtoYhjOZk+VWGIquJHXii0aN0GrBP7FXAbn+kz7Obn4kbxcO67igCVfTpNFJHUfOyi+tI+IGyYxWk/YUOcLSK9CXlDmBceyBISc2nQYNs2AX0Rdk0dbNQBBgSX1VrKouFcRG071VkDUUqNzkQd22d X6YsqU+O WqTFwYdGBJU/X3uP49grQ29MC8gB30dBbPCvM1b4f/+LbCVHYO+UQ4gjzNP6N4e1yTIH2s72reDpWECXOo5O9F42D50I+nZLXOy7JkV69QrMzonLHxsQQXGm0EJ33y1H+j3/5hrkiwqilKpH1eJ5wK0UjMVAhXifaLsqh85yXAkaPlB9rfCz35ziyuHZCFkEqa9WKurdj/EXJq9ER5m1FzrtsoPe/mSdT/KMYUz3WG5IadpFI0NKN7L4mRVrSsR2itqiddb1Axfxz4m+TyxzG8fl814OtElXF3cV7yb91upSXChDNU4O9gKnh8BGZjTcVWAyYCtuCveQauvRWqHEnMgX7uzIH9emG70dnRvdaM9E808nSeUNhJFFY26xtOW+8orC9bDKjo4vwnffwVwnMwUAgMafg7ryhjWtkrwG0Vdd8S8J496HXR8HGXZvyWxRLet6a9/69yWajQHk/DHcr1rr/T7KGfnLtThPvl0CphBeskhI= 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: These currently have no maintainer besides the default kselftest ones. Add the general vDSO maintainers, too. Signed-off-by: Thomas Weißschuh --- MAINTAINERS | 1 + 1 file changed, 1 insertion(+) diff --git a/MAINTAINERS b/MAINTAINERS index 896a307fa06545e2861abe46ea7029f9b4d3628e..959c8a86844eb1e5c6218e8fdbde6c3ebf68e25d 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -9777,6 +9777,7 @@ F: include/asm-generic/vdso/vsyscall.h F: include/vdso/ F: kernel/time/vsyscall.c F: lib/vdso/ +F: tools/testing/selftests/vDSO/ GENWQE (IBM Generic Workqueue Card) M: Frank Haverkamp From patchwork Wed Feb 26 11:44:41 2025 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: 13992136 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 94C95C18E7C for ; Wed, 26 Feb 2025 11:45:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 87D1B280012; Wed, 26 Feb 2025 06:45:28 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7176A280010; Wed, 26 Feb 2025 06:45:28 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4F41E280012; Wed, 26 Feb 2025 06:45:28 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 1267E28000D for ; Wed, 26 Feb 2025 06:45:28 -0500 (EST) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id BAA8A1613FA for ; Wed, 26 Feb 2025 11:45:13 +0000 (UTC) X-FDA: 83161914906.27.B7601DB Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf08.hostedemail.com (Postfix) with ESMTP id E82C016000D for ; Wed, 26 Feb 2025 11:45:11 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=JPxjA3rj; dkim=pass header.d=linutronix.de header.s=2020e header.b=NogC8iL5; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf08.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570312; a=rsa-sha256; cv=none; b=fslCVs8cMiGTUaiCTyNeoJFPU/Q6RCWT/2xBj6uWlmsjxtboIqnY8HNVgJn+tRDKeGIgXd vGWzI//Ei/8OQ28aUK/uO56+0Ql3kCqF0U4fO43OHpwQbOexJvqYHBEvf4wV/+QLrQ0kRI YLk0AxxBmh8jxcypvMpkkpyTUYUM3gg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570312; 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:in-reply-to:references:references:dkim-signature; bh=lMDiGbYVSI2UFf1LCxWO6nyQEZB+Om9MsywMKZqQgCo=; b=STzkDtkySR8/JrYvy8avqRFX0DL1v9BYTeYXXwT2b0kjv2RfoUH8hyKCR16MolKkY1KADz le7FJotZhzhxSywqrpJ+a1JPYDdTGgM7nBGpKfBGDqGH2Xt5gToxAQoGznL6lXK09AXjSp cNJLwKzplFHKcUijj6g0SRrwZ+Lj+2s= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=JPxjA3rj; dkim=pass header.d=linutronix.de header.s=2020e header.b=NogC8iL5; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf08.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570310; h=from:from: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:in-reply-to:references:references; bh=lMDiGbYVSI2UFf1LCxWO6nyQEZB+Om9MsywMKZqQgCo=; b=JPxjA3rjz6xx4GTC7I8oaWdo6JKP5/SU+MZYtxrPCtbpIT6X3MBJTtspm+D3CEgeb/rGz0 TIwScseTkmK+tv0QaLucWZcdi7zu5lWTZllLIPEth+U6QNA7ZDutG838PWSniAlvZ5ahWC 0LU6v2uQDsmxRX5nsy9c/Cis8PC/Q1IHXZb+7MWEbaxt9tUHqJ7kKtA4EYETE4lsDIKZpa HJfXRZJvOSLXJNl442y+s1e545AMCTgZpPgaVWCujHEFBcobNhSRSsLqNr7p75EmCu1fCB 3UPM8em6xc+wLNOxbvByppfB07n2A/LCz2/v9s/kEJqPMEna1tDWxq6xKKZ3vQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570310; h=from:from: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:in-reply-to:references:references; bh=lMDiGbYVSI2UFf1LCxWO6nyQEZB+Om9MsywMKZqQgCo=; b=NogC8iL5YzrQpwMRQZ93LpyvPa5B8vMn/uJTGvcGCDvF9ORegZ4u77l7P0pYsd9hV5eT+D tm/sp4VhOqmVeBCg== Date: Wed, 26 Feb 2025 12:44:41 +0100 Subject: [PATCH v2 02/16] elf, uapi: Add definition for STN_UNDEF MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-2-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=885; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=jOcl4jChzaOfnuMhe6CWOzQik5bw/m/LULE4SM4Wwic=; b=qt2UpwulQT6NmPqm+BCm/x9gmi8yb5q4QxLrpncjEM195FECfP4GUiMb0tEXnI6jNVxzs5MLk c8OLcJCsa1SBT8bdPVaKrK+Hc3gm7a3UVHR9oQ0/xyDKxXTMTcKdumk X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: E82C016000D X-Rspamd-Server: rspam08 X-Rspam-User: X-Stat-Signature: 1ttdj5dufskwu3a4sf9f8fnd8sm7hgm9 X-HE-Tag: 1740570311-866389 X-HE-Meta: U2FsdGVkX19jfMcYP65NBfcriV5XDx6J4bKlQhkMy1+XgPrfb3yuqYlMKyJrTTgyyiok02VaZrnfcMkIsEKYfj4JjxGwvfZtjh08xPaUBeE3GMhDVhJHshnnpIGhJ1p9rcXWkCToOfRDFv4C3zjnhMI1x3IU9QIt2scN4viqenNhWv/l6zduyrGChdGX90FOkXv9vE+N9rEzz4NzXkxxlRyAETvwJS3HzQRqZ4ACowsL51nToE5z2OhNhZi4u+4NGyEM8Eam/DAbqk32uvFawc/5QMDkPXdk1oGeCEjWsjfE762tEpH5tbxiTyZMWlAY3J6amih9l2UiEwJ3K+MLgLTaIPlwPIW/76lWwdnKKGzI5H3b9TyFuDUDdu8H7vU8Yh4387k2pO0sVjFQaDy7Dpn22ev6oKL0pC9sMP7yauQYTaOERGgpQP7rK4kSohwspRsW1kjMtEnaoa1ADQHDjkj3/gwzBfQIXmPsHzcaFUoniehYLqzlegEM42IPgAVsTDfbPrAhaPiw3IRKIsSSMY8egQW9TFWFsUEF5HLyjyyfFRElHOtX5DrvixgdPT56tvPNq9+SCHQdmp929ydES/m/p2jb8D+kOVsVrK1jwJWsdAW9itFKq+zqulva//mpf3JhU6teRZRvgJsBT5fJrz8M6yYnGJE8NtWvJ8/L4yTjCFIVwVSijtmQ7OLmgecSrCEt4uUfgtg85myKhn4qa3n0703cTSM4JR2HlarumJN00hpovTALV2ijfrcK2bTaZFvdiJY4CntXFm8SYuTQ1JSOk60GqESYV9wxPmRYp2LGBQzeqVHd9xP9ZipvDrjok5kjqhgZmfXRnCve/m/5Icj9NKEYH6lpuJXgD/p/hMCnlVRjLRz8d7pWsG/khyRtc5HOiJqeBohBeKdXiB2CJjq0aIrG762xbiwrlxH2ePSOUHTbgXT5ufpEQ0uz5AT4tjasoNkGMMpIXOCopeA QGUi4cC5 TOvxjKUc2DN1hbYfIEBvqNesbwjQx6wBOBXXzTskSN0/7ixclGZpeYHthTg6bDXl89bmNtBE1hlnXU9nKa+DjQ2NKMdf2KjRoJe4ZR0a7NReHA74yEYynMYixWH2q4ZG3f7eN9L77dWl9sXvSPde4Fj2NhfE7YhJpHVacOkougoSOMyI+bhaYPd0VK3xEbIp9aORlJ8qVLFMk/BJe8uBXGch5dB3NfTMa8e9U2+0KVIrsVlYiZB0kgeJawFQcsyo+pJOqnBcfBhoWee+MjneymbJl1SIdm9OG/r75NRtzch7o8VjqGRADGVEb7SP0czykC9HD2jgjhCkz8FdhFvRTWYJIX4mfREjZvBQZW6hhbOby+Gly5ycQcjGimHLaroY9erLP54/9gePl6bG93tbMYUVWHBvWx3ckSgSgJqUCx0/EGy0qXF1NnuqBpFLyA5TvxlCjVAKRqJd9qr/FvZyAwsNwiCbLmwW8nDAwQeUia0wLur9DsJZ6TZn8koow0ZYbfFCpplvoajrNiS8SAPxCcbes7RD6Tpz+/ve99boqRvmzN/2HYbRT1qeWyg== 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 definition is used by tools/testing/selftests/vDSO/parse_vdso.c. To be able to build the vDSO selftests without a libc dependency, add the definition to the kernels own UAPI headers. Link: https://refspecs.linuxfoundation.org/elf/gabi4+/ch4.symtab.html Reviewed-by: Kees Cook Signed-off-by: Thomas Weißschuh --- include/uapi/linux/elf.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index b44069d29cecc0f9de90ee66bfffd2137f4275a8..448695c7364042b10682acc8223eb6053ad039dd 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h @@ -125,6 +125,8 @@ typedef __s64 Elf64_Sxword; #define STB_GLOBAL 1 #define STB_WEAK 2 +#define STN_UNDEF 0 + #define STT_NOTYPE 0 #define STT_OBJECT 1 #define STT_FUNC 2 From patchwork Wed Feb 26 11:44:42 2025 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: 13992143 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 2E0DAC021BF for ; Wed, 26 Feb 2025 11:46:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C95E3280018; Wed, 26 Feb 2025 06:45:33 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id BF78B280015; Wed, 26 Feb 2025 06:45:33 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A21AD280018; Wed, 26 Feb 2025 06:45:33 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 7E7E1280015 for ; Wed, 26 Feb 2025 06:45:33 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 314BF813B8 for ; Wed, 26 Feb 2025 11:45:14 +0000 (UTC) X-FDA: 83161914948.15.8EA2ABD Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf29.hostedemail.com (Postfix) with ESMTP id 65B1E120014 for ; Wed, 26 Feb 2025 11:45:12 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=avECu8S3; dkim=pass header.d=linutronix.de header.s=2020e header.b="Oo4q/cfI"; spf=pass (imf29.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570312; a=rsa-sha256; cv=none; b=amnF4l74RjYjNlVa2Ggo2/k5gfOypd9jULgu7Af2CmWEF1kBwJHm4dnLr4N+EZmb+j+56w EYfDQfzL7fR0AMOpmc5ccJxQkhVYf9/GhC677KsaI4SGjHc3HytHHxbslKW1ChWlnJXKnf gk2ONyeYu7uU9ZLILYkZwyufHIKefiA= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=avECu8S3; dkim=pass header.d=linutronix.de header.s=2020e header.b="Oo4q/cfI"; spf=pass (imf29.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570312; 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:in-reply-to:references:references:dkim-signature; bh=qc8k85QrRUfIwluNEgaOEIrDWlVHw34Ed+H+vO4zIyU=; b=xYQnRQc3SN5k7126MB3enPqPPJPGfxoZlsg++fC7uyG05dVL2/K07uuQ5+UaHtuGgQQcNl EUenVekG0jMsXyS9R8uzcXnogR1NEUFuiFByrCPw8VSLDKj3v3jAdVN1BU5Nua6W1lYCcg y5w8vH8GUUqiEJjcYXysDtNzpnJhdsw= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570310; h=from:from: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:in-reply-to:references:references; bh=qc8k85QrRUfIwluNEgaOEIrDWlVHw34Ed+H+vO4zIyU=; b=avECu8S3jx/pmCIQJWaK+0SD8K6JT8SgvRapY9TNb39IEaKuSR+tpzWW6pZsMs+Bd64mxD DpVplJ5rC26o+kIErleSVbg4O3iGhlxVke2dumC3pDlpKiwmWMrh0p/omecDYpsTABSN4C r/BK/yxqHtoK1vts2FOv7jcQ5gYb/fd2F6ZDOIb3VQmuZYlTL8MOotoscRQHlG9jXFEmiO wz0a8tD8Dnhod6Pc31rssOViwZsomH2L8EN+qKX52SYScbEn6SfOcamhUKcuUKK3kXGTxF V2zaBkDidKTVBO3dw/gcnLp/iLX6mG+o9/sdPc6alFF7Xdwg7QGXU1TxvpEltA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570310; h=from:from: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:in-reply-to:references:references; bh=qc8k85QrRUfIwluNEgaOEIrDWlVHw34Ed+H+vO4zIyU=; b=Oo4q/cfIBwhbzTTkHfzTQKj/4rS6c1d4wrt8XU482oeVg1WZfUBNM9SXPS1Er6+/GUn+Kp 4NKpgPB/18f2H0Bw== Date: Wed, 26 Feb 2025 12:44:42 +0100 Subject: [PATCH v2 03/16] elf, uapi: Add definition for DT_GNU_HASH MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-3-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=992; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=+jGgP1cF5BHMiA98EteeT7PCwWeU0cio2XCj4TkDXXs=; b=gffFwpFiMY0sSE9DKpvTyzzTsHUi6gqoqQGzj2IUwlbRWYjFFxwMFVEexOzQSI0o+6k2ojfcr 0YglZp5OTQgB6tOuZ7VpMYH7szsVzIHB0ASp/JLSQ82MOQMT0FTpFk7 X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: 65B1E120014 X-Stat-Signature: egruqok39y9d45baehq45qru88ruzoqn X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1740570312-487841 X-HE-Meta: U2FsdGVkX1+sGReR7qS7bmf4oZ2/eveqmby94yCCBXacAByPVkFONzjv/6fhPZnERA9l5IWMFbErNXW8ePMub3OuN5kCeJUYYPpbD0XEdukldm7pKaaVC9YEoQBiPeEvWt6ZAhJmze5NEvYnMGDWbld7DGcHekqRCyt4a9VXJTKlcEjXiQklAqwcaFR5u9tbGuhQTAz5WjSToKkjm/i6XijgPv4v8NxusOeF7LmYT+DiAxEbQ1xx3WXY74DPxVY35rlqHOnBu3iTyxUz+rzE8/R6wsFUT4bM9GMLu8wul08nDJacEiAPLoozHGF6quTsY7tJtb1MIMfI9pcHDZdi1oYTfEM3lD711djPhUZm+1+JXdi2vbEP2NIR35hHtTelLwM+e45Q6iwiNn4W6ZMielCeMNKr1J45fdjuiYMbECBtIDGWNnrxPZcr3eYXW6cFvIjdKquyC40iwLDIFdGZJdnK/AoACf+TpRYR9RSlxFPn0pDnylfpjbDRoyuQcYZygFRYxDH4rPdvfp3VcRFjN70rlJQbCg7J4zcWnkiJGaGCs91YiX3psiuTbF95uP5uDFruAy5q26g0FXrhU5WN49gNqvUylI3s0vxpqAygt9IaE2Hu9C4W6uwZpIRZy6tqietinmlDPeoJ9G7QsuUk3Qqt5SVe/Go4/WigkrPRkHD4KGqRMarNbKuzAmyIFlebbOyIJQxPD4Nx/fYe76ICoG5gDNfoh6FzBR9kDTsyCKn7ydzFrjJh9ZIKySdo5VLJN/smGsOyk94UclsmxgJZR7ZEZxj9IEgxVegWbgqzHKug4D/DHn7hIgdkeTe5h9+2K3AGM49BdsDYHTIThk9u8Nxp6237bPudLdpjLCiLGh2TodN031HKlRfAOrax/+JA94+mp6spaGKEJnQC7/Th8B8grl5n11Pjs4/bAzLU4rsFyk5uQRT+dIVfo4yMzAZB3Ik54U22vbkiVErSNJb y50t7Ni0 kkvAnRdwSvW05gFpHQjxTJCXR5dvBaX94jp0ddiU9LDhtkAsWa1OEt9mjFKO5OsExthLDqyKHXk9HG4yqCaOL7+hGSUxoZP9v80CT2NKSE0QqGVgngpMvPG3hTsMN4FG+Hkd2SH736vsgAFef8HS2ABNXBYu1xY4QFSCUiHCMuA02YSIA5TrqG8zInSPk0TrCY1jG/Y4zjSf6fYCNmNGx1NZN7nF0WvVAm8T3yGy30rcxZM68pzuWkVc7cbhKY0KGsKX0DwXTA3ZquN6GFlpuiu8TQ/Qyb5YFKCze1x3Ij8uT144PmKkuSo+V9iOY6lvkKB3DdEtJFxug23eO2JrIXi9WlSMfebGp2AFMmFZYfzI7s6aW/p9YDXb129YjLJX6kdQc/e6NZzoMcWiggw79guQh2mk87KYoBkZAt9+sX2iBBatU8461JuW0zNv6rMqQI2Ghcdiq+tH8oZcp2a0HwtJCXiQG1RXMdzifGw/ZLfjigzH7I605gMltzH5iWwMr9jXs4NNUCbFAj/wkQ/kkUlMuPhFoG0Vcg2WyA8VmPIIKOQtTZgcLD1ia51fW4X/0VMw+g1o756sE1/VQHFV/uhY8tQ== 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 definition is used by tools/testing/selftests/vDSO/parse_vdso.c. To be able to build the vDSO selftests without a libc dependency, add the define to the kernels own UAPI headers. Link: https://refspecs.linuxbase.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/libc-ddefs.html Reviewed-by: Kees Cook Signed-off-by: Thomas Weißschuh --- include/uapi/linux/elf.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index 448695c7364042b10682acc8223eb6053ad039dd..c5383cc7bb13c931fea083de5243c4006f795006 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h @@ -107,6 +107,7 @@ typedef __s64 Elf64_Sxword; #define DT_VALRNGLO 0x6ffffd00 #define DT_VALRNGHI 0x6ffffdff #define DT_ADDRRNGLO 0x6ffffe00 +#define DT_GNU_HASH 0x6ffffef5 #define DT_ADDRRNGHI 0x6ffffeff #define DT_VERSYM 0x6ffffff0 #define DT_RELACOUNT 0x6ffffff9 From patchwork Wed Feb 26 11:44:43 2025 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: 13992142 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 CA320C19777 for ; Wed, 26 Feb 2025 11:45:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 171DF280017; Wed, 26 Feb 2025 06:45:31 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0FD0E280015; Wed, 26 Feb 2025 06:45:30 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DADCC280018; Wed, 26 Feb 2025 06:45:30 -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 95DE4280015 for ; Wed, 26 Feb 2025 06:45:30 -0500 (EST) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id C4B4E1413BC for ; Wed, 26 Feb 2025 11:45:18 +0000 (UTC) X-FDA: 83161915116.10.67F3025 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf27.hostedemail.com (Postfix) with ESMTP id A71014000B for ; Wed, 26 Feb 2025 11:45:12 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=Q6RHVpOp; dkim=pass header.d=linutronix.de header.s=2020e header.b=wxpAzBBk; spf=pass (imf27.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570312; 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:in-reply-to:references:references:dkim-signature; bh=X459Nbf9XrEWha7iYfzDJ/XKmZSxaaM7+gUIBcjKP7M=; b=il+c5GSPcrL8WvJjrWnN7SWkeMWeoveWQGz4g8NVXqO0qqKCkqxTZcJvSIxgtFj6nL9q0v A7v+BcF9izMH8sxx6DQUN9GUXx6jCxSscqRM62RTehXFYwK5FalRVne7qlS0NoxuA4dP4P Z1Qm0RwRLFe2etlW74M0ITmrpWnQt+k= ARC-Authentication-Results: i=1; imf27.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=Q6RHVpOp; dkim=pass header.d=linutronix.de header.s=2020e header.b=wxpAzBBk; spf=pass (imf27.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570312; a=rsa-sha256; cv=none; b=F+FFYocMGgPMaOQn+Yv2JBfZTW2Q3B4Mb85x+3esmTSJv1l7Ivy3/hhbR+cQLBPJC256au c16Jlsq+DfP07U8hAyhGyrxGO5QpJy7d0mhj4MruRz/DvvUZQHSd34c/5qIaE9e/HOLSHH yU4mAVrjd4oRHbrRblSHf0Uv+ewTPRo= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570311; h=from:from: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:in-reply-to:references:references; bh=X459Nbf9XrEWha7iYfzDJ/XKmZSxaaM7+gUIBcjKP7M=; b=Q6RHVpOpx4zEsk1vhQBMerXcZfxYjUqVTslkHIIAE0kETSlRP+VTu4KB6Ar3suj0p0ABEb EXSAONKWx+hJlht02+6RTGP6S4iwhZw4LUzzfGx8wRx7W/6Id4QKh/oyPpvVqB3JmXaWcN 9s+hnX9QotHEv41wZmKEA3xLsYc6kq/45ol1Qu7p2d/S1mOA5cBaniZ1x5/74jWtqgFO7S SHmrXV63IcWdYrdXd+KRhfXgNMSu3R/qj08gFcCU3W8fqpxFfFcgPfr5B12x0UcXC8oDjq QlXnIH0pIJzGyOjnco6JVy00lodeEFdR3L3UbHQgNrrIRFbZn10m7+QgHGW2cQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570311; h=from:from: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:in-reply-to:references:references; bh=X459Nbf9XrEWha7iYfzDJ/XKmZSxaaM7+gUIBcjKP7M=; b=wxpAzBBkGPD/yd/UvVvq3B9eE3sYMv29zNLt5TKz00Qmo5uoyB+ri0QozhIXJSlVvWqHGh 19+lwFcgC6SL43CA== Date: Wed, 26 Feb 2025 12:44:43 +0100 Subject: [PATCH v2 04/16] elf, uapi: Add definitions for VER_FLG_BASE and VER_FLG_WEAK MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-4-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=976; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=s4dcBFTBzdnkfHgUh3Q9G83Mq/JS/VsS9PhICcoi080=; b=cT1LjlV6MdAalhb0317TK/ZKKu9q9wZ1kkpTwpuGLCiGqy4w/CIFAzQGbV6a9D6L9/Rfxha5V c/aBJB5puZ7AZw+MOZLGj/TcVagcBoDUWnKGS0tv2nYQKmO2YDmVmZv X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: A71014000B X-Stat-Signature: hfxd8t9k99foqgyg6as7xhgywip6f3y8 X-Rspam-User: X-HE-Tag: 1740570312-22163 X-HE-Meta: U2FsdGVkX1+gzDuQszmHLrhyEYXu8DHBqEX0TsQ9sBVDWJ+zPj4hqjmP1bVbFOK66Wthc6jt//ZYqgbvsVZjP7UoLV7Id1IOHn8Ahhv2/0GmsJ8IgExUHkibKNZaV2+Q74oXkv/NNL6AjxA8p/2SinyNJ7J2Gz0Tbt7h12swNQmuttUO+zJufXH4Ax6Bdk+YSRnZUQfKv9ng7q9BUs9EpLj2CuVbMSftbPMJrbfSqAsmFNUKOfJqgPmlGs1nQe06rgdGOm2ZoVIEJF+eMKsA1+poeznSXQLAvbriJgQZXLJEcEMlWHqOabvxP4h0wA+LCUB6qzVmsSYplo1LSYIgQsIxFo3pDEDlQhUZXyM/HLxNdN0JDFjabqrGrsbxZxMfKHJdvMCJnr/vK2L4v/+9DGZmUAOqWKQgJLP7N/eLWs+aYwIy5Fb1rj3SaH6rEBNkW6vl0IAwHdYQjY5DNj9tvE5RSpZsUvo19RChYcVL3az8k6V3sd+PVTtuIDpDwCUi6iOTnsZNFTXq2dF7R6NP4zQiMtCnQTGKEjyRZyQoMafkSPSyqlmZcKcZh3vEHsXWzP2f48TBwKOpFhQHtG74U7yDBoKDge4jYNoIGWyez7WrnbUCY5zI1t77YI9rvdvPvo8mAUsFvcZ+tjXLELVkA0n/Yrwk8OXWnn4SRW8J7pj2l6KAjP0uPIeeRD+iwtiON9gfRYOmpviw2muedBKgJjwH8hwHS/p5LBkQCH20unj6W5IIz/o31oJD4rpJcT0NOaM9Kbvaas1kopfy5vgXiFqLvUa/JvjlsRVw8tGCnaYeOy5C+MW5vFvxeQILAzg/K3+ZslxRVxhwnmCKyHTshThLfSGoO9GSsMUOShDU0KwhpgU19bQoEOdsbA4pybdhGxZzJDpuE6wrypEnFdNvanCLCLWXa4Li8DYeWc6FwipoJo56rIduatSer4Q8eq87P4EITViuZYVEHPW+S1c NsLmlANJ I2r5B4T92cpwsYKWXNmBVQUCZYjOW1z8dAMwXzQXIioGeliRHPnOP8fZLzD06y0MOVw4GrJ/dELJ18qai+QooLfMRRscM+KjkIMcyY+BIVHef9mfYleUkTmzlqiEp0bu53nvi4Tc2Go5mPYZ5gpxHAGdvZ+egt/PI/STzv2oCUAkShcqPjlaKO89nRzl6z9lm+XwCSdiLD3CY/mF9GhiwBawM3M96nq/ZjfRJF4JYdbn2ivPdKPvDZUJukML0zs/rzIrQKliQwR1+NSIPjYORkv/TVtchjweYs+8STIS6OpErwGh8AeAzupbLiDG/JdTQjx4IRdvhtIZedRLgdpw00wmn1RH/ETBZQoblMn9OGT4vouYK3R/qc18bBKt9HqVXRy8bYiJAeLdAYg3fZ7SvNp66N6m+veJCcnwi+oRMI400G1xzsIhpqm5y82BKsbnMjyiNpnw67l7CyQLjkV1+RxZeTIL96pJWRk4CMkJNEeKAqZd1CIFx0/5ZumsSmgIgsQ2ob5Mqt+zuLU2IJ4KdYmVKMg== 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 definitions are used by tools/testing/selftests/vDSO/parse_vdso.c. To be able to build the vDSO selftests without a libc dependency, add the definitions to the kernels own UAPI headers. Link: https://docs.oracle.com/cd/E19683-01/816-1386/chapter6-80869/index.html Reviewed-by: Kees Cook Signed-off-by: Thomas Weißschuh --- include/uapi/linux/elf.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index c5383cc7bb13c931fea083de5243c4006f795006..d040f12ff1c0ae3dde5c371c81d6089118fbe8ed 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h @@ -136,6 +136,9 @@ typedef __s64 Elf64_Sxword; #define STT_COMMON 5 #define STT_TLS 6 +#define VER_FLG_BASE 0x1 +#define VER_FLG_WEAK 0x2 + #define ELF_ST_BIND(x) ((x) >> 4) #define ELF_ST_TYPE(x) ((x) & 0xf) #define ELF32_ST_BIND(x) ELF_ST_BIND(x) From patchwork Wed Feb 26 11:44:44 2025 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: 13992139 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 6FF60C021BF for ; Wed, 26 Feb 2025 11:45:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 72299280010; Wed, 26 Feb 2025 06:45:29 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3EBB6280016; Wed, 26 Feb 2025 06:45:29 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 039C428000D; Wed, 26 Feb 2025 06:45:28 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id B458628000D for ; Wed, 26 Feb 2025 06:45:28 -0500 (EST) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 3B68253838 for ; Wed, 26 Feb 2025 11:45:16 +0000 (UTC) X-FDA: 83161915032.29.CA8AD28 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf18.hostedemail.com (Postfix) with ESMTP id 533DF1C0019 for ; Wed, 26 Feb 2025 11:45:14 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=dC7RWRst; dkim=pass header.d=linutronix.de header.s=2020e header.b=p2wJLYMt; spf=pass (imf18.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570314; 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:in-reply-to:references:references:dkim-signature; bh=k9pJvPJRoot4AT1h69bhn9vc1GanKxm+mtfLKQnaoF4=; b=Wk6n+eEnYheqw6aXlk6tDR0nbnKwZPrmNj0fwW8Gf6Grg11MwdeHR5h5wwdesJBCu0Ro6o knz3RT9DNJ2XGjdxuS/bXpfaDLWPgyn51EHcJklqZr2Kc4jFVGZGSB+oXP4Bx5iGbfCYRv X6C8w/mF23m4ctjzSG7OTpT6HfQSlWM= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=dC7RWRst; dkim=pass header.d=linutronix.de header.s=2020e header.b=p2wJLYMt; spf=pass (imf18.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570314; a=rsa-sha256; cv=none; b=sZr/5h+lnf0Ao1+RsvBpQeWmi2jUwnbGYgGD2TzFyw+eDG+v+7pJ9Fpcv6UgGwXX9fqxff DglXU6ppY6tugyuiqHrCQCw7HsOqCXM2S4uenbHQ2JWF8bq+zi6F6JnTUCP9S6IkSZnWdE VAJDkvqHsUHBxZjQQ7ACcPkQvgH3L1g= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570311; h=from:from: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:in-reply-to:references:references; bh=k9pJvPJRoot4AT1h69bhn9vc1GanKxm+mtfLKQnaoF4=; b=dC7RWRst00MR9iLmG1iI2b5cbgzkgiVwWBn0rDD4HVIfYUSuYojRsR/TmE4RQmWGHNvJ+2 77jKMGmT7QUb9GGXEH6BgCtKx8H2mDwpZPu9v2GWMPYLr040SgXS/LOxwnpTo5AXAvjjZY 0UU6ZLw7D5pTQxbFsvxUZ6RqphD15YS0/KLoZ6u6FY3NZ3pmHV5l9GfiT3txGa8oC1LpO9 MhPkybzWhm7Gdxj4aYuI8CpcXmYHNdOhgqXHolufvud1+ZYWcvb9jwmZLUQgm+1HQxQxJU m2uujyAmHrqemW05yghgOO+PufC36Ypuvo1WUGAYMciRvy0yHbKhKp3QIVZGZA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570311; h=from:from: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:in-reply-to:references:references; bh=k9pJvPJRoot4AT1h69bhn9vc1GanKxm+mtfLKQnaoF4=; b=p2wJLYMtdpFHXL/9QycDKpVmsl95tT5ehlvebqkIkYEFtNGrVIsnpJyr+1WpYjd9T61LR7 YjJ8/JUjJsaEohCQ== Date: Wed, 26 Feb 2025 12:44:44 +0100 Subject: [PATCH v2 05/16] elf, uapi: Add type ElfXX_Versym MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-5-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=1126; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=uMbwFQSW2wbApezo9DQH/BnNIMdQZar0Ezqf7xcu58Y=; b=7CvId9mvKa9//HzXCxvhR1VmXOx23JW3X291jiX1R+XcNhWx5UgmMqTiFxZ+a3AXSWFC+nXzl /gMgqN7haSpDrF2zUs3SczycGbg7PP7Jvfv59hjA3ElJYqWD8Q0IvHT X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: 533DF1C0019 X-Stat-Signature: c3owf5g5cdsufyrp8y9u4tsmy6oq4s4c X-Rspam-User: X-Rspamd-Server: rspam01 X-HE-Tag: 1740570314-560832 X-HE-Meta: U2FsdGVkX1/WfRrf7x4mFkv7nRtF4aPnkqWFbo7wnFmnCBCDp1qIYiAk03EBu58CT+0nOTtVmPPGY9MJ8k3+bbL4vo+QYOHDgotAZtzzMZ35Hhr8ZqKPAPMS5NeASfPh/Vza+luSWfgmFQFhfIGvQFMvfZtmn9rBu9yDQkYLZl4CZteV2VfzIS8SmkxMJ04d3C1rZSeovNt4N6kR5x93EnuR61zk4LNoRNUIRcyC4VPERTHwhWYkKjUg764cKWQIKNoJa0H6BMRv/zba3jzRVYyjajTajHICoCT9DW/umE4q2yXzbuQf5gBLOGSp4RZEhvRRcQZ54yYKE0Q4i8jGisSr0WvLiGSGzV2WJLD9HzSOq9IPIu+MCgPe1DiRF6r25Y/4mD+i1p/jwg39Yj8NY/A3sJ9htiUXjg2D5AoTikL0fEJJeNfsU2lOIorDgMk7Gd7Nn3BEQ4zyTV/aEPqQAZY4QL0P5JP2arRYDUHvP4Ay+3ajooqaNNRRU3stDJUiGUYdXcvxJEGkH61msZWsXoY16jsVpzU11BV3dpM42OsS8Fujjk/pPxRXdciCITr4dmaNHCSA420xYtfrpBAyoUNzxYbmzQm9oWn1tL/27ghYxljfsmYc76rkVdluvydPigfPfjfq+6O/xSwarF5134vcz9aU5QyI6l5s501bYqqFoOQwxUIQzpKzvpbXkGGIPlIsjp6jy9+DRbL3tQtRkAe7NNXWPvj3VNs53Ecv6+m18dDvDEfTCa7XcukWVO87IDPcSPTzI/0fdNVdeB/7CpTTBTNZfrKbBsWcrrvoyeHoXH2O9XrJxP4tp/d81cHuce7CgBm9LvmDwe0ItGKsG6cFwWeUHatkJS8kCem0kwGPwvh/AoGP+VxCZsiuGysk3jSYaTbUvagcVKySJafigoTfc5Gqx+YHQm9R9es/gBsRxU30ldgJUDNvx9IFV5/37vP/d04GCSfp0d6xa9P 5W1cdOEU R/PV4YRXtlWJ9snys0jPFhgsy1ySyX93NPtrryCIq7uXSweHoVQE6lav8yl3PqED7tRdiZaUkndsKtG34N52idleF3rNE3rAzsQ7AIvQX2A8pSuXaTnGRJyFaH9ucMvJlfOZiHN75RENMJx3mkpD0h59Rn9i+tjdlqAggooH1v3WkCvNXj8a8Ze+pvq/Yr5hIWqLaw1aBBTb67DslDZVRgR0uZfx3mXVIHZj2T0sKFQnYiZtKimY1087Nsdal4rCk8o9u9mBaXeVsjoyGwz73OtStXliwdnUKa/4XtTK8vQWOtnTTtuDo0x3JAqVLMuLsG0kGfSlIO5UnXm/XrZAR9jSR67CZ4vmH2x28It3a+Nl6n6FXXyeFxAaTH/2Vc5RIHd5YhPo23DW+kefV+kIftmc0oRDrHW8Q/JAXV+IMhA2i81rRuC7gneolra3KLoSxRxOxl5U7nX1qpiABKpvl+MVc/W3YX8XCGYxTTRlGCHXsNvxwb0f4uhrIGafqimmz1jlT 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 types are used by tools/testing/selftests/vDSO/parse_vdso.c. To be able to build the vDSO selftests without a libc dependency, add the types to the kernels own UAPI headers. As documented by elf(5). Reviewed-by: Kees Cook Signed-off-by: Thomas Weißschuh --- include/uapi/linux/elf.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index d040f12ff1c0ae3dde5c371c81d6089118fbe8ed..8846fe03ca5b836c96aad1be6d8fb9daf3d4b1d9 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h @@ -11,6 +11,7 @@ typedef __u16 Elf32_Half; typedef __u32 Elf32_Off; typedef __s32 Elf32_Sword; typedef __u32 Elf32_Word; +typedef __u16 Elf32_Versym; /* 64-bit ELF base types. */ typedef __u64 Elf64_Addr; @@ -21,6 +22,7 @@ typedef __s32 Elf64_Sword; typedef __u32 Elf64_Word; typedef __u64 Elf64_Xword; typedef __s64 Elf64_Sxword; +typedef __u16 Elf64_Versym; /* These constants are for the segment types stored in the image headers */ #define PT_NULL 0 From patchwork Wed Feb 26 11:44:45 2025 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: 13992104 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 DCEDDC021BF for ; Wed, 26 Feb 2025 11:45:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 519B2280007; Wed, 26 Feb 2025 06:45:23 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 4A3B7280003; Wed, 26 Feb 2025 06:45:23 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 343B9280007; Wed, 26 Feb 2025 06:45:23 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 17024280003 for ; Wed, 26 Feb 2025 06:45:23 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 508CBB690D for ; Wed, 26 Feb 2025 11:45:16 +0000 (UTC) X-FDA: 83161915032.11.2F0240E Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf17.hostedemail.com (Postfix) with ESMTP id 5C1DB40017 for ; Wed, 26 Feb 2025 11:45:14 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=YjdFSRuy; dkim=pass header.d=linutronix.de header.s=2020e header.b=NqgJ2Fef; spf=pass (imf17.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570314; 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:in-reply-to:references:references:dkim-signature; bh=bkCRw2BpQUYAjvfhyaUo+iyDwhLAUESJLqMGOQ+XVwI=; b=3YEa+TJxQEcbBcbvUgtMLGzaYolXGloxPJeFSoMCNIfx+IWyHKKOZf/MM6ImCYeGlH5rHC Ls4ytV93iqeQSmiFf79+eDeJRYP3dzE6zufyKLkU9mvR4uLdawCiOUFwbkBl0yYjs9FVui 4qiMQDyfZNdae+WF2MZzUTqMmbX9yso= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=YjdFSRuy; dkim=pass header.d=linutronix.de header.s=2020e header.b=NqgJ2Fef; spf=pass (imf17.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570314; a=rsa-sha256; cv=none; b=6K7mJNnAZvXVZaHVKRt9HmJjMTLnVRB/DC7uA6GNz00/gTsuJP/KQX06O98jW7HUdSefOb TZ5bU1eObWVLxusjGsdjFpoKet31E56AyHwv6dUiyJb+ck8QU0FlV+REm+KkYorhUEa7Ae FuVjmjdc/nXx8JZMZ90dH8o6f6GC8+M= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570312; h=from:from: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:in-reply-to:references:references; bh=bkCRw2BpQUYAjvfhyaUo+iyDwhLAUESJLqMGOQ+XVwI=; b=YjdFSRuyb91zkSTPvJ8cgiS1svich7dObnXdLP24CYPu3D5EQrrVweJJQnvReCGRuxeEdn 5XC6Grer4PT+zGmGd6bcuCUeAwpG1bX7ALed3vso/6rIEnY1OdfnW21BzlLJQNzTJnRcDK V+gfY+69wDAOWdpsPYUa9GK5r9CE8RIAPU44kjN53A1d7DqSKuuBPb6Uxa5YJcevVAhlB3 o6Bp+HknlhyCZejpdymUi+tbdQ6TvwDg+UbYoFvfthEvK0BtqLFrTALKt2tEKMyqBtn6U7 R2HcDJIS2PgQDgXU+7guk0pzWRZJGKt0LVC+MqiTCk5oQFhCw4hMxJDalLXqoQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570312; h=from:from: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:in-reply-to:references:references; bh=bkCRw2BpQUYAjvfhyaUo+iyDwhLAUESJLqMGOQ+XVwI=; b=NqgJ2FefRdRXfd22mRV3zWNKN+hKj9Uq/0fpZT08jqL33unPCrnhLCKAx/UEbIOAznpOpz kSX0oMt34JymlVBQ== Date: Wed, 26 Feb 2025 12:44:45 +0100 Subject: [PATCH v2 06/16] elf, uapi: Add types ElfXX_Verdef and ElfXX_Veraux MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-6-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=1560; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=f0elSrf4G5nhNoS671eA0MwXLIFN+3JjK3K2nUIR4+Y=; b=XqArEjVM/ETm9hIaH7qXWZUILAITcT9I7PEhlL1NXqPj1HuOR3bmJ792iqIy/A/oOqMP2t3ft TQ3c8kUy3wZC2IHOaunkr6mjGBwCzhkfBG0tTSfQNu+CFOefmVG+fa2 X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 5C1DB40017 X-Stat-Signature: defkakxbd6m9o94zmpk4xpug9iiprnja X-HE-Tag: 1740570314-136599 X-HE-Meta: U2FsdGVkX1+g1r4mlAor9EHfSUolnLJ0+e0T2Bl9X9mtqaUueLu7tV3EifsMrqNNdRMVimQc4xk7quQh5cY0nW4De2e8e8KN5MYyHMYr08k7iDA2iBHcqFzEXSf/Gwy+f47XsWm90RndcZdGSi1ts6Vd5j46TuBCCUJAPYtFVIPXhiH7foHsYlISSLDaIEa1yUWeICHnh2ScbSXIFECfPGOytFciN4HfMdoLj0VJ5Vs3xXZ5FzRi7rsxz5U9BPVNpJpA3TWeO/JRBzKV9eE1NwNMAQgLK1tYK0NHWEQetKTjfbDPUNil+YQ/6pBPsipbLqQWQtgZZRJ+ar/Qdm9WJTmwzKBeIG8M5sN9XKBf9edEv34KwvSnzBGXZviQe2Zv/B00WQIpM08/qRbPkcansObz/CJKmsBXEfsXvcDPZRnjvknaC55qtDHxDwRGGDZ6GyCHjGz4CYnGDGkgeJhg4VSzmez6Ry1kxRiLMEn3v9y+C0Q5bCdNI9c8rJZWb6R3aG51b7cRt+wHqXNihTQXubCQfd5uNVT52/3ktUZ5U28dgBkXDvy8xoXn7l+PtD2Gd623B3Iz3lDJJoghYpylq400IOat1gaktZXf8e80OZYmgAnnKaecf72S8ysUSsiNmF3dnDGR3Wd/SAaVSSTYKBizjoHlfUu+UqGR7nIaV0i2oF2ADxoldePZF0ELIJ6l11p7UIS0+0QXCXzo+GVoVk6GCudP2lin4obnMa7MFOpTWhsuv3j8d3GpAIiHBCf2lR0itPuEpv5a1g82LMCC8kXxKSCAB4+0UAMDQaJ4dCONZrGbDaSr9DCCWyGZ5i5InydKA+u0gkqH9WgMsBi3ypCC/lDxmEpfxC2V82vnrQVQYmRysKL9uLiHvrQlMDz7KkB68610DAiPA4rWAxi4ctGUhLy/E+UE+fZJ8VbN5cuNTThqy3zK7D6BTnonEEZmxFVJeLGKaKVy9wwM3xC Bqs1I5oG hcZ64SBX9XSxFC7a7H2Lt9HYB0tr8QgsKAY4QR8G63zujRuMiNc2rI91U8sH+iTV6bfNobd8EvYpgJDPlo+3pdWCEBpuoh3dBZSo1hdQcKGoKHaZXUpj1z3ELlCd++XV4a4ZHElm6pBbfO+qLP0PSkV85PGmyV3MkT4tLeFwYAWW7WO3OinzEbiMML/iyh+UwRSEW/wdiIz7K9gJOB7vea1LHUAKv1FG3Ufm/LdojQk2J6gOvAIMlBOkxq4EVApCM+o/hMgZc3pBfk9OjJzBXiho3oaUR6+iZoLmlsxskUz5pp9DlOMtqBoP06wLuXrM0/NWXJbPZDkEJfqrW2TF1vPBobQsRWTM+VKsWzovKwdQh1Z/hszjbx9g0qHNlngKrM2BdDTQLHDH2nw8gmdMMQ/o8fji3TFjM10x7KY91kHQYE4tX9lIRxRQ2IOxWu4wE+OkvBg7CTfmZ6lA/6c5s7v0uRmKJRrrKGS4/ozDt1ojqRdj8XQ4FOXv8Gn3LQhwPXeXUpj5vtvX7MrXOGuMcBru6j5AjC4H2x5KXq839UL4tmyt2er2qzMKFV7q9PV4tpWc9qPott+yYQoW6ajGfllh9lw== 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 types are used by tools/testing/selftests/vDSO/parse_vdso.c. To be able to build the vDSO selftests without a libc dependency, add the types to the kernels own UAPI headers. Link: https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/symversion.html#VERDEFEXTS Reviewed-by: Kees Cook Signed-off-by: Thomas Weißschuh --- include/uapi/linux/elf.h | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index 8846fe03ca5b836c96aad1be6d8fb9daf3d4b1d9..49f9f90458d8ca8e7b8f823d32be0a719ff827b3 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h @@ -491,4 +491,34 @@ typedef struct elf64_note { /* Bits for GNU_PROPERTY_AARCH64_FEATURE_1_BTI */ #define GNU_PROPERTY_AARCH64_FEATURE_1_BTI (1U << 0) +typedef struct { + Elf32_Half vd_version; + Elf32_Half vd_flags; + Elf32_Half vd_ndx; + Elf32_Half vd_cnt; + Elf32_Word vd_hash; + Elf32_Word vd_aux; + Elf32_Word vd_next; +} Elf32_Verdef; + +typedef struct { + Elf64_Half vd_version; + Elf64_Half vd_flags; + Elf64_Half vd_ndx; + Elf64_Half vd_cnt; + Elf64_Word vd_hash; + Elf64_Word vd_aux; + Elf64_Word vd_next; +} Elf64_Verdef; + +typedef struct { + Elf32_Word vda_name; + Elf32_Word vda_next; +} Elf32_Verdaux; + +typedef struct { + Elf64_Word vda_name; + Elf64_Word vda_next; +} Elf64_Verdaux; + #endif /* _UAPI_LINUX_ELF_H */ From patchwork Wed Feb 26 11:44:46 2025 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: 13992138 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 72E8DC18E7C for ; Wed, 26 Feb 2025 11:45:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 52793280013; Wed, 26 Feb 2025 06:45:29 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0B044280010; Wed, 26 Feb 2025 06:45:28 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CBBDD280010; Wed, 26 Feb 2025 06:45:28 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 8E3B8280013 for ; Wed, 26 Feb 2025 06:45:28 -0500 (EST) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 424CDA3897 for ; Wed, 26 Feb 2025 11:45:16 +0000 (UTC) X-FDA: 83161915032.17.77F56A5 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf01.hostedemail.com (Postfix) with ESMTP id 5D96640005 for ; Wed, 26 Feb 2025 11:45:14 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=17zjm4CL; dkim=pass header.d=linutronix.de header.s=2020e header.b=ATETiKS9; spf=pass (imf01.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570314; 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:in-reply-to:references:references:dkim-signature; bh=Sg4NMO0TZ19i20OrdzLqOif4PPEkfQYWtb9RkA9dHw4=; b=IxVmD/gZmzdefteTJsyr3TxueqSbrT+7ARKy+cgSmBW2U9g/I+qpHXugjK1zGxSS8yLM74 zTRh0oEJTYAyQgsG4vdmZQaHN5S7Zfn605O054tt0vvpTm+P4stpyv9z2cGgpcJEistiEX fq2jgEEKl1vsJsbMzyDAs6ZNDMP0nZM= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=17zjm4CL; dkim=pass header.d=linutronix.de header.s=2020e header.b=ATETiKS9; spf=pass (imf01.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570314; a=rsa-sha256; cv=none; b=rDWqmcUECJ9krKDE08hqo1vAc85g68wuYa00VohHNufTjH7JmdHyT5Wbc4hojJCKICDCPN 3e89aBg941W9gSOgVKQBzvglilcT+LQoIyRuqNAa0iIImzE6pyseIcuYsbv8v+DCeBHDG0 1SJ5A/XMEGvw6mczTICJ4FjxYCvGTb8= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570313; h=from:from: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:in-reply-to:references:references; bh=Sg4NMO0TZ19i20OrdzLqOif4PPEkfQYWtb9RkA9dHw4=; b=17zjm4CLLeklyRGkjGNJUT6dyi/EaNLJ66/Orf0Vql6bRWGPa9DxIHb7yFdqQh+CHjDJKd ylukAkuv0u0p9fyqQNIk/87d9ILxLD/dlYDW5tuUOSXOG+9iDOyWKlNTEZZf3NWg8U8dmj HOxCDCvDHLjXP38Xh3+45S19VhdBVfD8EzvsfwtwYIOgLDhj59JwM4D48BUObjzI30vwI0 wZQVvDjsTiHS/lgEQ6j5fahbxNPX6f4fpIbDcJpNlcYx7gA00BHlbNBe7b69vj/l9HFFDo 6FMRooMRSXsRsiBQMmdE+m3+3aFQr/ubQTIwBEptlUeTxzjMfymob0BBMtDGtg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570313; h=from:from: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:in-reply-to:references:references; bh=Sg4NMO0TZ19i20OrdzLqOif4PPEkfQYWtb9RkA9dHw4=; b=ATETiKS904wPHfcAdAYV09qIKPEFBRhVaI5xBN3eGTd9JEs5pvKXxrqLDYVqMp19MfDqRC I7/TQ0RsEWfh3SDg== Date: Wed, 26 Feb 2025 12:44:46 +0100 Subject: [PATCH v2 07/16] tools/include: Add uapi/linux/elf.h MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-7-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=18079; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=5wSxSpPLrEhh+gEr44hMdOh4WtecZqa6aJNR6ugfHyA=; b=0EZb+KlxjcJstWu/+5/7Wz5q/XR25S07F/LUW8i1SySbQ7/v+t+ouqnU38M6s9mnFiympLwN2 2+0JGUJ8MmUDdIuzQoCO2mLrfaVwJspLp3MMfDO9k4z7QeBF5MI+H4K X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 5D96640005 X-Stat-Signature: ewidtu37t3heprpqi9a8eoiuwhfoz3yc X-HE-Tag: 1740570314-887361 X-HE-Meta: U2FsdGVkX1+UX6Cl5bsPKnT/6pa0clxCL8gv2NIhoLZVxLDrmEjcO5oCv9794vZxVXVIJ69PrBCO7M3JpDHg74MIv+wHv/3ehxSGPNMcbjTdV5tbk/0f2hxEPgI8e46IERGbOlGE4nMODHhmBUqK4ZKf1W8cTWYih/vQGsUUrYYWelc7Q4cy5lTXrR00SLwQwz6YaTyYhlBcH4bpFM5eLi5Io5LJcb9PgAplgH+KJc55rewxx4i+5Qw1X8G2SpRw/t7tbuOLdMe4IxktINYkPiEt1yv6IJDVyJWPn5Y9x9yHpXFIPPFFDt9CaBvijgu6dUIGweEKbWGPJdCpeS6a5pYwTOh5XtPJC7A+FJ7qnn1F942C5SgXbUiiO9g7gSvEUr+K1xpFQRWXGSm8bNLLFX4kWPi/lEdv+ywgfJB5qJH1hp5r4z0d34OebT4GGRX0qzeaoe2jfhgF9+9KilWudNv7tOSSmnaQolnnK0zxpyR6JKzLosjpS8GPGtSCgWh9AnxPwZ42c8JQyZtfqV/vl8RzX/ecK+KG35w+Gn1zx5sAEfEgvqTsv0WCHj9MOWYO0LY2tBhSwayv3T3Lz8G2ogBZNTNNoQOt7AfCy7aGXBKhdd72RAzZ/T1k+IQ0nVr6Bymiw9IKPYc4ryG8Y01bqe5msRavGPayY2j5fBHg7k8RLMr0yZFrJNmazdBBp87iJmwJ7R7fZqzkHvtMBpMXLNY41gZx38BPubTQizdrCS/KLuRcO9FFsbcLU+px12NiJwcj9mzgZ20G0lFS0+zsVAdWQnmgeEeSsngBgni6CScps2NFp+iD1ew7R/wAeQfbxwK6NUTrJL8ZPJwB/QNOSMUkC9tUBlxH+fa/rGu3LEXXRabcp5jzao/bT/YxIGfSDXRwwgMweMJPPYyGt006pX7sOJaXl3PQxeC6DX27sHFFtCGOo2rrRQRpxPkfhVj6jkvrVRE66pGND1AYMC9 dhsfQQ4V 1Gb4JUcV3WvnbzJMlThWKJ13LZ6y+GmnVG4CnQl4SSwRI9ckv82xxwr5lG7MWwOZoKcmAt+ztCVkYUHoEqui46DRIeOp1bgdkh9RRGiix6mLUMx1O53pAro+ftYWQH3XUhFPbJPS+Lx3+R7ahwzZpkxBnP0mktXuCmq1V1ZNQQipC/UCaTJ7/ZYyVdfbSAF1Zm+5w4GWG2lI4pkm8XArXmotdLSzd2QJTejbIICnigO9mIPX8U9WgnRTEJ4OxxqAQFaZkoa6KquJ8PqdTWqS4Rxk1MIE/VKpShal1kN9TzY19XfAC7iNZVEL962lWL5nhGZSwTjRNoL5BKe4VXUOq0Fo+DVQt3Iedj/TXdhq4BPhrS0DvavFVhYif+Hz+sOdWgVVb0itiPZPCTfJdo7JZA1YEOrr3DigCdrjBbXBUY/ZVKDzxLg9ju6jwNsH2m2nnTf/zLpDg7IN19iExpaQaeluwX0YeCK7kvvpea2rPOtnQsdI= 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: It will be used by the vDSO selftests. Signed-off-by: Thomas Weißschuh --- tools/include/uapi/linux/elf.h | 524 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 524 insertions(+) diff --git a/tools/include/uapi/linux/elf.h b/tools/include/uapi/linux/elf.h new file mode 100644 index 0000000000000000000000000000000000000000..3d0935a11613bbcf8c381188de3a10bafd6cc29f --- /dev/null +++ b/tools/include/uapi/linux/elf.h @@ -0,0 +1,524 @@ +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ +#ifndef _LINUX_ELF_H +#define _LINUX_ELF_H + +#include +#include + +/* 32-bit ELF base types. */ +typedef __u32 Elf32_Addr; +typedef __u16 Elf32_Half; +typedef __u32 Elf32_Off; +typedef __s32 Elf32_Sword; +typedef __u32 Elf32_Word; +typedef __u16 Elf32_Versym; + +/* 64-bit ELF base types. */ +typedef __u64 Elf64_Addr; +typedef __u16 Elf64_Half; +typedef __s16 Elf64_SHalf; +typedef __u64 Elf64_Off; +typedef __s32 Elf64_Sword; +typedef __u32 Elf64_Word; +typedef __u64 Elf64_Xword; +typedef __s64 Elf64_Sxword; +typedef __u16 Elf64_Versym; + +/* These constants are for the segment types stored in the image headers */ +#define PT_NULL 0 +#define PT_LOAD 1 +#define PT_DYNAMIC 2 +#define PT_INTERP 3 +#define PT_NOTE 4 +#define PT_SHLIB 5 +#define PT_PHDR 6 +#define PT_TLS 7 /* Thread local storage segment */ +#define PT_LOOS 0x60000000 /* OS-specific */ +#define PT_HIOS 0x6fffffff /* OS-specific */ +#define PT_LOPROC 0x70000000 +#define PT_HIPROC 0x7fffffff +#define PT_GNU_EH_FRAME (PT_LOOS + 0x474e550) +#define PT_GNU_STACK (PT_LOOS + 0x474e551) +#define PT_GNU_RELRO (PT_LOOS + 0x474e552) +#define PT_GNU_PROPERTY (PT_LOOS + 0x474e553) + + +/* ARM MTE memory tag segment type */ +#define PT_AARCH64_MEMTAG_MTE (PT_LOPROC + 0x2) + +/* + * Extended Numbering + * + * If the real number of program header table entries is larger than + * or equal to PN_XNUM(0xffff), it is set to sh_info field of the + * section header at index 0, and PN_XNUM is set to e_phnum + * field. Otherwise, the section header at index 0 is zero + * initialized, if it exists. + * + * Specifications are available in: + * + * - Oracle: Linker and Libraries. + * Part No: 817–1984–19, August 2011. + * https://docs.oracle.com/cd/E18752_01/pdf/817-1984.pdf + * + * - System V ABI AMD64 Architecture Processor Supplement + * Draft Version 0.99.4, + * January 13, 2010. + * http://www.cs.washington.edu/education/courses/cse351/12wi/supp-docs/abi.pdf + */ +#define PN_XNUM 0xffff + +/* These constants define the different elf file types */ +#define ET_NONE 0 +#define ET_REL 1 +#define ET_EXEC 2 +#define ET_DYN 3 +#define ET_CORE 4 +#define ET_LOPROC 0xff00 +#define ET_HIPROC 0xffff + +/* This is the info that is needed to parse the dynamic section of the file */ +#define DT_NULL 0 +#define DT_NEEDED 1 +#define DT_PLTRELSZ 2 +#define DT_PLTGOT 3 +#define DT_HASH 4 +#define DT_STRTAB 5 +#define DT_SYMTAB 6 +#define DT_RELA 7 +#define DT_RELASZ 8 +#define DT_RELAENT 9 +#define DT_STRSZ 10 +#define DT_SYMENT 11 +#define DT_INIT 12 +#define DT_FINI 13 +#define DT_SONAME 14 +#define DT_RPATH 15 +#define DT_SYMBOLIC 16 +#define DT_REL 17 +#define DT_RELSZ 18 +#define DT_RELENT 19 +#define DT_PLTREL 20 +#define DT_DEBUG 21 +#define DT_TEXTREL 22 +#define DT_JMPREL 23 +#define DT_ENCODING 32 +#define OLD_DT_LOOS 0x60000000 +#define DT_LOOS 0x6000000d +#define DT_HIOS 0x6ffff000 +#define DT_VALRNGLO 0x6ffffd00 +#define DT_VALRNGHI 0x6ffffdff +#define DT_ADDRRNGLO 0x6ffffe00 +#define DT_GNU_HASH 0x6ffffef5 +#define DT_ADDRRNGHI 0x6ffffeff +#define DT_VERSYM 0x6ffffff0 +#define DT_RELACOUNT 0x6ffffff9 +#define DT_RELCOUNT 0x6ffffffa +#define DT_FLAGS_1 0x6ffffffb +#define DT_VERDEF 0x6ffffffc +#define DT_VERDEFNUM 0x6ffffffd +#define DT_VERNEED 0x6ffffffe +#define DT_VERNEEDNUM 0x6fffffff +#define OLD_DT_HIOS 0x6fffffff +#define DT_LOPROC 0x70000000 +#define DT_HIPROC 0x7fffffff + +/* This info is needed when parsing the symbol table */ +#define STB_LOCAL 0 +#define STB_GLOBAL 1 +#define STB_WEAK 2 + +#define STN_UNDEF 0 + +#define STT_NOTYPE 0 +#define STT_OBJECT 1 +#define STT_FUNC 2 +#define STT_SECTION 3 +#define STT_FILE 4 +#define STT_COMMON 5 +#define STT_TLS 6 + +#define VER_FLG_BASE 0x1 +#define VER_FLG_WEAK 0x2 + +#define ELF_ST_BIND(x) ((x) >> 4) +#define ELF_ST_TYPE(x) ((x) & 0xf) +#define ELF32_ST_BIND(x) ELF_ST_BIND(x) +#define ELF32_ST_TYPE(x) ELF_ST_TYPE(x) +#define ELF64_ST_BIND(x) ELF_ST_BIND(x) +#define ELF64_ST_TYPE(x) ELF_ST_TYPE(x) + +typedef struct { + Elf32_Sword d_tag; + union { + Elf32_Sword d_val; + Elf32_Addr d_ptr; + } d_un; +} Elf32_Dyn; + +typedef struct { + Elf64_Sxword d_tag; /* entry tag value */ + union { + Elf64_Xword d_val; + Elf64_Addr d_ptr; + } d_un; +} Elf64_Dyn; + +/* The following are used with relocations */ +#define ELF32_R_SYM(x) ((x) >> 8) +#define ELF32_R_TYPE(x) ((x) & 0xff) + +#define ELF64_R_SYM(i) ((i) >> 32) +#define ELF64_R_TYPE(i) ((i) & 0xffffffff) + +typedef struct elf32_rel { + Elf32_Addr r_offset; + Elf32_Word r_info; +} Elf32_Rel; + +typedef struct elf64_rel { + Elf64_Addr r_offset; /* Location at which to apply the action */ + Elf64_Xword r_info; /* index and type of relocation */ +} Elf64_Rel; + +typedef struct elf32_rela { + Elf32_Addr r_offset; + Elf32_Word r_info; + Elf32_Sword r_addend; +} Elf32_Rela; + +typedef struct elf64_rela { + Elf64_Addr r_offset; /* Location at which to apply the action */ + Elf64_Xword r_info; /* index and type of relocation */ + Elf64_Sxword r_addend; /* Constant addend used to compute value */ +} Elf64_Rela; + +typedef struct elf32_sym { + Elf32_Word st_name; + Elf32_Addr st_value; + Elf32_Word st_size; + unsigned char st_info; + unsigned char st_other; + Elf32_Half st_shndx; +} Elf32_Sym; + +typedef struct elf64_sym { + Elf64_Word st_name; /* Symbol name, index in string tbl */ + unsigned char st_info; /* Type and binding attributes */ + unsigned char st_other; /* No defined meaning, 0 */ + Elf64_Half st_shndx; /* Associated section index */ + Elf64_Addr st_value; /* Value of the symbol */ + Elf64_Xword st_size; /* Associated symbol size */ +} Elf64_Sym; + + +#define EI_NIDENT 16 + +typedef struct elf32_hdr { + unsigned char e_ident[EI_NIDENT]; + Elf32_Half e_type; + Elf32_Half e_machine; + Elf32_Word e_version; + Elf32_Addr e_entry; /* Entry point */ + Elf32_Off e_phoff; + Elf32_Off e_shoff; + Elf32_Word e_flags; + Elf32_Half e_ehsize; + Elf32_Half e_phentsize; + Elf32_Half e_phnum; + Elf32_Half e_shentsize; + Elf32_Half e_shnum; + Elf32_Half e_shstrndx; +} Elf32_Ehdr; + +typedef struct elf64_hdr { + unsigned char e_ident[EI_NIDENT]; /* ELF "magic number" */ + Elf64_Half e_type; + Elf64_Half e_machine; + Elf64_Word e_version; + Elf64_Addr e_entry; /* Entry point virtual address */ + Elf64_Off e_phoff; /* Program header table file offset */ + Elf64_Off e_shoff; /* Section header table file offset */ + Elf64_Word e_flags; + Elf64_Half e_ehsize; + Elf64_Half e_phentsize; + Elf64_Half e_phnum; + Elf64_Half e_shentsize; + Elf64_Half e_shnum; + Elf64_Half e_shstrndx; +} Elf64_Ehdr; + +/* These constants define the permissions on sections in the program + header, p_flags. */ +#define PF_R 0x4 +#define PF_W 0x2 +#define PF_X 0x1 + +typedef struct elf32_phdr { + Elf32_Word p_type; + Elf32_Off p_offset; + Elf32_Addr p_vaddr; + Elf32_Addr p_paddr; + Elf32_Word p_filesz; + Elf32_Word p_memsz; + Elf32_Word p_flags; + Elf32_Word p_align; +} Elf32_Phdr; + +typedef struct elf64_phdr { + Elf64_Word p_type; + Elf64_Word p_flags; + Elf64_Off p_offset; /* Segment file offset */ + Elf64_Addr p_vaddr; /* Segment virtual address */ + Elf64_Addr p_paddr; /* Segment physical address */ + Elf64_Xword p_filesz; /* Segment size in file */ + Elf64_Xword p_memsz; /* Segment size in memory */ + Elf64_Xword p_align; /* Segment alignment, file & memory */ +} Elf64_Phdr; + +/* sh_type */ +#define SHT_NULL 0 +#define SHT_PROGBITS 1 +#define SHT_SYMTAB 2 +#define SHT_STRTAB 3 +#define SHT_RELA 4 +#define SHT_HASH 5 +#define SHT_DYNAMIC 6 +#define SHT_NOTE 7 +#define SHT_NOBITS 8 +#define SHT_REL 9 +#define SHT_SHLIB 10 +#define SHT_DYNSYM 11 +#define SHT_NUM 12 +#define SHT_LOPROC 0x70000000 +#define SHT_HIPROC 0x7fffffff +#define SHT_LOUSER 0x80000000 +#define SHT_HIUSER 0xffffffff + +/* sh_flags */ +#define SHF_WRITE 0x1 +#define SHF_ALLOC 0x2 +#define SHF_EXECINSTR 0x4 +#define SHF_RELA_LIVEPATCH 0x00100000 +#define SHF_RO_AFTER_INIT 0x00200000 +#define SHF_MASKPROC 0xf0000000 + +/* special section indexes */ +#define SHN_UNDEF 0 +#define SHN_LORESERVE 0xff00 +#define SHN_LOPROC 0xff00 +#define SHN_HIPROC 0xff1f +#define SHN_LIVEPATCH 0xff20 +#define SHN_ABS 0xfff1 +#define SHN_COMMON 0xfff2 +#define SHN_HIRESERVE 0xffff + +typedef struct elf32_shdr { + Elf32_Word sh_name; + Elf32_Word sh_type; + Elf32_Word sh_flags; + Elf32_Addr sh_addr; + Elf32_Off sh_offset; + Elf32_Word sh_size; + Elf32_Word sh_link; + Elf32_Word sh_info; + Elf32_Word sh_addralign; + Elf32_Word sh_entsize; +} Elf32_Shdr; + +typedef struct elf64_shdr { + Elf64_Word sh_name; /* Section name, index in string tbl */ + Elf64_Word sh_type; /* Type of section */ + Elf64_Xword sh_flags; /* Miscellaneous section attributes */ + Elf64_Addr sh_addr; /* Section virtual addr at execution */ + Elf64_Off sh_offset; /* Section file offset */ + Elf64_Xword sh_size; /* Size of section in bytes */ + Elf64_Word sh_link; /* Index of another section */ + Elf64_Word sh_info; /* Additional section information */ + Elf64_Xword sh_addralign; /* Section alignment */ + Elf64_Xword sh_entsize; /* Entry size if section holds table */ +} Elf64_Shdr; + +#define EI_MAG0 0 /* e_ident[] indexes */ +#define EI_MAG1 1 +#define EI_MAG2 2 +#define EI_MAG3 3 +#define EI_CLASS 4 +#define EI_DATA 5 +#define EI_VERSION 6 +#define EI_OSABI 7 +#define EI_PAD 8 + +#define ELFMAG0 0x7f /* EI_MAG */ +#define ELFMAG1 'E' +#define ELFMAG2 'L' +#define ELFMAG3 'F' +#define ELFMAG "\177ELF" +#define SELFMAG 4 + +#define ELFCLASSNONE 0 /* EI_CLASS */ +#define ELFCLASS32 1 +#define ELFCLASS64 2 +#define ELFCLASSNUM 3 + +#define ELFDATANONE 0 /* e_ident[EI_DATA] */ +#define ELFDATA2LSB 1 +#define ELFDATA2MSB 2 + +#define EV_NONE 0 /* e_version, EI_VERSION */ +#define EV_CURRENT 1 +#define EV_NUM 2 + +#define ELFOSABI_NONE 0 +#define ELFOSABI_LINUX 3 + +#ifndef ELF_OSABI +#define ELF_OSABI ELFOSABI_NONE +#endif + +/* + * Notes used in ET_CORE. Architectures export some of the arch register sets + * using the corresponding note types via the PTRACE_GETREGSET and + * PTRACE_SETREGSET requests. + * The note name for these types is "LINUX", except NT_PRFPREG that is named + * "CORE". + */ +#define NT_PRSTATUS 1 +#define NT_PRFPREG 2 +#define NT_PRPSINFO 3 +#define NT_TASKSTRUCT 4 +#define NT_AUXV 6 +/* + * Note to userspace developers: size of NT_SIGINFO note may increase + * in the future to accomodate more fields, don't assume it is fixed! + */ +#define NT_SIGINFO 0x53494749 +#define NT_FILE 0x46494c45 +#define NT_PRXFPREG 0x46e62b7f /* copied from gdb5.1/include/elf/common.h */ +#define NT_PPC_VMX 0x100 /* PowerPC Altivec/VMX registers */ +#define NT_PPC_SPE 0x101 /* PowerPC SPE/EVR registers */ +#define NT_PPC_VSX 0x102 /* PowerPC VSX registers */ +#define NT_PPC_TAR 0x103 /* Target Address Register */ +#define NT_PPC_PPR 0x104 /* Program Priority Register */ +#define NT_PPC_DSCR 0x105 /* Data Stream Control Register */ +#define NT_PPC_EBB 0x106 /* Event Based Branch Registers */ +#define NT_PPC_PMU 0x107 /* Performance Monitor Registers */ +#define NT_PPC_TM_CGPR 0x108 /* TM checkpointed GPR Registers */ +#define NT_PPC_TM_CFPR 0x109 /* TM checkpointed FPR Registers */ +#define NT_PPC_TM_CVMX 0x10a /* TM checkpointed VMX Registers */ +#define NT_PPC_TM_CVSX 0x10b /* TM checkpointed VSX Registers */ +#define NT_PPC_TM_SPR 0x10c /* TM Special Purpose Registers */ +#define NT_PPC_TM_CTAR 0x10d /* TM checkpointed Target Address Register */ +#define NT_PPC_TM_CPPR 0x10e /* TM checkpointed Program Priority Register */ +#define NT_PPC_TM_CDSCR 0x10f /* TM checkpointed Data Stream Control Register */ +#define NT_PPC_PKEY 0x110 /* Memory Protection Keys registers */ +#define NT_PPC_DEXCR 0x111 /* PowerPC DEXCR registers */ +#define NT_PPC_HASHKEYR 0x112 /* PowerPC HASHKEYR register */ +#define NT_386_TLS 0x200 /* i386 TLS slots (struct user_desc) */ +#define NT_386_IOPERM 0x201 /* x86 io permission bitmap (1=deny) */ +#define NT_X86_XSTATE 0x202 /* x86 extended state using xsave */ +/* Old binutils treats 0x203 as a CET state */ +#define NT_X86_SHSTK 0x204 /* x86 SHSTK state */ +#define NT_X86_XSAVE_LAYOUT 0x205 /* XSAVE layout description */ +#define NT_S390_HIGH_GPRS 0x300 /* s390 upper register halves */ +#define NT_S390_TIMER 0x301 /* s390 timer register */ +#define NT_S390_TODCMP 0x302 /* s390 TOD clock comparator register */ +#define NT_S390_TODPREG 0x303 /* s390 TOD programmable register */ +#define NT_S390_CTRS 0x304 /* s390 control registers */ +#define NT_S390_PREFIX 0x305 /* s390 prefix register */ +#define NT_S390_LAST_BREAK 0x306 /* s390 breaking event address */ +#define NT_S390_SYSTEM_CALL 0x307 /* s390 system call restart data */ +#define NT_S390_TDB 0x308 /* s390 transaction diagnostic block */ +#define NT_S390_VXRS_LOW 0x309 /* s390 vector registers 0-15 upper half */ +#define NT_S390_VXRS_HIGH 0x30a /* s390 vector registers 16-31 */ +#define NT_S390_GS_CB 0x30b /* s390 guarded storage registers */ +#define NT_S390_GS_BC 0x30c /* s390 guarded storage broadcast control block */ +#define NT_S390_RI_CB 0x30d /* s390 runtime instrumentation */ +#define NT_S390_PV_CPU_DATA 0x30e /* s390 protvirt cpu dump data */ +#define NT_ARM_VFP 0x400 /* ARM VFP/NEON registers */ +#define NT_ARM_TLS 0x401 /* ARM TLS register */ +#define NT_ARM_HW_BREAK 0x402 /* ARM hardware breakpoint registers */ +#define NT_ARM_HW_WATCH 0x403 /* ARM hardware watchpoint registers */ +#define NT_ARM_SYSTEM_CALL 0x404 /* ARM system call number */ +#define NT_ARM_SVE 0x405 /* ARM Scalable Vector Extension registers */ +#define NT_ARM_PAC_MASK 0x406 /* ARM pointer authentication code masks */ +#define NT_ARM_PACA_KEYS 0x407 /* ARM pointer authentication address keys */ +#define NT_ARM_PACG_KEYS 0x408 /* ARM pointer authentication generic key */ +#define NT_ARM_TAGGED_ADDR_CTRL 0x409 /* arm64 tagged address control (prctl()) */ +#define NT_ARM_PAC_ENABLED_KEYS 0x40a /* arm64 ptr auth enabled keys (prctl()) */ +#define NT_ARM_SSVE 0x40b /* ARM Streaming SVE registers */ +#define NT_ARM_ZA 0x40c /* ARM SME ZA registers */ +#define NT_ARM_ZT 0x40d /* ARM SME ZT registers */ +#define NT_ARM_FPMR 0x40e /* ARM floating point mode register */ +#define NT_ARM_POE 0x40f /* ARM POE registers */ +#define NT_ARM_GCS 0x410 /* ARM GCS state */ +#define NT_ARC_V2 0x600 /* ARCv2 accumulator/extra registers */ +#define NT_VMCOREDD 0x700 /* Vmcore Device Dump Note */ +#define NT_MIPS_DSP 0x800 /* MIPS DSP ASE registers */ +#define NT_MIPS_FP_MODE 0x801 /* MIPS floating-point mode */ +#define NT_MIPS_MSA 0x802 /* MIPS SIMD registers */ +#define NT_RISCV_CSR 0x900 /* RISC-V Control and Status Registers */ +#define NT_RISCV_VECTOR 0x901 /* RISC-V vector registers */ +#define NT_RISCV_TAGGED_ADDR_CTRL 0x902 /* RISC-V tagged address control (prctl()) */ +#define NT_LOONGARCH_CPUCFG 0xa00 /* LoongArch CPU config registers */ +#define NT_LOONGARCH_CSR 0xa01 /* LoongArch control and status registers */ +#define NT_LOONGARCH_LSX 0xa02 /* LoongArch Loongson SIMD Extension registers */ +#define NT_LOONGARCH_LASX 0xa03 /* LoongArch Loongson Advanced SIMD Extension registers */ +#define NT_LOONGARCH_LBT 0xa04 /* LoongArch Loongson Binary Translation registers */ +#define NT_LOONGARCH_HW_BREAK 0xa05 /* LoongArch hardware breakpoint registers */ +#define NT_LOONGARCH_HW_WATCH 0xa06 /* LoongArch hardware watchpoint registers */ + +/* Note types with note name "GNU" */ +#define NT_GNU_PROPERTY_TYPE_0 5 + +/* Note header in a PT_NOTE section */ +typedef struct elf32_note { + Elf32_Word n_namesz; /* Name size */ + Elf32_Word n_descsz; /* Content size */ + Elf32_Word n_type; /* Content type */ +} Elf32_Nhdr; + +/* Note header in a PT_NOTE section */ +typedef struct elf64_note { + Elf64_Word n_namesz; /* Name size */ + Elf64_Word n_descsz; /* Content size */ + Elf64_Word n_type; /* Content type */ +} Elf64_Nhdr; + +/* .note.gnu.property types for EM_AARCH64: */ +#define GNU_PROPERTY_AARCH64_FEATURE_1_AND 0xc0000000 + +/* Bits for GNU_PROPERTY_AARCH64_FEATURE_1_BTI */ +#define GNU_PROPERTY_AARCH64_FEATURE_1_BTI (1U << 0) + +typedef struct { + Elf32_Half vd_version; + Elf32_Half vd_flags; + Elf32_Half vd_ndx; + Elf32_Half vd_cnt; + Elf32_Word vd_hash; + Elf32_Word vd_aux; + Elf32_Word vd_next; +} Elf32_Verdef; + +typedef struct { + Elf64_Half vd_version; + Elf64_Half vd_flags; + Elf64_Half vd_ndx; + Elf64_Half vd_cnt; + Elf64_Word vd_hash; + Elf64_Word vd_aux; + Elf64_Word vd_next; +} Elf64_Verdef; + +typedef struct { + Elf32_Word vda_name; + Elf32_Word vda_next; +} Elf32_Verdaux; + +typedef struct { + Elf64_Word vda_name; + Elf64_Word vda_next; +} Elf64_Verdaux; + +#endif /* _LINUX_ELF_H */ From patchwork Wed Feb 26 11:44:47 2025 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: 13992112 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 3BC02C021B8 for ; Wed, 26 Feb 2025 11:45:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 20F84280011; Wed, 26 Feb 2025 06:45:28 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0FDFA280010; Wed, 26 Feb 2025 06:45:28 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DD76C28000D; Wed, 26 Feb 2025 06:45:27 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id B9C1F28000D for ; Wed, 26 Feb 2025 06:45:27 -0500 (EST) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 9DDDE1A13CD for ; Wed, 26 Feb 2025 11:45:16 +0000 (UTC) X-FDA: 83161915032.04.C40371E Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf28.hostedemail.com (Postfix) with ESMTP id C5B4CC0003 for ; Wed, 26 Feb 2025 11:45:14 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=sGtF7KMC; dkim=pass header.d=linutronix.de header.s=2020e header.b=mZKemhK5; spf=pass (imf28.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570315; 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:in-reply-to:references:references:dkim-signature; bh=sG/oZgAVhh6ntwQfY2W+UbeC4PlDV/c3H2R+4urGbL8=; b=bE/6mtIKBBBeaKQe/X0fnh2Eue37IQB4dLQRehW4rcZwaA2mQRFKUmfhVbr+/9wQqTd6OY 67AcVENw1ySbqeRa6/JRGuP7WfiuREubHgovanO7E3PrG6g61/IFVndlrQij+uEX/+37kC twj1SRjLwQSYZsvF6qT01LZv7jWulTs= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=sGtF7KMC; dkim=pass header.d=linutronix.de header.s=2020e header.b=mZKemhK5; spf=pass (imf28.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570315; a=rsa-sha256; cv=none; b=c/HQGvYPkgiZEWH0INZdtyzCY9NMkq8TLWH/ikZufyBGr/naFbO16uR/ABtlvlliw8QgHS TnpIS27G5OO8t7N2m70/aNpaGUJTCMvcCmkt2EaJXklXmDGQTnnj3VDjs+hpDWitIwGTSr DpI881Zn5VhOjEV8pximv7/pgHt0hbw= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570313; h=from:from: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:in-reply-to:references:references; bh=sG/oZgAVhh6ntwQfY2W+UbeC4PlDV/c3H2R+4urGbL8=; b=sGtF7KMCAQ1TvopA8uWGZS7Jr8BlLkn4jH/P+pv9EwksFOAspMcaHeDJ4XAvbbQQjURP4c 5quj2rJOclA+XKXJd2baA7HLBZ6KySWoEqp1IA78xPmci9Cz4rt35yf5IrzjbnNNCaBQdm 78NTJCtSCvyS6HqSnvxbzBPu+ePLE8unuTz+4Uv6YJwhCVQNNo96c/vGzm3PnP4zMs+ouz lf2DB7UA5RGVxjR+DFcLBLJQidqZVF40GaOrHi4PPmkn076UKaQ8QzTU9BA+fbXWX2XHjZ mO3hWkdqO/7QjUBgtYU4OG2UPXR8G5MNWMWZVyU7aA8GG5LQu5A5WK1zSM4E9w== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570313; h=from:from: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:in-reply-to:references:references; bh=sG/oZgAVhh6ntwQfY2W+UbeC4PlDV/c3H2R+4urGbL8=; b=mZKemhK5sXcz5nItTnlWQThIGKk6Tokjf6a4LsC1TribORFIB9aWMsMtW4SRNv9/ZnQHnu MXUeg9i2JMw9QhAw== Date: Wed, 26 Feb 2025 12:44:47 +0100 Subject: [PATCH v2 08/16] selftests: Add headers target MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-8-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=1095; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=0OYIxTlpnbjEhvswabtZg49j38hT3MAFwMnYXuy7rHo=; b=70NDE/pRn3le1NMHe3LrCBOiX+f7D386oBjP6T/OyPf/pLocQs+xFeCw0bF2tCXNqPPRTjmGC VOhManwhUDWAzhRWxDEu2+K2YxvamCPDPR43TlyYLYGwKlwwpjYa6am X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Stat-Signature: y4ok5t7z881bdowxqigi9cqa77zgn8s8 X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: C5B4CC0003 X-HE-Tag: 1740570314-646333 X-HE-Meta: U2FsdGVkX1/1h8ule4EaqtMkCFFy0cCOa/ospCtm+IkciRB48kR9+JXok/o0EawH+oYr7MNJ8gA2F+foZ2pVZ+VqjIOhRLzBTCw/d2zUTb6vxGQwiSSO72QQdhGMdqwJehS3qcKKDAfP/RoC2o6Llxrted9vnMJvR6zWUCKKSZSN8pmAAzgX8iXmzGn33jXy/TOg6BOMqmmyCj5N/AAE6JHWYVyl7SA9F/A94jPnrYRYIN4rh3rNBZllFxfXtDgVfD9hGrHXDhYU0G8ewnLtsn/JAPnczM3iAJG7r1+d8o8CJtNvVwEEYS+8gsIVr0WmYtTYYWVtcEMANaVQ/VZ51AI1+f61gK5CZ5ZI9KkjS7GCX/C8wNYuLbaB8fUNMNAZaUMPYPr+adZ9MSKZ3aehuzeC5D1nmMTJROwNuOTP191KRpDYDC0HF1L+outu9gQGlelnr6K5QtmKhtiICJM3a749u9JzZaeijZ+LMxnuXzXaT++a+7yvKKoLvdW0UiNSGZnJoldRZ6i0Y9dQ5VDSqEFlstvgF6/u/e236qWOCf9Lk8FW3gryGgnmL/6ovno2wWboNghZ4j2kMwaSgcEnbrUX4DpYOI5xMlF4wsjnqV8HuD+Z6Qz1jHWI/SZS6dsHl38m+hPbWhI5zztdLleB4UztsndobdgPRqaaHUZ08t5n3xkCD511JuH1tLPMQ3l9zgASmsrASWj51m0iA5vNG3dbN95W3NzaNomnkiReokXZC8uBgSzclyOufrSHEl3OvA5koTW9nDt2hblgFT7610yUg9BVqBj0billh75zEyoCEcVGcNLxrsQIYdHiVhrgVuLMIU4c6eifnRJPNTJ9jnsxhcAuQ6aDDEJAVwCjvhorWkz6htgdPS0Fqtt7rjKwgu7jf55Nsf5Shbycdcif03Xx8/u4uRDMMT4skgpJg5UugJuCNCAPxBZVo3kH5DM6zaNr5iq+JdhBQa5kdRf AtBRwMKM w3z6rH5AqovF8J2rcwoR4GZHKHjtRxbTLQSvFUxLqqW3a/auUiIGT2GZRg5Icxsx7RYpPertAuUz5KzGY+EURJ+aVCDWPZossgsCc+WUWac3fd28FQGN20qTZFwkl2rKV/2XACjuasQzqM1j4MwL72HJpDwvlSRz0DClMoB7NHRlaali4FStk0K+vEozXv5lq9DyvJCo1NXWh7aMjhR0e2FbaEYsQOhO3R8geGrZIsi6PxdnNsvflhuGi/e/aVZPAX5/7IqmGEOHVnjg9Oy5MXY3TcbbWkwrEcrPOeJU6IgJ7lfLPDTtDd1MB8O4By4had13x5bT1h2ag8Zk+CNS4ZmpswbfVVUqhdoyT63TVK92OMsHMX40A8uGKEtgclPuzMcxbMkbESh4UMvQgF0fHQxqnJHFBg23kirS+qEITZ9rNiMWdKLB8gT8j8w== 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: Some selftests need access to a full UAPI headers tree, for example when building with nolibc which heavily relies on UAPI headers. A reference to such a tree is available in the KHDR_INCLUDES variable, but there is currently no way to populate such a tree automatically. Provide a target that the tests can depend on to get access to usable UAPI headers. Signed-off-by: Thomas Weißschuh --- tools/testing/selftests/lib.mk | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk index d6edcfcb5be832ddee4c3d34b5ad221e9295f878..5303900339292e618dee4fd7ff8a7c2fa3209a68 100644 --- a/tools/testing/selftests/lib.mk +++ b/tools/testing/selftests/lib.mk @@ -228,4 +228,7 @@ $(OUTPUT)/%:%.S $(LINK.S) $^ $(LDLIBS) -o $@ endif -.PHONY: run_tests all clean install emit_tests gen_mods_dir clean_mods_dir +headers: + $(Q)$(MAKE) -C $(top_srcdir) headers + +.PHONY: run_tests all clean install emit_tests gen_mods_dir clean_mods_dir headers From patchwork Wed Feb 26 11:44:48 2025 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: 13992107 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 A25D1C021B8 for ; Wed, 26 Feb 2025 11:45:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 58899280003; Wed, 26 Feb 2025 06:45:25 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3E2C828000C; Wed, 26 Feb 2025 06:45:25 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0FC1928000A; Wed, 26 Feb 2025 06:45:25 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id D4036280003 for ; Wed, 26 Feb 2025 06:45:24 -0500 (EST) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 2B784AEC2E for ; Wed, 26 Feb 2025 11:45:17 +0000 (UTC) X-FDA: 83161915074.02.00F0B5B Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf09.hostedemail.com (Postfix) with ESMTP id 51D6314000F for ; Wed, 26 Feb 2025 11:45:15 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=CGbWN4J9; dkim=pass header.d=linutronix.de header.s=2020e header.b=bhuZL5sz; spf=pass (imf09.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570315; 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:in-reply-to:references:references:dkim-signature; bh=+tIB/mKrbgkR1FZXRW2I7qFNU+LB59/l0MfkLrZgBDg=; b=G2h56LCCScAVlIBWX6klWBWUFv59SeFARFSpKDHkFUZ3L/YBk4uQBkmZeEBUSgT4FuF6S8 GZjQSvWNoWhy8NcjzlovIZQj2ST9FeUPn82lsNO8SE3VEH+xWOGFg83yPKrkvYqLnm9M0w h6aA8OyakBFMHnLckhTVT0VrZsJYsDg= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=CGbWN4J9; dkim=pass header.d=linutronix.de header.s=2020e header.b=bhuZL5sz; spf=pass (imf09.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570315; a=rsa-sha256; cv=none; b=rMUaeIywGdAjcj3C4qlQAY2Aojfo3NscCpXAMo+71l9aZ4pvmhQHlZZ/rbEdbebzLJllad pacY6vBoHwXnvekRc/q1AQWxahBmKoduMyD2vsiwKZCPY3YAGBTzDge/6Cg4otAG+nCh1Z kujQf7yEXZCRI6PKElEbTc5HH1IqBw0= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570314; h=from:from: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:in-reply-to:references:references; bh=+tIB/mKrbgkR1FZXRW2I7qFNU+LB59/l0MfkLrZgBDg=; b=CGbWN4J9YC9gQ8VFg1RJ3j0QwS6+MDp5+Vg1d0K6/xdUSk8P/5jVl4lkjzjYeg21Ln2oPc NRXcQIZIMdiVDpEafvYjyLG/0FbBTHyR1Qywp0XTlu4TgIjzJGBdWCJy+q6e2qR03dLHR2 qIVm5mobIHK3AuxVd0RGLCSqqxuHy9Mnu79eP5TkQ3YjiSLl7t8S/PONktXMtxRh8Sxjy4 utFqh7lW66yJAWy5kT/08Uq0PEAehK4rl7s+1HipYyU47H8CdJNCIxFU2HVBlzXmioHPea kyNhxm7uOrHkd4OwbXT85jkwWFGGEi8MpL9R7AszlAK6DEhg3uqwUIOsRZXHqg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570314; h=from:from: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:in-reply-to:references:references; bh=+tIB/mKrbgkR1FZXRW2I7qFNU+LB59/l0MfkLrZgBDg=; b=bhuZL5sznPwFLNCRTYT+wLH304bB/beR5NLTZXOoHPC1GpGXUdMA3ElesLimSaaplKYvoh /8ilpqRBW8p6ieCA== Date: Wed, 26 Feb 2025 12:44:48 +0100 Subject: [PATCH v2 09/16] tools/nolibc: add limits.h shim header MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-9-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=1273; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=2r9nJga0gN/RLQi1JecZ+vj+TP6CqTjTd0CFYa5Ukqk=; b=UR2y1fGcblPNg0O5kcvnoNHTSKtyj3XWN7IytHuyCM71JEFzSt2H5e99rPFC0rsb8HCCsc+cq XvTFkUQ6lAbASxWR1nevyAGKs9n+hfYs1eH3HfjincxtnoNj0Zj8bNC X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 51D6314000F X-Stat-Signature: 8c1oie7oxeozetcf6dux8b98tbs5jbsp X-HE-Tag: 1740570315-391966 X-HE-Meta: U2FsdGVkX182xr7DGLUEfHxpC9j7XkqTOnN/azC13OJifRMuCTn/f1ZjAqqZ3uXc23vtyIl7ZwkbeH0fQEh+DowZgnBDksADmr9PVF65flhLvlMNgyrOlFK2/tdm8LcX6Y9/+5GkHvSrSd0rIsbnlGqSRO90IiYy1K5ffqQbD3KhFh1nneNnVouv2/IAYNkRQoeceK5H2rAUTVL91AJz7jbDN8QbOPAdajT8Wb2skmiwS1Of7+ndbSEV92EV0STy6zOoKD/1rJdIblnfRh57QHuEWOt2sHV5K4hDG8psZcuRP6PApPI3v7eOFc2aJk1aMlvWhTzqyDFLHN7pWMKIZRyVYScroj/tMBzaumQn/4Wb7hpphFeD7bVOBQE4g79WT3VMv7Y2onq/op57LqUEMOS++UwBVhfaNM7NjywuEoESxe6kVEUJVavlymtlr+DrRZ1EGc6bN1YKE3Ob9+jD7oI8gvPEf1JRVx2W/MNL4oyruxuEWj6451EnZEs6t3VyGFnqh3mQ08+D91jyF1RCqhJ0uT9b41GHbFzgZGsXWyCYrI3pCrxULuQQa3ByVr2vYEwGSfPCu/SPdJGVS2eBpt4AD7p3TTw/727mwhVz+HM97vBUKzC78sXIyJIRTlfSgzaqBVhpEbXFlMtl5zstPR61mn3K3ukWe+cU74lHPf/sQbai15paxXKIAalD9lrBqAxicvWqmKzfh3/YxggE/J1O9amqTqlthrF6qefFm0M7Sd/Bg2MpNBzgjdjiJt7DTSvKj3NMcN4U0UPX3Ui8jQHBgQ3pgPzSP/ah9lEz0ne7USNyAR5f5qDVg/hbtLQqjuvo6srRwVR7mn68jDAqMl5+sKFag3eNtozLawInv4+W6dBsy5DntqkvaNPq0kV6+CpaIcFREra8LBZzvsiuqHfeA6yiNqiHs8Dw201V3XqToyaxARRQUoT/zWdLB9CJwZr3l84Ubo5sahLAxcp DYY8dN1Q TWSNjMEjduIgTM1wvT1lcgC1pl73HMJ3R3X9ZhT9qc4GclInwKhRrnnyheHs0UtNJhIgpAZZ8LAb7/Z7nT+0BPT2ham79/dmjVuY9XOR05mtr75wGHNePw5APe+BMA38tRU1omBO5WpDLh2GA+3is2LRqxHpeAVzliyqRjh7neE5Nrkup1q7wVHFaFdqdl3LSWWwBxkq89Cm+v0oT0/o6M0dXygrDHcqruBxIsvBsiiokUlXxhVJxpSTxHYVCibeUWIC8uoEvXreb4eOF53d+EKoYmxMiSB4S/lVQ/+XvIWKusFpGxUGgeX77pkTs1v5ab0gjbilr6QAPeHyjzrHERrgJgBe9FI8hcWO3bADJCPd7bNHkHlgNsnRRHcyb0XaBajiuuz7TucfyzYGsAQlo+9m0OAW2CHNF8phr8Zeei2Pn8pQQQl4vKbvLjg== 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: limits.h is a widely used standard header. Missing it from nolibc requires adoption effort to port applications. Add a shim header which includes the global nolibc.h header. It makes all nolibc symbols available. Signed-off-by: Thomas Weißschuh --- tools/include/nolibc/Makefile | 1 + tools/include/nolibc/limits.h | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/tools/include/nolibc/Makefile b/tools/include/nolibc/Makefile index a1f55fb24bb38c1f49c653af5825e8bcc569a56d..c1299a053145786da89001a5f95f5527ffbe2fa4 100644 --- a/tools/include/nolibc/Makefile +++ b/tools/include/nolibc/Makefile @@ -30,6 +30,7 @@ all_files := \ crt.h \ ctype.h \ errno.h \ + limits.h \ nolibc.h \ signal.h \ stackprotector.h \ diff --git a/tools/include/nolibc/limits.h b/tools/include/nolibc/limits.h new file mode 100644 index 0000000000000000000000000000000000000000..306d4141f4d245ca3f801f451745540b0f7294cd --- /dev/null +++ b/tools/include/nolibc/limits.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: LGPL-2.1 OR MIT */ +/* + * Shim limits.h header for NOLIBC. + * Copyright (C) 2025 Thomas Weißschuh + */ + +#include "nolibc.h" From patchwork Wed Feb 26 11:44:49 2025 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: 13992109 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 E7A30C021B8 for ; Wed, 26 Feb 2025 11:45:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E44AE28000A; Wed, 26 Feb 2025 06:45:25 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id D634F28000E; Wed, 26 Feb 2025 06:45:25 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A486B28000D; Wed, 26 Feb 2025 06:45:25 -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 4769728000A for ; Wed, 26 Feb 2025 06:45:25 -0500 (EST) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 1D01E8134F for ; Wed, 26 Feb 2025 11:45:18 +0000 (UTC) X-FDA: 83161915116.04.6D87CF9 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf10.hostedemail.com (Postfix) with ESMTP id 28ABCC0011 for ; Wed, 26 Feb 2025 11:45:15 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=nasqugvG; dkim=pass header.d=linutronix.de header.s=2020e header.b=CWmvpnCr; spf=pass (imf10.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570316; 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:in-reply-to:references:references:dkim-signature; bh=cRuD5hbVHSSw/8cljIctKIY+Y3ZkYhQFJxv3Eq1eG8c=; b=x2vaCollZS1eaxxOZ6DNA7iMdpZSJMyCzg0nRUbYSu6RH0jlWoyO5fIpLWWpgfN9k0LeZF 4VRJCnNw7AmO5YIEd3xMkpS/Hy6aiDmPLWrXPwVNMM/oECK6sZKEqBVv9Oi6vTQ/PIS1hj SfjNU8+Dxq2zvQZsB3iBKxJaeKyd9VI= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=nasqugvG; dkim=pass header.d=linutronix.de header.s=2020e header.b=CWmvpnCr; spf=pass (imf10.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570316; a=rsa-sha256; cv=none; b=4FhKVzmKc5WR7wU7gdBorsOQpYnZSOe/jGElxmfYgFkKi0TKIbZ3rM+x/+Ox1j88ZnAwH2 fmS568ubVbe1IVzq/zUDdPVK+ujRoLkyomLkvp3+3fHLxi7Osd35GFBbEe+5mwXaLwJDv0 6iKJgm53FCQEAv5WvYHZePECvexzjgs= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570314; h=from:from: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:in-reply-to:references:references; bh=cRuD5hbVHSSw/8cljIctKIY+Y3ZkYhQFJxv3Eq1eG8c=; b=nasqugvGFKackdKOCTch+AP72kWRqEucxypuXDsMds9gPwL8RK61E3IAURJfFRwVz6qCFV borLyAg+H0LG9tWwXNBlUwuDFwYZPS4sMuMxBeAx6ObJr9TGjNFDhtRAWyulzmylyhWtwJ P723Y+vsU/GF2dTuLScSrd42stge6MnfiMB8FerpsLUDR/zDnvtjIEmaOYfykQmjZqPh6N 9J2wj71O+zBQnyIXpq2/C7y6QezLH5rhiXHdkKjY0lULjTCFb6/K4L75NxQ/9D4sys6/zp nDlUnoAgYdIMx/DPTHflxDyqMuOQYiBxugcpuMRiDOgqbdn4WR2SX8G87j/Qbg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570314; h=from:from: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:in-reply-to:references:references; bh=cRuD5hbVHSSw/8cljIctKIY+Y3ZkYhQFJxv3Eq1eG8c=; b=CWmvpnCrI4ggnNzOB2bFK5VZej2qGU4p7haIEM0fQFYcPsUdGJejZoOoBmHUpDnIp5RS2p vfN2Hj/oogOEL1BA== Date: Wed, 26 Feb 2025 12:44:49 +0100 Subject: [PATCH v2 10/16] selftests: vDSO: vdso_standalone_test_x86: Use vdso_init_form_sysinfo_ehdr MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-10-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=1895; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=C3WrIXo4pF6mfQdzvKKu1BjqdXgy4M3jnZi0dZUjrCw=; b=eQDHEgBbcQlTMN155d79X04vEswgzq72yKppWr5aBDgxbIbLYxd/IvNp2Y1YQ9/fNaQ7z11QT DAUfoLznQjjCZKLGqX216kBJX2mCS9MUbVbIRKbqrvmzEqOe0Ab+zYq X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Stat-Signature: zu7shhk371ws1nwikn1ebr3rakwo9ttx X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 28ABCC0011 X-HE-Tag: 1740570315-323039 X-HE-Meta: U2FsdGVkX19A//KDvooBeRaOT6VezySQdA50ggYhuTg+hBWoPnIjM9gvIxgai5/OdxLhE4q8ujwEVaI36JyH4q7Qhyp1jS4lmfXpX+ftQRpt3KzyZnEYMcd6zgMzMEPExMsxddEM0CaXHtBrCb3lyhOFnO/7kwlJ47JmIynw3qVjia+dewlKgb0b/wCSei+iZmL1KGgjd8xh30nOxrz4a3ErQeongyIT8e9ULbFfKGxv/qPhT4897HuXqEdyVWfRi+y7NCI6gmosxqWFcA8ilnA9/RnGy1XmKhZyC1F4/UMQIVE4bvIzK8o+fYQDIOFX4z1narLnKELVBxiSh6mPpR6B3ui9Co8X76Hqu9ZYOFfqPl4a/jh0IFVhdvonxp1Tk/FnukYymzJOrUnoclpc3zzIfaiaYCEaR9UjGdKq278fEwe7oOTRmRBPiElZBFbBDCAtcYr4EQlPC6xO91vP5Kbkio0yR2J3K63/Wc3hAEAR5bfoADmJILtd/aBxZsAXWX96IwVnw7ZjX9+R2fZSOCY1XFNHb2bvF0w2ZIVpgtHIf8FozPk65TtAOHYpaJkNdtlcaDvQc2SJgJeSgdE3n6fPOesQyvPh3BNycshn/1k+mEW6d8KdFLwzYaYpV6ty8YAFn0GEbp29IXJoSzh+dFitLQzqLrrL1ANmyVL7S2NYTbUqDNaZm2zor4jQmdY4YK1LD6y7qJxY1VBcsb8zW64a700lHh2MqJNwYpWUnBqD2spEg3GPgyRH2Jl7T6EdNpmceGe1gXeQJys0pIZ+zzYPhVoGA/6aKLYpaxX1/aLQQ2MZel3fvxBdRStGEDjkPqY5KkYwig1pZy1amaC8Xhc0/mq4FIm13AmCSTwkYq1nwkUW9js+XCe+IWn+0DIfP2bnX0JtBdnUHGCE9+ubqmMH9wWvM/g/yczNWJGEJcNytdh/oYLhAGrKjokz2TEhtI9/TuzdT6B9Rdfv/Ev +zhzREgv F0LoO/PYVk4LP+gepAswFqeXmS4aVhgCmCgj+vpdtRVzw+9xG1OPOuUa8Xu95dWJcUp5LqTEgpzC4OXbklmvluV3zKBVG0my505d0CUqbTWF1Hb6OPbixRqcZeQuME7reVdWF6ReRbUCIpt1yEVXIc9FjBH95gVbjEGkw/MEytJVcbbTOcYBtFUgEncdknqIby42knMn2ttUJQtRzeqhL6ogwpBG9iEgBtmm2CtoKKYITOvmb7VuFJJQ18Ni9TKe6uCeVlDGWm5pkTeUh4akfmgXqfczuYFfqW3tzGI0iuZfgY0mmSJt6WFeNQA7ybGjlkkrSmCWjdnw0JfeGmcSERT6wfCKTAqWBIOoRzKUGdqG7rPgXxjaUhtCYC6cSjVyl1RxjeOzkLlnGL8kwcMVUqwBXnq5uuhmMWZgjggEiD2pAG4DTHJQW0fjFYbsYovl/uNjntSY9V08UAc9wD5cc2cYVNPGRPgi59IxPHMah9cSTA6U= 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: vdso_standalone_test_x86 is the only user of vdso_init_from_auxv(). Instead of combining the parsing the aux vector with the parsing of the vDSO, split them apart into getauxval() and the regular vdso_init_from_sysinfo_ehdr(). The implementation of getauxval() is taken from tools/include/nolibc/stdlib.h. Signed-off-by: Thomas Weißschuh --- All of this code will be deleted later again. --- .../selftests/vDSO/vdso_standalone_test_x86.c | 27 +++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/vDSO/vdso_standalone_test_x86.c b/tools/testing/selftests/vDSO/vdso_standalone_test_x86.c index 644915862af8883131e5defd336f1bd80736fc0f..500608f89c66b5747e3d845ebc54e4c3a35b6ccd 100644 --- a/tools/testing/selftests/vDSO/vdso_standalone_test_x86.c +++ b/tools/testing/selftests/vDSO/vdso_standalone_test_x86.c @@ -15,6 +15,7 @@ #include #include #include +#include #include "parse_vdso.h" @@ -84,6 +85,30 @@ void to_base10(char *lastdig, time_t n) } } +unsigned long getauxval(const unsigned long *auxv, unsigned long type) +{ + unsigned long ret; + + if (!auxv) + return 0; + + while (1) { + if (!auxv[0] && !auxv[1]) { + ret = 0; + break; + } + + if (auxv[0] == type) { + ret = auxv[1]; + break; + } + + auxv += 2; + } + + return ret; +} + void c_main(void **stack) { /* Parse the stack */ @@ -96,7 +121,7 @@ void c_main(void **stack) stack++; /* Now we're pointing at auxv. Initialize the vDSO parser. */ - vdso_init_from_auxv((void *)stack); + vdso_init_from_sysinfo_ehdr(getauxval((unsigned long *)stack, AT_SYSINFO_EHDR)); /* Find gettimeofday. */ typedef long (*gtod_t)(struct timeval *tv, struct timezone *tz); From patchwork Wed Feb 26 11:44:50 2025 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: 13992110 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 768F1C18E7C for ; Wed, 26 Feb 2025 11:45:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1732328000E; Wed, 26 Feb 2025 06:45:27 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0FC7528000F; Wed, 26 Feb 2025 06:45:27 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DF54A28000E; Wed, 26 Feb 2025 06:45:26 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id B19B528000D for ; Wed, 26 Feb 2025 06:45:26 -0500 (EST) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 77B97121206 for ; Wed, 26 Feb 2025 11:45:18 +0000 (UTC) X-FDA: 83161915116.22.2DB1E64 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf06.hostedemail.com (Postfix) with ESMTP id 62273180016 for ; Wed, 26 Feb 2025 11:45:16 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b="mm50riJ/"; dkim=pass header.d=linutronix.de header.s=2020e header.b="gwEw/R+G"; spf=pass (imf06.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570316; 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:in-reply-to:references:references:dkim-signature; bh=6vZq6Mizd+5YJ4l7yIE5cDkh9TCxZxJ/8pRyPBqAE2A=; b=UNhtm8+k/k94+Wu/O3uAjcgAe3eeUBdyHwqjnincFQdekM0W8V0OqNcF37xjYMR9Gf9Yig TVd+wPZvRyGQKruhA3BvqH/KgCAkvnuPZQYiS38ofsDVg3QidA9Bq0u3+iQjYnZ+JYgwax zAXSwzuQaIaHrAdazjGcBAVhv/XsD/c= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b="mm50riJ/"; dkim=pass header.d=linutronix.de header.s=2020e header.b="gwEw/R+G"; spf=pass (imf06.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570316; a=rsa-sha256; cv=none; b=hO5SngIP+aVgkD6UDgcqCeCm1TCuk5boFuTsKzxRuYDERgtEDVdJplgC2eUk9yvnXz0M6e LEwk3WogQA/fWgm4tpSf7tQKXpZXcIdbXQJ1n2Q/xDMaH42PrB1+LcOVMeuOPsY9xs7avj gk0K0zp2iWuEHfQCVykN9TL0DfrCvGc= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570315; h=from:from: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:in-reply-to:references:references; bh=6vZq6Mizd+5YJ4l7yIE5cDkh9TCxZxJ/8pRyPBqAE2A=; b=mm50riJ/QI0hYXWmgp0n2Ceaq6y2i025mU/Nrb8myNu711a1XqRiDrMXNzqa7Tt1hRD1Ra 3iqNvW3MVDUfUONWeLBASeCGTSBeBf5FnRvFeaPh1cLl4dYaUYSM7RBRXh+VdMF95j1wV2 c63AcrZP4KXL+322jcLkogbb3//zJd6l9yQk5nYlNVrxglpvjW7HRyt+FWuDRllSmA+G0M qPRzw7MyOOPhErWVKSidF0ASRhEeBN8AQczBqVwWj/U0jwY1L48GK7ClkjIb/7Zp2D1o93 L0+qvX11dFa5cgTeP8Jr8YoA/47FzTwREZkTzGuku1pTPMMM/p5hKQLJNCCZzw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570315; h=from:from: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:in-reply-to:references:references; bh=6vZq6Mizd+5YJ4l7yIE5cDkh9TCxZxJ/8pRyPBqAE2A=; b=gwEw/R+GbXArirKPDsiQS2N5OssetzDHeesyeOVlrNMhJCwMZTg+UKL8OGaYLCPX6pvgSF z+NIf+s5ryqkapAQ== Date: Wed, 26 Feb 2025 12:44:50 +0100 Subject: [PATCH v2 11/16] selftests: vDSO: parse_vdso: Drop vdso_init_from_auxv() MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-11-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=1530; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=A1kWnuxSjddtYmSNb4mmBChj4pwVLpMyiEtralFeWbQ=; b=6Mmz3dXcabGtLn+Rg9aEA6+Z37gSWfeF8Jy/tPN9nrrE42fFeHYx1hDFmq5TzYJvJGLe1Yz35 bAGyI6jHtmpBF4EPpdiHgELAoUeTpUf5JZqzrj1TNwYpaxlZtzN0l3N X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 62273180016 X-Stat-Signature: fj58mmcrqnks58n3u5ti1se54zx7mqsx X-Rspam-User: X-HE-Tag: 1740570316-438794 X-HE-Meta: U2FsdGVkX1++y3l98oPx8hZWPyumPa1bBeKwaeQK2CZ39C0YW3+S8oRtMioinXvsHwHNLTxOksGEg81sAf3TinoNjeuPLcqR0B//UYJ5koG+uZ7Mx4a7WykFkFNPpnFAsuiqYXOsO1G+v+Jpw8aaJdiuZMNvSbYf6yWVxtujoc8HBa0bYnVDAm1bl0VmaLzcsxlHIkhi+DMAPh8+EiXulchJirj5aXCPOlsXSM2TN/kK5sfq5b29nwZRrClIlPjmnoWSn+GOC4drOlOFN2wPhUtt2olDV3GfCB8E2bPPX+GP1i7pFbDN/uO9V2ZL6wDJ2HbCDa+zZwNuci2Hri/UMrHWld8ktndbdy/bkiT8+fvY3Ffy3HriW3j5xlOnYHR/fYfN58wPSRbTguGMpA4B+xOV2y8lJn5zbmWXrNu5/uxmDUMM+edlHhd2kMS6/vMU4yC02H7oQq+ZRAhy/cnUGVdDHQ7AAkOr2iaK6i2URlAhnl2GA9CUv8OPczJ73SqO6W8DVNWVxaX5hP5cPF6v2C9crI0aY3nTmOap11hqogmcR6fpf5ibRNYlCv++k5rTzgumXeq3aWKYA7O914f1nCgPy42o+0/z2rT611BDEcFCR4UZXCaMXqrHLvhcEeYTqmBpW8W3O0mIJx7gDpAYE1rSglq7Yq2YREhwVBUE5cTPr2PB921B64x/LR+k4To8Y6ephBDz2M0cc82wEHTzp+P/rHjB9cXv+Ds+XbHUE8r5Jwsd+SYFt/itVim70KlFfZJF1A96lIMx2u9zIIp0HnsbB33NFsT+QeRHC4pAkjEJ4nNg1rxr0BEVg2xZ+1v+M/qpW97kwoU2O3cW4Ewe9bQ8lVdEkejvUMQyp/d0mkXoxBU9GeUzbMA14oN39puZqryYMg4a4g1fgG00TZP8blcNKf+bYu+O15M7j74Ci1RZO3e89advWsJJiveUOd9b+riYa7MJWpSfERpxDgl hyYt/Uo1 KlKTrpHS1a5aoCnjluNXBvi7EEfgdgy1jEple7nNpcjHVYANA4oMvo2t01zIsEevqfkqtqH36V7cHV0HCCT74RS6+tEb6/xt3rlodZfT+MezhZgxOGXGy/y9yub+UvVLPegfyiZPoXbg/1KyZlJpNyLhHdfgk/jL53arUcGOXDLhZSgT7+PcKJQZkXWXzoKHW3/bWNjfs+vSXnuPctaeGqQpD64nHj/hkcQ9Q2vI1WDEOqbfB6TpaQA4zyFIW2vG2nofVSU4P+K8UofswKSABqbTvlhnbDjRymObfsfF71BW+hvcL4dxZ0vjPMZ/lJMdtYBMQT54pqBSKlmlZqySQDbmzn+x5EXNhSaR8Ta+rBvK19HksxjIlkDX51/pLGjf8TGJPsFkjo4MG5Y4S7QuSl8v85AAiY+BfevKFAACJImuvLo+wMPzvnzd3tXkUpieCeuLLhqG7q0NYK2mZhordZfM0UKGzynzmos+7FHEk0QUDh98= 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: There are no users left. This also removes the usage of ElfXX_auxv_t, which is not formally standardized. Signed-off-by: Thomas Weißschuh --- tools/testing/selftests/vDSO/parse_vdso.c | 14 -------------- tools/testing/selftests/vDSO/parse_vdso.h | 1 - 2 files changed, 15 deletions(-) diff --git a/tools/testing/selftests/vDSO/parse_vdso.c b/tools/testing/selftests/vDSO/parse_vdso.c index 2fe5e983cb22f1ed066d0310a54f6aef2ed77ed8..3638fe605e80ca41b29d43c6ac452964eef35d56 100644 --- a/tools/testing/selftests/vDSO/parse_vdso.c +++ b/tools/testing/selftests/vDSO/parse_vdso.c @@ -297,17 +297,3 @@ void *vdso_sym(const char *version, const char *name) return 0; } - -void vdso_init_from_auxv(void *auxv) -{ - ELF(auxv_t) *elf_auxv = auxv; - for (int i = 0; elf_auxv[i].a_type != AT_NULL; i++) - { - if (elf_auxv[i].a_type == AT_SYSINFO_EHDR) { - vdso_init_from_sysinfo_ehdr(elf_auxv[i].a_un.a_val); - return; - } - } - - vdso_info.valid = false; -} diff --git a/tools/testing/selftests/vDSO/parse_vdso.h b/tools/testing/selftests/vDSO/parse_vdso.h index de0453067d7cd0d8b63f7d3738842f60370db813..09d068ed11f97f0c5c8f4e7b341f08fa261c9735 100644 --- a/tools/testing/selftests/vDSO/parse_vdso.h +++ b/tools/testing/selftests/vDSO/parse_vdso.h @@ -26,6 +26,5 @@ */ void *vdso_sym(const char *version, const char *name); void vdso_init_from_sysinfo_ehdr(uintptr_t base); -void vdso_init_from_auxv(void *auxv); #endif From patchwork Wed Feb 26 11:44:51 2025 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: 13992105 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 EF011C021B8 for ; Wed, 26 Feb 2025 11:45:24 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B5BEB280008; Wed, 26 Feb 2025 06:45:23 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B0B58280003; Wed, 26 Feb 2025 06:45:23 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9AB6B280008; Wed, 26 Feb 2025 06:45:23 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 7EE72280003 for ; Wed, 26 Feb 2025 06:45:23 -0500 (EST) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id D360C5366B for ; Wed, 26 Feb 2025 11:45:18 +0000 (UTC) X-FDA: 83161915116.04.1C357BC Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf16.hostedemail.com (Postfix) with ESMTP id E13D818001B for ; Wed, 26 Feb 2025 11:45:16 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=bcGSb3SQ; dkim=pass header.d=linutronix.de header.s=2020e header.b=fqvj2xz2; spf=pass (imf16.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570317; 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:in-reply-to:references:references:dkim-signature; bh=MOyFPIEiH7gm2OvTiVE+dNl/7Ao4pkwSxETN6MXhZOM=; b=KpSyr+mlqzDA2YWJQRhLZ1nyIDRPTpspZ1LVogw++wmlR/PNfXYB9Kr2umY2urRV+uke+I wGm6/8rGN2xcqQj77C25hoJZ2zkegeOuMIrC8aZedn0kRwu5tTBLJKwjxaMsaY9BDz9nS+ fvvRC1gBaOK1pOO/c7KMyygq7jeweLY= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=bcGSb3SQ; dkim=pass header.d=linutronix.de header.s=2020e header.b=fqvj2xz2; spf=pass (imf16.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570317; a=rsa-sha256; cv=none; b=UY922tf2OZSP1uWqhMEWrwRcWCAbcD+Noo0CkRT1dDNS3k5aOFcngCZ4OxlL5LsKVJNw8h 5+IB64DpqJE5t5RRNbXXnS8kRzi6fXRp+FxIlER58XLlZsHFHfROH9bJlqxI2rg/bPoOZD uH7Z082Z1B6KWZyhCP5b17oxjK1ZlQs= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570315; h=from:from: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:in-reply-to:references:references; bh=MOyFPIEiH7gm2OvTiVE+dNl/7Ao4pkwSxETN6MXhZOM=; b=bcGSb3SQiYGMOQ1VcKhYKOTrklR98D9VpgIchlARBRNfaI5sacVObkXd7dN1ZkhOKvunow mNeuEngk3Mf+7cDpevxNf+IwDZZdBgqG3QJ+TiUzrKG8RehOC1YJvQMzzJ7MCLRUnww1ii 0fkIRJOhubwv3TMvN6TIaQBaCmEXG9EFcVR0sk527PDeOwymkNj6xQoWx5+qJrJY/ha69f 1NYUiWFVSfS76ThI/0ZEJplxPmmB4diFJVHA0Bwg2upTJp3GSg4lDN9Bn63yD53LqB8TDB idMC554DjsFdYljkY2GT14KDJ5pkDlkez/jebzEgHzILbJBUIp3bC8qigg1XmA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570315; h=from:from: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:in-reply-to:references:references; bh=MOyFPIEiH7gm2OvTiVE+dNl/7Ao4pkwSxETN6MXhZOM=; b=fqvj2xz2Y7LBfY2kgrkILXYe7OkS3V+0WNM5iI5zyLqVWz4ncPsj5Gug6+BdviZj1p19ht J9oq5i6iiypW51BA== Date: Wed, 26 Feb 2025 12:44:51 +0100 Subject: [PATCH v2 12/16] selftests: vDSO: parse_vdso: Use UAPI headers instead of libc headers MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-12-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=1432; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=NpOQuxLd7KblcjFPnaDO5YLxwLL0GxVqW0hZLzvIMGU=; b=BydQiC7WSVdw/x16VGHd/isTYEFPQRCC8tWJqgc6V5z56jGxevn7QCMyZsO+B05AJDzv33MAK PuOScLjhZV2AIyOKJjKaNG13VKt33YtjRyhTvRtCC08kinDMNFqnNh0 X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: E13D818001B X-Stat-Signature: ctute755faicjgxbcqcdi467wcc39a81 X-Rspam-User: X-HE-Tag: 1740570316-393207 X-HE-Meta: U2FsdGVkX1/q/HO5Nlxw7djLnmyl8Rp5qxo29Cs+FbPExFUqJa4UFJ3lFy41Klwl9yCEYb76LJXtg4F5qH6Z/HNwNESOk0T1Dt/AzkYxswP5q5EVCXEmoeVVN4S3MsXeJmpTaENgP4MCQm+POji0kD/IuJUVq6GlHmHjEqiUmxf8+1mIJyqga+sgLOI/2QLbATV5/ZB/buILvHSGoRNXmvHIVBFqZQsyHIPN5Ld//BcZKmDk2V6ymrCLwAIylLr+wzA8pdFNGbF1VeW6tUNodAScjzfcVjaoP/fWp9dif0QAujufiXiPgcuKVtMU3vXmqHOo0z36vDtS4BckLduer2TLIomT40++zeAGuNdIJGrQo/qdQWr+6hJYKn8uobY8j8vd5NHbBYDT1hafFaDkeQ0vLkzPppNXKQYhNo/JOyf4dli6L4HH7AC57nfhIstAy6ScabadUrBmFGULXMm2LdRr+bZRsp7Vr/nJax9MDQfK/lKjXNZBTCqAW8EutJzKzt/hh35fhZb739gJU4mSBytrSInx/eusmBz0LXN7Zs4PB9NPzULPU8LMMJMggzKVl1rc9hogLYIkeYI64vKZF4yDhXcYQZecRfh4C0GFo6vyWjiSHt1wY7BIN8LgzDgAbYpPSogXyU6STrMV2iJwWwBU1JS0yyIwG6upUH77zZ9u+97vaMdd+EjKfUlVSAIRHpeDQRsqw2M66ms705/qb/uDT+9BNZs+4HApASHmPY9nJTRU9ho7K9/MlGm4mPGiPYuzaQcow0aB7oy7+NhBDvZT3Hh0qCifcWZhPMQNAk/hP9YcKGXezyfug7ntyIcf1pl+1HN2wP5l1S4afkXLn8rnA55C0mtYBVQzv0F/XktCyVwLnvx9tpvRSHRRLy447w6twkMG+Hy73rQcFhzQK3qnnFAE6OL84tC1vHWXoiOySdRt21Wv1qMycdaXdCgw/7v7D3prYvAg096Quum 8MemqET3 a+D0O5kmqoyY2k2/ZBfFlhyNRPmouXzk91YdfmX3S1bVjmdyA/L1dYAUNxz+iQ/fsf3v5+aNCkY20EvUD019yrFyPgp1iAJUpVhW/JuxI/fIRiY0pVefUyIkJGNGOo1l+Qw8/HkKdzaRrYpNq7r1yOxnGlVZg66O4LGC7pOtw+7eSNv+Na3tz8o8ie8MzpQcQQetoKXJ5a0uDsOObzGm0b4W+Z5dUt2Niryzme5CjlYpG8p8VTFq/AlKpZvcokOQug3Z+OItx2kF6qL4yrzUQVJ9QXhRrfJ7OLhR0AMWYieTevQ6D94vZqYUimS+PepSOZUs98UgAjiJ8rte4AxN2Z5s+k0djfChbatDUdMYJRMSJqNpaphCLIU0ZkxS0p6QjfxxZAxfrwIeD3WYcQsxNbsB5Pk3AmOAo1Rm/0yEfSegGXqEYCMBVqSjk3vTF23dQ1z7SaXSzVy8XfB+eHU1HUWwSZfMo/CvI1cs9pIVRnzSheDI= 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: To allow the usage of parse_vdso.c together with a limited libc like nolibc, use the kernels own elf.h and auxvec.h headers. Signed-off-by: Thomas Weißschuh --- tools/testing/selftests/vDSO/Makefile | 3 +++ tools/testing/selftests/vDSO/parse_vdso.c | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/tools/testing/selftests/vDSO/Makefile b/tools/testing/selftests/vDSO/Makefile index 1cf14a8da43803249f72fe1b09689c8834806986..bc8ca186fb877dc11740c37f1e07e45e84c2ae92 100644 --- a/tools/testing/selftests/vDSO/Makefile +++ b/tools/testing/selftests/vDSO/Makefile @@ -19,6 +19,9 @@ LDLIBS += -lgcc_s endif include ../lib.mk + +CFLAGS += $(TOOLS_INCLUDES) + $(OUTPUT)/vdso_test_gettimeofday: parse_vdso.c vdso_test_gettimeofday.c $(OUTPUT)/vdso_test_getcpu: parse_vdso.c vdso_test_getcpu.c $(OUTPUT)/vdso_test_abi: parse_vdso.c vdso_test_abi.c diff --git a/tools/testing/selftests/vDSO/parse_vdso.c b/tools/testing/selftests/vDSO/parse_vdso.c index 3638fe605e80ca41b29d43c6ac452964eef35d56..200c534cc70e2c2381fce3be5c0ebe4cb5675e84 100644 --- a/tools/testing/selftests/vDSO/parse_vdso.c +++ b/tools/testing/selftests/vDSO/parse_vdso.c @@ -19,7 +19,8 @@ #include #include #include -#include +#include +#include #include "parse_vdso.h" From patchwork Wed Feb 26 11:44:52 2025 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: 13992111 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 CA5F8C021B8 for ; Wed, 26 Feb 2025 11:45:39 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 607AD28000F; Wed, 26 Feb 2025 06:45:27 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 58F8C28000D; Wed, 26 Feb 2025 06:45:27 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 40552280010; Wed, 26 Feb 2025 06:45:27 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 0BFDA28000D for ; Wed, 26 Feb 2025 06:45:27 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 2ED808135F for ; Wed, 26 Feb 2025 11:45:19 +0000 (UTC) X-FDA: 83161915158.19.086268D Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf07.hostedemail.com (Postfix) with ESMTP id 6963F40006 for ; Wed, 26 Feb 2025 11:45:17 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=pkZldx7g; dkim=pass header.d=linutronix.de header.s=2020e header.b=3nuVc8yk; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf07.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570317; a=rsa-sha256; cv=none; b=KKnNpCTCoUh616VJsyQnDC2EMmjxLUQty82NrD92ZAyqFYF/McHhXflB6OnFaFk6iokMBl VjK7+ecy3cDFuI6wxQjIm+MWTA4o+44ksNL/OhY9x6K/Gocrlz4qj7ekVGxCNGJg12+8CX AdFUwlT/WHp9rmvNXAUuTkAIHag+03o= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=pkZldx7g; dkim=pass header.d=linutronix.de header.s=2020e header.b=3nuVc8yk; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf07.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570317; 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:in-reply-to:references:references:dkim-signature; bh=tIWdgZoCmwWBnzk969udACPDuwBISkKWyW+kvFZi0zY=; b=0TI59WET0D+bg8wdyc6S4E/jLCdSpTWzZnmPttWdFGwt1gugBCAPzOvYQDj/cEYvNYfHqF 9kyQFQeL2JfRTWB9sou9PjhKYR/HktvNKPMQmFaE8GsjABSjwR8itdZZKtkaG5F21w6Tt2 bxMGl/JC1m8HkZL9mVuoc+JexvcMtjU= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570316; h=from:from: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:in-reply-to:references:references; bh=tIWdgZoCmwWBnzk969udACPDuwBISkKWyW+kvFZi0zY=; b=pkZldx7gjJAIiP6Nyp/tpg4NYTfib6x4vgodgj73oB+tPwbKvV8NdIF+2BJJvtycke8FpL h9NqNmmpoAbu7pXRZMFVs2F+7ukszsBgdWA2HO+A97PHCQ4i0tcmmqTkuEMyeDVVb9VE6y iIiLUM6KYyakr3Wm6aZzfULArGCHGPOjkVaX2FwHppny4NsBoYEJ9wMCcDBO4VOMVOeImj dIPOwKZ4GOIqcnGEIpsUM5rutMjfaNbwiI0TfDsPCNbFb0dFeOhL3DuVz/tIjtTQJIR87a X7OO8cPAxnZmy4vyy9NhMTejn2RHhv8oNi/fLToBjWGlLvEuiral2C2tbhbCXQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570316; h=from:from: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:in-reply-to:references:references; bh=tIWdgZoCmwWBnzk969udACPDuwBISkKWyW+kvFZi0zY=; b=3nuVc8yk0FkiZuhMCvs0za0GLuZOJLXEmd1sfgMJQzXyaNSBugPsC+D9KDC575YiFhtpXW ZBuMfSYPJKNTl8Bg== Date: Wed, 26 Feb 2025 12:44:52 +0100 Subject: [PATCH v2 13/16] selftests: vDSO: parse_vdso: Test __SIZEOF_LONG__ instead of ULONG_MAX MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-13-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=1086; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=fJM1dVn7zNhQ0eUj0mWU+BrWz8rCvgfwxzZIAbjOWds=; b=6T6VWDZMcel2G6Zqb6mCesiA8PGT6B0sNETzWQ66Mp/5lSowPPuzzGpKaqlAcHkLRbfII0Z0s Syn1yJLgRIeDf3EJEi1iCsi/So3t2zJFCJRojcc15ZDIoqi2lQC5yju X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Rspamd-Queue-Id: 6963F40006 X-Rspamd-Server: rspam12 X-Stat-Signature: ieu3sos7ig1dc9un9jmfutnxeyjba93u X-HE-Tag: 1740570317-245793 X-HE-Meta: U2FsdGVkX19La4W/NdlZ6bDr2AJ1tsGUPVq4qiVUuWGWBVg/5GZCoY5i0U8raVo7dyuL8NYjuzbc/Kecxk0WnI4TCJG5CRNwHzzLnifRijFA5RFiRDANuUOvYTqus59OWxzEw7dCDsv6ROofgzvdeEhSxEXND69gkBoCkQKbXLlBEvD2f/5T2cqGZDMDYqLZdjYFYe026hNEVL2jSsumPTpqgs8/9n3MolJf5q/fnvNNo0S8HBa2R4I23QQbyXH2U1TI3Q5BkCNJkr8bnIK0TUb34edhRVjpf5YyDDI4Y+5rFkAb7Z8D2ky8SqVfts8QIn9vXpFdDLKrQLUFFjDGDDoOWJSIgWamv8gfkZv5okpUekpSU+wJF+Jb8yY88JHPOUH1+9lXD98cG8E+KJFmSNO5xC6Kg6SvLIRsYQWUjgV1EXv+6jVCtLPOpRE75aFPxE7y+3gs9R8m4QT0nffcMfN686XxIQHKo+eC2Utvs0CnZwZISA4caQRlDZ2MVmH6RFXqQLt4CTpOPBVZKK6ShbQ+zfmlqaRdMq2ydA/Jmj3/DoR5jUqF+hnk7YzHHZpOumeVrHMdS45FDYd7IPZEVJisKIKpnOZSS8gFbj1a7xY1KuFN4DFrcr6Yd5tu9bEhmlP/08bXCWLWNKZ/beQ7xJbQj5OqJJw7L2rrVWv4AcPUzTUTJXlNSmbKjBDS+14wd/Plr/mvqSIIHLD5NB5XvNwUjwR0EjCCDQr3wtgxhAgM62eBNMjFSf9gkAP+9g5Nol9B82ZIwB5GSix3KjaPGG71GSV1WwDMhgaC/jsK82ob1gaj3USjAoxns6jydk48igRFKqk+Ye7k/gw2190KpVdFGAmaWTTF3FHRTYQrc5ZNl+UrU6uXOGLjPKQqsWnWB012Ba1vhkyQod6aFxmQmncRoUl7mR8yrFtSsGuImTqgvRW+PKMTs3aRRGKWiXnBYpB/nbNL9SFxLQauWyd +A7ocAcM V7npxk4CFO3gqBeslRtXANZh90phhvE5J/oyWvV2qo7RjBn0KyERhncIPU18Ze5Qnh6UEdcHcAe7l2SRHUsK17jdhpUsqDH1d65BY/H3e8exMhvidsl1dAMo9KZUMc0GHeTiFbuhN27NqdxNwGn0jLigN4vdvBhYMz4aM6UXDM05Bu9EHF4Be6n5fbg637GeWEqOEglTxboxIVaL8Ba9ZDFJdYf/m+YcVFqLq0t3Ht4zvMRLbyH+UwuUtBl6ZVpD6PzQUpDTK4ELpbA1wVFVi4FipjSnxsHr9boDIKj/qBeH+UFjzfMLa9luap/P9d0FLyEpTEIheo5K9vF/R9RZUhpBRRDjFsaTSVBgt+frNWO8ShAN9HX3EP/LGT4jJxzBOKnDaUWdlS2hoE+yMdhAz78udT4+psdnUioiXD9nZQvxgt+tR5Cx+kftLVUFU0VAGXMJnaTATCK90/hsvGCXxOiQ/85rL53SYiUdOd2agjIpEG10= 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: According to limits.h(2) ULONG_MAX is only guaranteed to expand to an expression, not a symbolic constant which can be evaluated by the preprocessor. Specifically the definition of ULONG_MAX from nolibc can no be evaluated by the preprocessor. To provide compatibility with nolibc, check with __SIZEOF_LONG__ instead, with is provided directly by the preprocessor and therefore always a symbolic constant. Signed-off-by: Thomas Weißschuh --- tools/testing/selftests/vDSO/parse_vdso.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/vDSO/parse_vdso.c b/tools/testing/selftests/vDSO/parse_vdso.c index 200c534cc70e2c2381fce3be5c0ebe4cb5675e84..902b8f9984a1f70049d46bcd4f199df24f507dcb 100644 --- a/tools/testing/selftests/vDSO/parse_vdso.c +++ b/tools/testing/selftests/vDSO/parse_vdso.c @@ -26,7 +26,7 @@ /* And here's the code. */ #ifndef ELF_BITS -# if ULONG_MAX > 0xffffffffUL +# if __SIZEOF_LONG__ >= 8 # define ELF_BITS 64 # else # define ELF_BITS 32 From patchwork Wed Feb 26 11:44:53 2025 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: 13992108 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 4EAB4C18E7C for ; Wed, 26 Feb 2025 11:45:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BAC1628000C; Wed, 26 Feb 2025 06:45:25 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id AE73928000A; Wed, 26 Feb 2025 06:45:25 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9391628000C; Wed, 26 Feb 2025 06:45:25 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 63A9528000D for ; Wed, 26 Feb 2025 06:45:25 -0500 (EST) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id D3A47B6668 for ; Wed, 26 Feb 2025 11:45:19 +0000 (UTC) X-FDA: 83161915158.02.CE1729E Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf24.hostedemail.com (Postfix) with ESMTP id E0E24180007 for ; Wed, 26 Feb 2025 11:45:17 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=Cz89Id9c; dkim=pass header.d=linutronix.de header.s=2020e header.b=J3vBFrZE; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf24.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570318; a=rsa-sha256; cv=none; b=p1GE1P6rpXm1lecQbdq6jUbn2PZhmEH7cswF2cK4Kj4AUeLGOyGuq/Bv5UKhvPnJe8IJYB qOUgQwCT0EU4YyUT7fIpWe8IjGjHZlxyakCE32M7JuOvFN7f5x+NABKSpt9Kxg5Ibk/Odh q4t1zNJGrr3Bag53zri0pBsZ/CPd40w= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570318; 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:in-reply-to:references:references:dkim-signature; bh=KmfOckZ/ezvQbsI8oO+Ny3Ym1fUd+U8v8PjgJTjlhxI=; b=yHWxcPQHiuo0cNqASADvXZUnk1Y0RbNRp8XCwBk5b+5ERfCkOlMfwUHqryVchDfVlXMn+l aphRdDiyZSxxURcp/Fge32VFyJWi7WPCRSq2FSa8zhCBvtPlVA+9eduVOj9bt9gdbhzK4b YdZkk4IySEWHqYLmpzq5RCZJWhPvQI8= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=Cz89Id9c; dkim=pass header.d=linutronix.de header.s=2020e header.b=J3vBFrZE; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf24.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570316; h=from:from: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:in-reply-to:references:references; bh=KmfOckZ/ezvQbsI8oO+Ny3Ym1fUd+U8v8PjgJTjlhxI=; b=Cz89Id9c4ksgUOgosrPPNmwyzc5OKRgE9qa1PugTJjc1cFpW9PuK8csLf7OB3IAY/+atTy hI/yr4MQ+kKIXKXRiQ9AXIENDMON68EnXvSPnTwm5lA67ZNS4fuGaWhEHisG4puxEmWpw6 LYUJzBPLthSFjGItdaAbEG+l8Q1kVSLGzofdX0MT9B7MLBVKiFFNZrCLmMWN+vyZwGJuOe 1MjWYMlTR6L67MoeHJySswLdQGCnAix3nrNitijKTktwZ0TXNUmrd9tYwvM7FqUdYEET62 4dJp098YriaYtQbVR5ZexqGvMNUXybnnuHIOZeqMhJXt442czFbaSrEJEX+3/g== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570316; h=from:from: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:in-reply-to:references:references; bh=KmfOckZ/ezvQbsI8oO+Ny3Ym1fUd+U8v8PjgJTjlhxI=; b=J3vBFrZE7Gqbw7nLy2FHLopfTbyhb8kHRu8GOflxPHt+K1mwDynfrmzJHe3nRahi4IoVcJ KzHPP2kN6U0BEbAQ== Date: Wed, 26 Feb 2025 12:44:53 +0100 Subject: [PATCH v2 14/16] selftests: vDSO: vdso_test_gettimeofday: Clean up includes MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-14-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=803; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=WWyAjd0lBF4CXtwQtc/ysMPL9nKJJ2TfKtJWs4lpBX4=; b=+fuDixwMNSldXS0xZq4UG3e35Jkdqz3L8iCNemrw4+F22qokhU7Kj+KsVf+lfrLCvsyk+iW2X qeJLhMVLb+GDidiqgXjdZQ56hlRiXdMtCfRrci9t2Lx+m5fYoikviHj X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: E0E24180007 X-Rspamd-Server: rspam08 X-Rspam-User: X-Stat-Signature: 1woqpfyfphgd6zxwyzphsen1ewbzxbg6 X-HE-Tag: 1740570317-502065 X-HE-Meta: U2FsdGVkX18AFQLyBB4HgE7V7Q5Tym8UfpLmZa+WiOC4DygoH1HqlYUPLZVKxLVzAR8DmJi80n4jxllbWQSfu6MukuFPsHccpPTurVkt/NH75UIrpylpSC9VXUUQURyifgiRq9lQDnogxtZPpnZA0DwNRxmK+dgM2qNp2FMpW/la+/F0g0Hs/kBc1TRqsSKfl6njFD7fnPeKiErSJ8CtqickB3rjJLcbLMH+whBul2n8EGWSikfTJn8taTm0WArOq7jgawtrOI8BCAl90HHG/dokWgc1iqfozHiJqkjjM09tZpSPoqKLUuxK4iltQ5yP9Cr4H/6EPP3vMN73w6u4b7w90NbmNDO7Zhx7GnPFYDfnpH870vmVFooF6BjLOTmCQnWpyPGS6nqnuUnOB/Si0TnBmH38r3SiOlp9nJNne+9pEbYdbhYNVqs8INaDwx39N4Sz2/bpct9P/z1YNd8gEfF+q3rWnqiN8h4TbZB446BYVESQ3Wzq6maTae4hB4+x0pjcXIUF5ZV/bW6blytq2urwfbGq1QrtWG35cYCfSWhOi6P/GIpGtHi9rEyPk5sTE6g7vKnSfR++T+a6kLjrXTOGPaW3NKDvijDxzDp0E3zkAnlTwd62J9EDWYZ66dQRRoYSGqTY9Pk7T6JD0armAxqs54BNfYoxU2L/feL51CUqYNWFuyjYBgbKMIjThckhVKudoKtvaER+7zdK9uAQ67r6yvinhKIfC3V7xqGDtoFJjZA17RQ8JaKrm2o/sVHRuwvqxm2LMeTvI8R8jfV6gbAPYI1yfeNVbEY5GVHxNA1Fmk0PBbDqHpr8bUdDC0bnBoS5j6/DCtaiD3po1zlpIfYRRa8QmL9yoJJUAfSdZXKnIWGr0hrWUheq0m5lVFlYyZiWozZItUxgIauTe6JLMlAeXJ1UaDmYtwVwBnejocRk6A03JfuRDKRXpm8mtIpPym2CLNolL8EciHk+yxB ISyGEQNq NwNNN3DAxoPs5EavuO8/uDdr3VA/tMRDOAt/xvGdPkmusLcGy/KGtgfrSOjJy99rpuW2k8NgSLVE+Yoju3vQQECEznjWto57HzXYs2wYY1VCXJz6m0Bq4KEiL4KHIEXeAgWB+MSZlXySg45oOdU+Qf0aJLIaiKp4R+/rN5lUWtHQFEL2QRabX9h3zRLedWlfUefd2blMIjkBXHKq9sKxuR4xTmaoZRUBWrpBaO/YS+RR1YUS2WY1ABgtC3n9ubODwds2wvGM3jGbRQWFaXfqylSZeS+uLdx2yq8wGt9DUGW7EkAAePxRplpzAsHykObTYmf59xpV12IUlzWNOtSZ5RJRQfwX9KzAbBYXw9j1BSrSRdCr2PfKMOqwngn2YF9UdLkwcSp9fY5jTmJNh4q72t+o45sH2Bklkn+xsZDUrklKh1lIKfWuNrwWc91XLZ4OrsXPU6V3++f2QQOAwnoHZZTdgVBwE5pYA4jVcmiwcSUXam6c= 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: Some unnecessary headers are included, remove them. Signed-off-by: Thomas Weißschuh --- tools/testing/selftests/vDSO/vdso_test_gettimeofday.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c b/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c index e31b18ffae338c1576449b54ca7f84d9816d2ecb..636a56ccf8e4e7943ca446fe3fad6897598ca77f 100644 --- a/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c +++ b/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c @@ -10,8 +10,6 @@ * Tested on x86, 32-bit and 64-bit. It may work on other architectures, too. */ -#include -#include #include #include #include From patchwork Wed Feb 26 11:44:54 2025 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: 13992106 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 0ED36C021BF for ; Wed, 26 Feb 2025 11:45:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2D2A628000B; Wed, 26 Feb 2025 06:45:25 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 2321E280003; Wed, 26 Feb 2025 06:45:25 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0370228000B; Wed, 26 Feb 2025 06:45:24 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id D623428000A for ; Wed, 26 Feb 2025 06:45:24 -0500 (EST) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 460991612E5 for ; Wed, 26 Feb 2025 11:45:20 +0000 (UTC) X-FDA: 83161915200.23.31DEAA4 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf21.hostedemail.com (Postfix) with ESMTP id 703D41C0008 for ; Wed, 26 Feb 2025 11:45:18 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=i07d6hLp; dkim=pass header.d=linutronix.de header.s=2020e header.b=aZ0cAhZ3; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf21.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570318; a=rsa-sha256; cv=none; b=a61tsXyQ2t8AfeSvfqGaq/RB3e0oEShEh6hXKKYWVk6qCJ7ojy+BVgdY4pi8eOqHcvbdWl Z9G3f8gCSVJlC3P69HAfPY+v8KacKb+C4ATkmq86ucol8/gx+OyJMefMS5i3UwS1hPicOp i3v918hexPiZ/epYcTEJRtK/90/cYjk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570318; 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:in-reply-to:references:references:dkim-signature; bh=7Frurs6AseTy7r99TUsr5RPDF9RZSrY1kmlW1JOY/EA=; b=m4HG1L9ttwNf5ONB1EykWOESqSKQK9ln8Jme8MVccns/Z/WejpTCeBdM8HQVLI/H+7hi5W PD4EQTpIFA2WLsQxgBeWIJk3z2JM7XI0w1ls/DKTl9R4CTQhShl02m81PdpaTdA2Z5HQOZ hVvD/c7u+GGodkOliyPTPkdQwrryBQ4= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=i07d6hLp; dkim=pass header.d=linutronix.de header.s=2020e header.b=aZ0cAhZ3; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf21.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570317; h=from:from: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:in-reply-to:references:references; bh=7Frurs6AseTy7r99TUsr5RPDF9RZSrY1kmlW1JOY/EA=; b=i07d6hLpd8GRg/0WO5Jpo1GY+NkHlsL1doz1LXrPNrHTjVuF3KVkhCjK0VrhySrSxv4HSB qefSAed7+5iLZndx789yLs2chd71BICnRokDw51tpySQvtOQGSOX3Zozp/ngVM7uDeZ2o4 WaH59GBm/Som63p3aIfI9IsPiJfn03k37LbhZKPnNKycT6ftsHPyZZuuP0T5QoA26b/inI m0EOk6g19wrq/nmG5yn1T9ZZtcohpUsWiRo3wF/oqsKR4ChAygYS3PGha/Fz5kD76gANjw yKl1PPjmGXei2aSFksZQsyCI8Z0jgHq+Pad4HGy2Vosa5yzRudA3yRSSY1pT9A== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570317; h=from:from: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:in-reply-to:references:references; bh=7Frurs6AseTy7r99TUsr5RPDF9RZSrY1kmlW1JOY/EA=; b=aZ0cAhZ3vtmBKcWcSDLdrI5iL4bR3GxRXgPx2FX5cDJbHZNPpQjmNDpY4nIdUEQEOb02+u J6umpPJpSs00G0Cg== Date: Wed, 26 Feb 2025 12:44:54 +0100 Subject: [PATCH v2 15/16] selftests: vDSO: vdso_test_gettimeofday: Make compatible with nolibc MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-15-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=882; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=tbmVgPy5yB8VdfdnJ4tJow8kzco/2Q3QjZOCjC6QEJI=; b=i7Uxstabjdg7j+J9zoPP0U58OGXCZjkCegWTxPjKC3TGUAF7tp+8mShrhr+dffxZi3sMXHudr +5QpKEY+MERBDeZT4FYzTLcqudiLXqH5aJAYMfkHsNZZ3oltA+l4BMP X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: 703D41C0008 X-Rspamd-Server: rspam08 X-Rspam-User: X-Stat-Signature: 7k87s6caamyne7da7366qmfxijcou37g X-HE-Tag: 1740570318-785730 X-HE-Meta: U2FsdGVkX1/afcUpQBKRhDVDgoaAG+DjLiDGAt3eD1zD70bCDpYmBgqgsQ3+5lpS4v9LJN48i+s8hpbkzxPwHwD0HvRyvwPu8Dvyxox4WrUaWoidAo7/hBRRksFfE4w57/73GKHPHPxGXTarSzUOi5W/gRvTFglsiPHBlYO8gK5fStyTQhT1hhkfTpubg1+krbTPSTqpa2aK9JSwe+nPE2lQ0ngiw3Z3LnQOXTqB34ik2LHfIrUBoUkmyVctjB3KcOrjnPR2HrZzAwPorW0V8sF/UgEbH17kOL88Bklop5mLXUYesHfazQDWL6tMiH+oPxSpeGPFJeo2wyCWLvTSx8Gxt8WFAcJw3aAvSaZzNRGgTNdhureYMFoNfjy6C7ul0+TC1S8KpzvXbWlxxA5WMZ8hf6HYu3wgGFsuobORhqhx5z6cpyyxkCQ746MUGwiQJGorai9+A0mxU8g1VD1jK+vxa32bXO7Plh6TvCBZ6IpVLQZfDnq+Dez6EsWjdirhmeB7iyLni10X3/z8DO9gpoXgHL0CQgNBGYCosMNQdBtfLtEX+3XnO6OiG8rrKroTSurqN942KUFuuBpTUkT2VHIaynk6SIGX5u3f0G4dP71C1lzitdeEuk5wCu22SMlGevhTn1V2V6JHjHkjix9zE/7rQ+z5Oj3PXB28OseoxzZJz1Q5IMOy2u4g0RRE2Q2yO/hZlN4rXtG5GfmME+OAC0JkPNbNMHnjm6mWsavTH+4OYfLmotfjRJNz8veqiH9NVKLnTjl62TH4w/Bztbrl/HOnnfOQacehCbGwuKnt4+Mkw2S7lAoIOl/xRXmaa6r+TL5zZ6aaxfTOZ2li028EkvDtIicY+aD0NtLeX0ikDBDTbt91OpsZ/cn84blc5DhdKrmVoPzWR9WCU0Frdr74k1jpQx1tvjNT2kA8cjiVklwBfPGz+gjr+onRygOhwNVu1TFjFoHNIK0WWwVLJIW oZgQshWv 4dIkf32gvY7WCCnYAPT/YpL0Tnb6jlkiIR/5gI+6LvWr8RPb/b8y2WYcLfzkzCumogIkXI5bkQ19oXCqm1Pe5dW8XgLVk3IdW5ERTH7cVWa2HOA8B3BLhaqmKOnYDPKoCHh6FeyI3SEoGBzQOEAdUKz1X9yQFROpfdehVfrXbTgDcAHhEZ/LNHPt9jd7Bm/OUNrzBdbe3QQ4sZE+kA5YiXrCaB9vzSdKfI2zi5+wyEi1r7uvtxcLfXGPsPaNycHuu0Xo00vsi+Iww1/PYhvYOIeagL8alr+7rJbYtHqxalBVRyLSWyEInF6C2Lo7Egn1ncLec12OimaWUFJz8jX4WHkCQLApoGfc7CUtwLwxkHUIrZZPOcQ41WIxXlmEvr1mDxAz2VfC5w2MnHAVYI+9+xjr+lFhllqJPWVa4LvF+jhZJpHqwKjOxZcAbGe7GqVTUTvnXVMneRkfkf6qSZ0B36ebI6HUnjbpCVd55DddyqoMSJIc= 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: nolibc does not provide sys/time.h and sys/auxv.h, instead their definitions are available unconditionally. Guard the includes so they are not attempted on nolibc. Signed-off-by: Thomas Weißschuh --- tools/testing/selftests/vDSO/vdso_test_gettimeofday.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c b/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c index 636a56ccf8e4e7943ca446fe3fad6897598ca77f..9ce795b806f0992b83cef78c7e16fac0e54750da 100644 --- a/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c +++ b/tools/testing/selftests/vDSO/vdso_test_gettimeofday.c @@ -11,8 +11,10 @@ */ #include +#ifndef NOLIBC #include #include +#endif #include "../kselftest.h" #include "parse_vdso.h" From patchwork Wed Feb 26 11:44:55 2025 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: 13992141 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 4608CC18E7C for ; Wed, 26 Feb 2025 11:45:57 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B8664280016; Wed, 26 Feb 2025 06:45:30 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id AE55B280017; Wed, 26 Feb 2025 06:45:30 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 919B4280016; Wed, 26 Feb 2025 06:45:30 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 6E55D280015 for ; Wed, 26 Feb 2025 06:45:30 -0500 (EST) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 583B2A384F for ; Wed, 26 Feb 2025 11:45:21 +0000 (UTC) X-FDA: 83161915242.06.885D078 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf25.hostedemail.com (Postfix) with ESMTP id 3DE15A000E for ; Wed, 26 Feb 2025 11:45:18 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=z6TjlHH7; dkim=pass header.d=linutronix.de header.s=2020e header.b=ePCBpQFu; spf=pass (imf25.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740570319; 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:in-reply-to:references:references:dkim-signature; bh=wWWpuwHkmHsBX34pcGl1jvCG52qLLh0La3Bmm84Eboo=; b=EviJSsI0r7nacYp85m+NdQqDkf3aTdL2LGMicrW7HaNpAyqwA4FyGqFJLj6ESF/nPS+F0R dw2QuryXtfaVMF514Kd87Oxd43A22YnRcO/Lina+DA6BmsraVqhTP+ZSvnl5QGhd9Rtyp8 Huz2NVlyRW99eEOyu6x4ZTWcB+Te1nI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740570319; a=rsa-sha256; cv=none; b=oRC7SPebYI/qazEoRdcDY1qotI4I2VhSYGyV2fLVwK2xiEzS34Q95VFBMLVBh74ZlaXfPI iNcIvQvhS3D/9a5gY0rU8SzVlaQXiH0bBQm+C+7YmUJU8PpZNJwSnfDf6stOnNnylXJCTd zPULRq7w5yyEeU0Rib9dMk6RH2T0TIQ= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=z6TjlHH7; dkim=pass header.d=linutronix.de header.s=2020e header.b=ePCBpQFu; spf=pass (imf25.hostedemail.com: domain of t-8ch@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=t-8ch@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1740570317; h=from:from: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:in-reply-to:references:references; bh=wWWpuwHkmHsBX34pcGl1jvCG52qLLh0La3Bmm84Eboo=; b=z6TjlHH7lZ1yvQACxkUBSeF88geX2gmw7RWZCacGxPr2sRQOR9rrnYqWUY8hg1sWEgqnLM D3tbw/zZMz6ie8DGHfNUyq8GFRiFH2ALQvYNLpGLMuvlakqTKhV9Kiu3fNaQl6c7VDaRVL NHhNP9O22Oo6plwiFdL1nG2CyNh8eujBpWz8Ti6PYhqzfgX22sEwG509BRwlzMIIOTkEp1 VpwbmusJgrDdfnKs3sjBL5n8LT74fPdiiBfrHS3eM7gpA2D3f+1oXZkZZUJ137fDmdrKQQ VJZX47UsmqjfqWviEw/5yC+UNKH1hV08C+unPYqErAcy6ghWAfq5sFh9jeAckA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1740570317; h=from:from: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:in-reply-to:references:references; bh=wWWpuwHkmHsBX34pcGl1jvCG52qLLh0La3Bmm84Eboo=; b=ePCBpQFuVCPI7kKo7xL4IbbzOFHnb8yVFbLk6N8t7glHUWZvEjGry5gD2Zxl912j4b+cRu LZajh+Tgk+HGkmCg== Date: Wed, 26 Feb 2025 12:44:55 +0100 Subject: [PATCH v2 16/16] selftests: vDSO: vdso_standalone_test_x86: Switch to nolibc MIME-Version: 1.0 Message-Id: <20250226-parse_vdso-nolibc-v2-16-28e14e031ed8@linutronix.de> References: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> In-Reply-To: <20250226-parse_vdso-nolibc-v2-0-28e14e031ed8@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino , Willy Tarreau , =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Cc: "Jason A. Donenfeld" , Christophe Leroy , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1740570307; l=6263; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=io6sXt7iIEpqclAN5udDVtDQPsKQqT7YCXVo80AmeIk=; b=LBCJCe4ZoZWPxpmu3JiBTXNTaWR/a26u8+zfxnXFmkY3xUt3L/WSfzQvQDgSBu0Y5AlJ+I4T+ hL+sYcuyFjJARyrS90i7lBiKwPlq5W3oxf7p6fDI2dkgmGiNCpmBHP6 X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Rspamd-Queue-Id: 3DE15A000E X-Rspamd-Server: rspam07 X-Stat-Signature: zod34zntu8bqw1t3mnbfjwou3akjr94g X-HE-Tag: 1740570318-480637 X-HE-Meta: U2FsdGVkX1+WwfRM40kGG10TOBSWhrSLeGSE0DrIPJdVvhYd7pM8Ji+6Z5c/vZ9M1XUKqpZH55RvCYFk0LysNjM8jZ5caBLri2bq5mxuam1qHncYcTH6Xmey5PZsNgZpa10mDY7Jga0BBfyCW9uKNaR0B2V8xp47AuypRH3WLbmGZV7npbvnFLXuxItCPRJnCHx+y7lQDjx1bF6z5slP6tj/niD8whaExOc9e9EeiF76uefHbtoso1Mkjsovbu9xlaeOYsScZD9dTPFhVIs+VJfbc3Vr89cWnkgFqWO/k5nAk+s5b5cuXnjVUYAYOHhO/alMz3W7QxsXO6lvOTUmIkKtDV4BTi1KEsRJNAPWgSqSOkl2ob5WeS++BebzzwWi61qADkfQUgcQptrSblbBKqPguxusKuRAJsjwtgiq/p3fyu8G4YRV/i+j2BfySu2YxtiBGfEDD/iA9g247j7EbLuDMldO9OksyeRtPKwLmOLT7OgHpL5zWyggJei+0J7Xp3MHgB6NSlRAgxC60JDkOjuf4fTljwdaLt1pay17J+L3ijH3QgcXdQCKTBaSwKD+vZCw44l0Ly1z1WwOYAFJ8l7jpkGkGZUtMNTeaIOnaFOUMn5802VkjZLaz8CIjY38BmPodEmJ7DguBZR3m5ae9fo+qj2Oi1r1r+BbvvZTKy/jF2X2zuQwoMNnQT7qGyQ7x8FrbH924qXnw2av/bI6FfKNI4ULndV6D/uQYUFjl6V0hP1LaY2jSr4feIB4QXakl7/lILuXy9U7YSj5Ol7fqVK36R2+8F8YOCdkSirt8tF+oU4GJY+kcABXlsFSJ7bUU8rl0Ux/I5kCitJJQU1Ix+jU9zz2wBMrMzMfqUX5gnU9vHp92cqS5v/C7rF0ebLWcHHRsIdlDaEwDpNRcl/FlqdeQ94y3lQwkhyMQX76nJp0A9A4gllvRrLqPEYr30GqW3XlkZwYpE1I8KsTY+V MA6joUiM CLNBuChDfqK4x+R1w1SeV/0ZpHafWZDslFtaW1i+eKl7sBfT1kAi1/k+BPXc6RQ+MSqtDR1n0RwbSljDs4zYSOSsnWOB2PZaYcInr3F1He3exgEaBAmu1uYpGoN5UlhdMJeuKaufgXYntHHnsT2WhfKDZART7yeXx9QZ+r9+b5TaAD5Q5rgOiPeZvIX6EBHlKvfxDabgJZhfWT7EE5ArJLOXNs//aGjEu6J97KH87EiOec+KJAldAA8SjP/mw01mdo7YNVYXmN/hUpvWsfTrY9+y2aJt3x+AUzTajfjfgELQlpm8QC/HpiIbvlPwj4OSSB6R37r/Wx5gDDN57akAIS+w2ygdoRo/SQHm2WzrT+FUAbcvavKudyALFjuINpSzwYp0q24hNzVDLcJZWNGCOgemTRbC25lWVX+oBrV3LZWzNKxWxqE1YAhPitHUkYpzpYCpqk8vTn4fobqHZihtgs6xBbgGqIs3bidQlR+1i3HAJP1I= 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: vdso_standalone_test_x86 provides its own ASM syscall wrappers and _start() implementation. The in-tree nolibc library already provides this functionality for multiple architectures. By making use of nolibc, the standalone testcase can be built from the exact same codebase as the non-standalone version. Signed-off-by: Thomas Weißschuh --- tools/testing/selftests/vDSO/Makefile | 8 +- .../selftests/vDSO/vdso_standalone_test_x86.c | 168 +-------------------- 2 files changed, 7 insertions(+), 169 deletions(-) diff --git a/tools/testing/selftests/vDSO/Makefile b/tools/testing/selftests/vDSO/Makefile index bc8ca186fb877dc11740c37f1e07e45e84c2ae92..12a0614b9fd4983deffe5d6a7cfa06ba8d92a516 100644 --- a/tools/testing/selftests/vDSO/Makefile +++ b/tools/testing/selftests/vDSO/Makefile @@ -22,13 +22,17 @@ include ../lib.mk CFLAGS += $(TOOLS_INCLUDES) +CFLAGS_NOLIBC := -nostdlib -nostdinc -ffreestanding -fno-asynchronous-unwind-tables \ + -fno-stack-protector -include $(top_srcdir)/tools/include/nolibc/nolibc.h \ + -I$(top_srcdir)/tools/include/nolibc/ $(KHDR_INCLUDES) + $(OUTPUT)/vdso_test_gettimeofday: parse_vdso.c vdso_test_gettimeofday.c $(OUTPUT)/vdso_test_getcpu: parse_vdso.c vdso_test_getcpu.c $(OUTPUT)/vdso_test_abi: parse_vdso.c vdso_test_abi.c $(OUTPUT)/vdso_test_clock_getres: vdso_test_clock_getres.c -$(OUTPUT)/vdso_standalone_test_x86: vdso_standalone_test_x86.c parse_vdso.c -$(OUTPUT)/vdso_standalone_test_x86: CFLAGS +=-nostdlib -fno-asynchronous-unwind-tables -fno-stack-protector +$(OUTPUT)/vdso_standalone_test_x86: vdso_standalone_test_x86.c parse_vdso.c | headers +$(OUTPUT)/vdso_standalone_test_x86: CFLAGS:=$(CFLAGS_NOLIBC) $(CFLAGS) $(OUTPUT)/vdso_test_correctness: vdso_test_correctness.c $(OUTPUT)/vdso_test_correctness: LDFLAGS += -ldl diff --git a/tools/testing/selftests/vDSO/vdso_standalone_test_x86.c b/tools/testing/selftests/vDSO/vdso_standalone_test_x86.c deleted file mode 100644 index 500608f89c66b5747e3d845ebc54e4c3a35b6ccd..0000000000000000000000000000000000000000 --- a/tools/testing/selftests/vDSO/vdso_standalone_test_x86.c +++ /dev/null @@ -1,167 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-only -/* - * vdso_test.c: Sample code to test parse_vdso.c on x86 - * Copyright (c) 2011-2014 Andy Lutomirski - * - * You can amuse yourself by compiling with: - * gcc -std=gnu99 -nostdlib - * -Os -fno-asynchronous-unwind-tables -flto -lgcc_s - * vdso_standalone_test_x86.c parse_vdso.c - * to generate a small binary. On x86_64, you can omit -lgcc_s - * if you want the binary to be completely standalone. - */ - -#include -#include -#include -#include -#include - -#include "parse_vdso.h" - -/* We need some libc functions... */ -int strcmp(const char *a, const char *b) -{ - /* This implementation is buggy: it never returns -1. */ - while (*a || *b) { - if (*a != *b) - return 1; - if (*a == 0 || *b == 0) - return 1; - a++; - b++; - } - - return 0; -} - -/* - * The clang build needs this, although gcc does not. - * Stolen from lib/string.c. - */ -void *memcpy(void *dest, const void *src, size_t count) -{ - char *tmp = dest; - const char *s = src; - - while (count--) - *tmp++ = *s++; - return dest; -} - -/* ...and two syscalls. This is x86-specific. */ -static inline long x86_syscall3(long nr, long a0, long a1, long a2) -{ - long ret; -#ifdef __x86_64__ - asm volatile ("syscall" : "=a" (ret) : "a" (nr), - "D" (a0), "S" (a1), "d" (a2) : - "cc", "memory", "rcx", - "r8", "r9", "r10", "r11" ); -#else - asm volatile ("int $0x80" : "=a" (ret) : "a" (nr), - "b" (a0), "c" (a1), "d" (a2) : - "cc", "memory" ); -#endif - return ret; -} - -static inline long linux_write(int fd, const void *data, size_t len) -{ - return x86_syscall3(__NR_write, fd, (long)data, (long)len); -} - -static inline void linux_exit(int code) -{ - x86_syscall3(__NR_exit, code, 0, 0); -} - -void to_base10(char *lastdig, time_t n) -{ - while (n) { - *lastdig = (n % 10) + '0'; - n /= 10; - lastdig--; - } -} - -unsigned long getauxval(const unsigned long *auxv, unsigned long type) -{ - unsigned long ret; - - if (!auxv) - return 0; - - while (1) { - if (!auxv[0] && !auxv[1]) { - ret = 0; - break; - } - - if (auxv[0] == type) { - ret = auxv[1]; - break; - } - - auxv += 2; - } - - return ret; -} - -void c_main(void **stack) -{ - /* Parse the stack */ - long argc = (long)*stack; - stack += argc + 2; - - /* Now we're pointing at the environment. Skip it. */ - while(*stack) - stack++; - stack++; - - /* Now we're pointing at auxv. Initialize the vDSO parser. */ - vdso_init_from_sysinfo_ehdr(getauxval((unsigned long *)stack, AT_SYSINFO_EHDR)); - - /* Find gettimeofday. */ - typedef long (*gtod_t)(struct timeval *tv, struct timezone *tz); - gtod_t gtod = (gtod_t)vdso_sym("LINUX_2.6", "__vdso_gettimeofday"); - - if (!gtod) - linux_exit(1); - - struct timeval tv; - long ret = gtod(&tv, 0); - - if (ret == 0) { - char buf[] = "The time is .000000\n"; - to_base10(buf + 31, tv.tv_sec); - to_base10(buf + 38, tv.tv_usec); - linux_write(1, buf, sizeof(buf) - 1); - } else { - linux_exit(ret); - } - - linux_exit(0); -} - -/* - * This is the real entry point. It passes the initial stack into - * the C entry point. - */ -asm ( - ".text\n" - ".global _start\n" - ".type _start,@function\n" - "_start:\n\t" -#ifdef __x86_64__ - "mov %rsp,%rdi\n\t" - "and $-16,%rsp\n\t" - "sub $8,%rsp\n\t" - "jmp c_main" -#else - "push %esp\n\t" - "call c_main\n\t" - "int $3" -#endif - ); diff --git a/tools/testing/selftests/vDSO/vdso_standalone_test_x86.c b/tools/testing/selftests/vDSO/vdso_standalone_test_x86.c new file mode 120000 index 0000000000000000000000000000000000000000..4d3d96f1e440c965474681a6f35375a60b3921be --- /dev/null +++ b/tools/testing/selftests/vDSO/vdso_standalone_test_x86.c @@ -0,0 +1 @@ +vdso_test_gettimeofday.c \ No newline at end of file