From patchwork Mon Feb 3 09:05:02 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: 13957114 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 10B1EC02192 for ; Mon, 3 Feb 2025 09:08:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9AD6628000D; Mon, 3 Feb 2025 04:08:50 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 95CE0280002; Mon, 3 Feb 2025 04:08:50 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7FFBA28000D; Mon, 3 Feb 2025 04:08:50 -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 60258280002 for ; Mon, 3 Feb 2025 04:08:50 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 58AF5825D9 for ; Mon, 3 Feb 2025 09:05:23 +0000 (UTC) X-FDA: 83078049726.26.E0D71FF Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf28.hostedemail.com (Postfix) with ESMTP id 944C6C000D for ; Mon, 3 Feb 2025 09:05:20 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=zoNsH168; dkim=pass header.d=linutronix.de header.s=2020e header.b="dQiCh/Sg"; 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=1738573521; 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=riY1hSwrR3Foqv7pWUPaZUKwAETtScP93ZhXYjyZenmlvSTMiH3xOvbcz+4WEY46hEsrt0 oy09tl1v4E8d6xzlOZShcIw20mX1GiSw9pBGrwrigafEEOCqo3+SaqGbHsdXeyGbUnWkeq YoQX0JiJqQoozCbTsAu15IFS5uqNoYE= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=zoNsH168; dkim=pass header.d=linutronix.de header.s=2020e header.b="dQiCh/Sg"; 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=1738573521; a=rsa-sha256; cv=none; b=tksikppiCmU7B4eJP4Y4jixGKkjP9AKQDDNrkisFgYCe+URTo5Q0Nh5qzZo1vciQXcHp5m 9AP00qlzyh+ZUA/0KKab0kbFFHx2ALI009udIaCFgDq34m9MMopC2qAEXk2N9G+dWRN8Pz OOQyqX20RjWFvo6mVgSEbCz8N8h8788= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573518; 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=zoNsH1681N9Eilu+jpmlrd6H67exHHx840NRersYZZonixk2yo38qyL4oJzXRTX0CCBhDg 8qsZAYQm+27bS/AWWuprXH5VXYiVwLmJRJJm5sQFRsASggh6N2yOkwuh8Nnkr9MJlVh6qv VDp3mT/vLL3kFYuWN2aEdEmvGKgu5MpkjwUirsu7Ip2cnGxCazy9Q9qscaaFlaIGwr0FXT xTMnIlYR/hBkXE5BB+Eezd2gm1xSrB27mHjk0qTbd8hhNVTu94zx/3WsojVY1B/GaPPPxm 8oZjn5V6ifOvI6aWVXB8FtsceC7rNdVDMh+6WIMSQYQQN5nI0UbD183zqGlMDw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573518; 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=dQiCh/SgsPSRfDY6f/63PUhuYw/gLJsoDUfFCeBf7DmsRsV3NxAs/BfNh8PSR2PukMip5g G0WGODwQHG6PlNAA== Date: Mon, 03 Feb 2025 10:05:02 +0100 Subject: [PATCH 01/16] MAINTAINERS: Add vDSO selftests MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-1-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=675; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=s3dkTBDXdzo+I16hjaEXfC4T5xD6NlAF4J47urRaCBo=; b=uYr9YEYfr4f5M2OlWjkTyacCJaqcjW8RwNjmPn99DBIa+vugRIRyNAt3CNSRblw+rHiZsR9YQ JnikGKZzAkFByb1eYxgRSoAJV30as8oY0tGYFXPa57Za4PGFtNNzWww X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 944C6C000D X-Stat-Signature: fdesh1byu885ndjks96bxsxk3q6dmxi7 X-Rspam-User: X-HE-Tag: 1738573520-421043 X-HE-Meta: U2FsdGVkX18kqJb1EqAAKb4vVf05ldY8HnznSsQ7tNIxkhZzp0dTQAjzzzzFHB0WN5Ogo1l9VTWJFZ+YupQTfIbbyXzYxT/rNDLeYtVh+Jr29vL4rLRnt4jFP4/XSR141GHO1+dbhKWqmiJmLLR87gQCjWa1ybPabaZ8H16YCYIIRZZe4w6xZNHpxIV1+WP/TzRnxibx4FbKy5XFj4wjRW6111Nn3exlgsaxCnzsel3+m33t0l/St9xQuwfVPsbM/CdoiUzNZHk3A4MpeMetw8xqSCUxHCg40iKgptZNDyDU1A98uSjK3ZGc3KFr1GwgCfZJTnVOQ1UKucFEUUG/bW71mQNK1fkkOZl6CwMaFysqBeKCYPbwhBbyeRZ1lCMfVZifE+9G5lzhlOGxtuLQgBHuu7Yh2geyeJzmqg8c50TliIngiAMYW373GhTBF4cuZt+bP3aLgASl1XlyuMhBkv+7iHPhpYzKCuxxYRrbCOhVGR0hoUsZpHfRwx34ejKZin+7TCzTSt7tT1NibpVUNAsoXyErgAhKLTen/2211Es7K2oicPeyeaUhvgmXXk2LdGA54ccdI2OsCwhvMq5w0ENehBEr70zhydN53lbaayFsAPAP3ppjiR4sYK4RuEsXYyvBr7Ou9Y6FHcG5BCxwjRFS3/UhTI2pStGC8hwd1ODDVz3q8AO61P7yH/mYT81iIqfNJX2S06HEhzRvp4WRm5fpX52PlI0bBgl/OYgIaoBEfpAIdO/E44xGrmwv3ORrUQwwqPPJYPOPdRC/EQXLPt3D2DrLATihZkhzgr33CyL5cETeR8aXKyZtW6CnzEvo6UA0GtBRdthiSbTRAKT11RdXrYJl0ykBCd04mLatyWxrczGlYIVlSIuG+p0FZlNapbL7guUw4xGE1Dp8QLDVH4BbzmsdtBfnPZZtzY2M2crUGwS+YlEwZxmNDc3CQ7vLWywHcJmobDxvRIY2TXm 0s/r4UoH AB1O8fsvKvNMyinJbQiZUUAmSBpNq+WKWj1v8qrllHv/AbNy7LjrGRe4c/1Xx5dmrfXU9zA5ynim4woBAwlEd5tLfXwFJluK7RQdSHOoHuhsdodYIEWawGaIFs8awW6pDs9Ww/2o1ZEixW3AnYrt++O/Io5n99KZRzrpRR3Vq4kd30PFHVD+HksF8eZBOdIYS1+8yIc70vEuWdF4CRObeReqRkNE0mDJRWCN9qplH9VsInDs7D6ELSb1lhUzZAj6ZVZdiT14AxVyVXlKAm6q2b1zH9l3gJpZcXSU1KlzsLeIj0xmqyUL+k0FbE82flug0AZJOf49p3+xhC2aMbbLcdnhrOKfEPk+Bg8NmQOjQYfUZXVayuWGccpElHM5sY9PohwmkwYz988bq0u3luC4OTiBCc7QsoRTNOt4vvhIKV3zb0FiYZAlaFnQCnuQTh0F2Oez63eJNvMBxxicPAKL7HjHInXpkgTDk5tI3/THc1/fL3ZA= 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 Mon Feb 3 09:05:03 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: 13957100 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 7ADDFC02197 for ; Mon, 3 Feb 2025 09:05:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BCD446B0089; Mon, 3 Feb 2025 04:05:35 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B7D2F6B008A; Mon, 3 Feb 2025 04:05:35 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9F66F6B008C; Mon, 3 Feb 2025 04:05:35 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 852346B0089 for ; Mon, 3 Feb 2025 04:05:35 -0500 (EST) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id AC248A2696 for ; Mon, 3 Feb 2025 09:05:22 +0000 (UTC) X-FDA: 83078049684.16.1D383C3 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf26.hostedemail.com (Postfix) with ESMTP id E008F14000A for ; Mon, 3 Feb 2025 09:05:20 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=3DWraR5V; dkim=pass header.d=linutronix.de header.s=2020e header.b=LyOYwDg0; spf=pass (imf26.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=1738573521; 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=AqxvCmKG6a1x16hCjSThnsvuCnWxl1ds6KfWld3LsEI=; b=zWx0BJVKEPWz4Xw1rCOllP6Inq61QyP9/ULufqkC9yu2w4UKdDhQBK8XTY8pjrQdVcxYST OIu1Sx2gJwGru8mMbd4UGEsHph95mlONztauZu4lH1PJ941BnN25dEvugjjt2ZGq0G1fW2 pO5S9JZ45yu/sZfX7LWLHJAH5wsuCYE= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=3DWraR5V; dkim=pass header.d=linutronix.de header.s=2020e header.b=LyOYwDg0; spf=pass (imf26.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=1738573521; a=rsa-sha256; cv=none; b=laqqkqR77a8ypoiSYSszyOKCPOfoDzmSKQTfoPybbH5S5t96TGc3NO2xTPKfgO112wyCmq hPdV4e1hmstv0nctJ+nkPZcVCzuZ4OLXJnBren6jpJTf5WqFScJ0xmSq7gC9e05VCA6KGh uWW7LnYAsOfFsWd1uZgXw5ZeK7LS2ZI= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573519; 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=AqxvCmKG6a1x16hCjSThnsvuCnWxl1ds6KfWld3LsEI=; b=3DWraR5VL+9WHCcpWsJXy2P1Q24o82I0qjNBzIt9UikDP9RupiPDfU3dDc5C56/15JbM02 0/ODqp9vKX/deI0nUddGy0kI8ppPkcBsTHXoWM+FA+NV9IHhLlJk8zxDxNKFoUePmzTjvs ADvkS6GYonpLMgc4AsiMy4JlGfV+980qTyDm7KH3Ostxuml9JvWdeJ7NPDQEsJ5zv26nNp AD/uAb5Ca240xw6nfI0HsaTL8gm+3q1zTQbGx6lvqokEdEWdotjw9X8PY+WyQzNkpjLiDL Vc9e+dGqpNpM8EGWqWBHDGknzxVBbkx/D19go5Aml3dNibCagRXBb5lieeHecA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573519; 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=AqxvCmKG6a1x16hCjSThnsvuCnWxl1ds6KfWld3LsEI=; b=LyOYwDg0LcHjS4/3ejV510LsGVoFmPJ6cGGkE89Y6+lkjACch3UTwqaZdXpj2OuuMKnMLP kWzGO4vlbw6Q+jAg== Date: Mon, 03 Feb 2025 10:05:03 +0100 Subject: [PATCH 02/16] elf, uapi: Add definition for STN_UNDEF MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-2-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=843; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=FEaofIv+JUjjywiT6rS3O3D+OYARr4o4oDpoALKMPN0=; b=6ap2E9pgBsF576nuzERSuthuwPkpinZdzn7NrB2VMb8kF8mXyyC+nPYOF8sHjgDC2J9KoaRAf yZYknsg9hz/Ay2rTTwdv3RYKMqDBf0baUssvsDbVjtBgdT9ts+wWDNr X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: E008F14000A X-Stat-Signature: ocdb6sqhohu79xfwohziqszg89dzbj5y X-Rspamd-Server: rspam08 X-Rspam-User: X-HE-Tag: 1738573520-637964 X-HE-Meta: U2FsdGVkX1/Wi2Eas0iyW/g8oY75RIGPzmBqjJ7Y5Sm7ksxUd2qI/GjGTBSHJGQ7pnUercXKALGNRtDU0f1YjfW73ou9GExEmyNRfNL5QR5qqR+86jorsCTw9/0M4NJ4OUBdWH6inyVhfbqwMH9NWlbVAZnH+LpAuj2GBGHm1wYFOcLsw/Iq4Bzm7Wh7QbCNgLn9PUTVr4ihekY5CuvhQex6UW90dr3yzjnkH2Mx8erWfHWJfGV+EZcbaTyulOhN5gtuAAsW8X1gqy6ADXe7jsVvpAP7GruoNwPIeksdyQzZO36GE28oJK4qtpM4NPdWdy/nRI/saF+U3NySmxMjJjW2XAgs6yO5WbURqIZWImb28ffBAb5Zk5uE0/aidkqufA6mdl6dPUyXtk/tj+FEslNhJFOnM6jFpLCIHGdM3RoV67E2hqNtrJAChMq9JSTH9ileOkwJq9/+5FBzJC+t5udCsfH3xggFnA6U3yWRYi0dACMyAIkz3nkl7BSnh+HOUJ8cduO/pr6Q6jZsJ/30SB2grViUClM4He2yeQTqXFr4HBupaMqOjnMLUYv/B6AvF5Ai+VF3I6IcdZH8gw8u4dvUk+lK9uYAEwhsXoZu6Vn1Yn2dZl1T9hepGJ+yOaG2x5qbfAP+zgDOX/dXmvXe9q7m3LPjTaPzUjQLBsnMpjz9JUUfU3HfkaBzI01wPCv+hzO3VoS17TVQSym1irx+ksz9WL/P/0av3Swnd2StbJKi1Ex2OJTEWqdbRVgQGDRthMmk/fr8Bns9BMjjhA/4AkbuYG9rtrkFfgfzaRNDeGUyGqsnfnDl9oN/Lrb8rVEZtDj8TAKezWZTjFuOQIEE25yqVJW1qLTdAxmSxyVutHkk5m5HFjpRMJ/KRsnAmzyPFKFbNYOVGR9BFt+Rc1gLlba/EwFaaMc8OWYT2yURxiqsxZ1kCcMEH5MNBkWp+WiKrw/d5cAXFjgj1nvJAAC 5fcBjh3S Ebfj5y7cGVicUb/s0QS4QKErSnxAM/GXcufoJz3B4R9UZKd6rpPFjjTIyxOCyEJv8MlGo9Dvkh8a6bZUDr9xpT6z74vw8RLZDqmwC2W9cy8KCC/dJNX43gFN5h8Egc1jhaVQ5K5aJeeUy+X3MeicbGLP93FWaaKslADlesQiEGON/mcctQWDLHNZ9waObr3M9yeqCncqCyjCz57r5mi39hvwbDCC9v9oto9VXYbrELHDofnhM9eifESlLdoItthQsVGFdTPSahXptibsQd9sEDu3u0xq4kLyTFMq9Jp39TReca5R7voAGNr8R1uJSRSsTFl4UJLEdNC39o3KVDJfXkQVkBh9wi2VYV+oQsfQPHE7RBwmALSTY6CbQqN1UKqf7+yQAMVyvWie0f4qULh89MttzNPi6GnTMTtSJ1gPp10hV9UGxTl6VsutZsyh83MfV7NVXaZXX0p5h3dsR1dfy32YPVPgOTndYq9SS2oHMfFqQbN0ZYHQJD66oAwOQpVu2KgnufmewXLic15JUHvpooiJdScadOM1sdlMV 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 Signed-off-by: Thomas Weißschuh Reviewed-by: Kees Cook --- 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 Mon Feb 3 09:05:04 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: 13957109 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 0553DC02192 for ; Mon, 3 Feb 2025 09:06:25 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8E8136B0092; Mon, 3 Feb 2025 04:06:24 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 8C0C4280002; Mon, 3 Feb 2025 04:06:24 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 75F6B6B0095; Mon, 3 Feb 2025 04:06:24 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 58D006B0092 for ; Mon, 3 Feb 2025 04:06:24 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 7941012244E for ; Mon, 3 Feb 2025 09:05:23 +0000 (UTC) X-FDA: 83078049726.11.ADA3BEC Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf11.hostedemail.com (Postfix) with ESMTP id B12FD40009 for ; Mon, 3 Feb 2025 09:05:21 +0000 (UTC) Authentication-Results: imf11.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=k77wwMju; dkim=pass header.d=linutronix.de header.s=2020e header.b=3tjLF0Z6; spf=pass (imf11.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=1738573521; 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=J10i+JysPn/nrLdo5+XVJ5ePDiKPIoG49q3quxXjJvY=; b=epkqU3C6kJAXcYo+KRH24ZJpK559heTOdrOG4gLK7rAIuCcP4gqbivYQovQRoflQQc3ttp EJXSQxEt+vKk0m4eKbuoTHTt/7qTxF9p5veNz4Wcv/PAoUv92iQO4vanvwMg9+dIIy1WJK zxIStaKFKaoXKpMdh741mRchHcl2KHc= ARC-Authentication-Results: i=1; imf11.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=k77wwMju; dkim=pass header.d=linutronix.de header.s=2020e header.b=3tjLF0Z6; spf=pass (imf11.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=1738573521; a=rsa-sha256; cv=none; b=oGXddkMSCZW2db03ZECQmbqrw4gAP/MSNcJePEtkTQXITTvJTV2YJxJoYDR7TC02a5GoP8 z3H2l1RX9FVHeqlZhDcJdrVa5nKN3bVoXa2xRalNwxkHt8qLGC+hhWsazk8+b9dLeHXFwD auE8ZFgwDYVLFqADb0msScCIkac3ynA= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573520; 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=J10i+JysPn/nrLdo5+XVJ5ePDiKPIoG49q3quxXjJvY=; b=k77wwMjuAYR3dfbz3vFjH0KLOHF7f+LP9plYpwf5GOdYCn+/saWY8VE7p5PPpkwvX48XfY Fzb8wzqnz1vxL/5Lkrwi5h6rLnxh8k26/IB5L4kQxQ4vf5JS0MrC2yZdsmY8A4Y2Wjyfjj ujABq+fsaGVUaD4JUH7WGzQZG5GHG9uFcBG3IzlOlbwe+XaODD0Ow+7qCaAGf+iCSViOi6 c27rh0qnBYMmjeAFTlW9ewIo0exWPsgHnNpQxhpzrnLOWlRcLqxZQXmineDBhmBwP1gJPS 6CgFdnl2rg5c572QjTFxVXsUgirz6gckNEz/VFXiB2vj1gsuHwJUqDzLYtQ3lQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573520; 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=J10i+JysPn/nrLdo5+XVJ5ePDiKPIoG49q3quxXjJvY=; b=3tjLF0Z6MOe6akUAJnTAJ+YeRh62eDgsNp1wdU/3GuKyz1vj5HyjSdJRmkKMN4CKqwLs06 l852tUDYjE+Lc5CA== Date: Mon, 03 Feb 2025 10:05:04 +0100 Subject: [PATCH 03/16] elf, uapi: Add definition for DT_GNU_HASH MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-3-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=950; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=JMbHB1Br8Acow0wMqe/kiUZgwM90Yb9A1GSnA5w9I4Y=; b=h9BewK+FPT7QjjWxsuCY/mWK5QSeZBXsIegBdR0AGQ21P9tdaeW6ZkiP1NJ25/4kSh6yJZZO8 u93+1EXhA4bBD8fHAwKWvP/Myb4L+wr2P8ZqrfpF1WlpQe1DynvD327 X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: B12FD40009 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: yobmb6tmu1tm1xhbziapiexuczab3mb9 X-HE-Tag: 1738573521-429620 X-HE-Meta: U2FsdGVkX1+UH/JkBp6GWGmo4Elw3oMrrtvtGuOgq7A1Fn+B8NyZQprn5Y5SBDJf/8XjuNSt2KJ4i42BvZ7z3MNcqtabfX4hc21O0AflVqm6Jgz2Dyf+elaNsN1xkVwqVguY7EeCLJfzWR9sTh+hRYLkQDXMAL9vccOBTjJO7H09WpP2tWgsuYLAftzneXqXucHTxPfpQ1QcUkYuDEc3ifoyfSXnoCsCsZ4hCjYmBCw1E5su3AUZRSsJgJcE8LSTlNL9KrGlJ30J+i5TbrlovWI41EmWT+fYXudBNgK2aaxO/a055wsM5G80jZXb3xNGD5nao2htIdHYb7LIr5tsC0Gj9iBcB9LXPZ64hKLtCWJ0qE2p/XcekRMUTLt7OOyC3csoQmDV0SVe/B0ELwh5iLwGM0FsUo5oZVL+ZBteW72Tp/cMMISfAm+glKNnULZCrY83Mu3avBMv605W7IL6WNrs8iq2ISMgmgSZX8qJqIV0eYqTkxC4Bg8Gq+2ssg3Shsf28HyuvxOMhFtKt3UfqBF9MYuFVEU/HW7WoWzxeShN8MFhk1ClnvT2y6CyvRaTWp3Fh9XB6P7/YjnQu2NJXtWhdABUxllZbUFqoN+3Nbd738HqPZ2LKdzewaKXS/S1N/kLm9jdy+k6KWZRrBj64I2auZIle41/YmI3UGU6XKAW7S/1g3uE0ZUowPAQ1XyrS/IZbxvxVfE/Q/jydSAZeY+UNZYFAH0skdzu4z9yf67bjIBs/Ah/oamDcCBuY5QWrKgFYtxyJQKZEPzMERwJWnRRgaIDM7bG/GTZ0yC+pU5S/Nltq8oHQOnhswsb1fnsf0Xfb14LNBYA2+0fKReAjVyY5Yp1rnoophCY7DTKc6NSG9VwwKnZShbw7gNN6UQjW0v49YAEw04KwFpxkgEDaSrcGZjfKb8D2DlD0ZoDmJ2uwy2dmAuAOAvzwBx7XXd//QTQJsOr4CEQ2c9hAfm /GvmCesx Xf9e00JAEjmQvDGOyNDDQy1UcMTduiu3aqq6c/bnsZLeBkTBwoSiC9sKkT2m68qGAytriatg3zZIpe0xcu6U2VigHhqjIf8TITupkZIlvl5rFUDvQDNLktOtstQ1h/CZMKLLMBt6daFF91Wk7J7xalwDwCNUj7JN9qRowyn/w5bwxRHe9dSDrAHgdRMO0Bm6/Ml4Ol8dpmnJXTGqj8DqwS6WxEu5do8GwfkYkAfJi9jtpf5ZYbDFKQba9pB7bgmtADmu83KusZ9XG8O4YpibLl2NbJZzB+aWMnP7DovcomPmE41b4iaW/ionKHo90/TlQmypTJh457DwKJ9cT2uvjqE/Idgzil640KUf4rMClMPj+zv78QDZoMxOeJ1vVqh0Yapk5KoHl4Ov06bHiVYiFyiQAPXgcg/1h7xM7xBFm2MdlifkIQijn6y91K1mYwAQEG6m8lueX4tYIOaGP2mlrm5atlaRhPrCD9dir5VKwK0qPPkmnhoalPdaS3VacGm99iOWiJ9Ew1YlQ0+yj4ndYhYWyGMrSDz+zPxYRU0e/czf+bbuYz7B4ESK8rw64xSkhM8fM 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 Signed-off-by: Thomas Weißschuh Reviewed-by: Kees Cook --- 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 Mon Feb 3 09:05:05 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: 13957111 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 1AA84C02192 for ; Mon, 3 Feb 2025 09:06:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A6E9D28000B; Mon, 3 Feb 2025 04:06:53 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A1EFB280002; Mon, 3 Feb 2025 04:06:53 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8E6CA28000B; Mon, 3 Feb 2025 04:06:53 -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 6FA92280002 for ; Mon, 3 Feb 2025 04:06:53 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 826D6C280B for ; Mon, 3 Feb 2025 09:05:23 +0000 (UTC) X-FDA: 83078049768.05.39D08BB Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf10.hostedemail.com (Postfix) with ESMTP id BA635C000E for ; Mon, 3 Feb 2025 09:05:21 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=yGkuMvym; dkim=pass header.d=linutronix.de header.s=2020e header.b=Sjm68L9e; 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=1738573521; 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=28tf5lio+l75NgUgMkp1DazjisfzJIKMC2UwGQGfUyM=; b=8dc7WTaMXaApUb1GOHbXm951CAjT9meXN+fbu+Q16y2IxHyDjwdZd5EUHuG/NwXnaCKM94 yZNv/5My3PTsEsOuaa7dAzGJws7N5qYopiUV597Ort0Zr7NJ29ImDFWHaibt8jee9dXO4+ q5airtv2isLU0Utfg1/psGNfpXN1nFw= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=yGkuMvym; dkim=pass header.d=linutronix.de header.s=2020e header.b=Sjm68L9e; 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=1738573521; a=rsa-sha256; cv=none; b=WTxK7R5RsKj/OPsesQ/NsqV50JnrNVOM1qxzQZS3avI5VULP8xVsqTE87ZxJl6ybD12AWg GtDiFVW5d2vgmYrX60YgRVk7cEp+LL+I2FZ9X+PMDpcrZ6mIAS5ruT96ybIQ8RzYKEJYfx WFZJOVLEH8ZOGJof4fGRDYimyQRRhhA= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573520; 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=28tf5lio+l75NgUgMkp1DazjisfzJIKMC2UwGQGfUyM=; b=yGkuMvymA01j+y2mo89y77NSpuStn+bRcHQ3bkpoWSL3HgdXmyi0t0YxEOwXVx8zMaFFqb QuT7HvSRxNAc9xwxtiOrKuqLoysP8WvW/V9DkFmO3V6rdGahxcx1rfc2Hx4xV6JPazmQJS EmbhDBDNWHE75uzzOJGGMtxDS2lCMhb63Em926JFnUgAXJSYkueTfJZ1U3VE3MgmxzGDEV zPkuP3A8bM8Ctux1JdIfvTkJNzTnsljZ9tspamGh3aAqqGoJ8mSLbXrG1wWzJLUjnsBDk+ NtxpQVjBWW+LloYH4IUQuSaVWT0Bod4eQQolUfkEhK5QzQjObymN6CmMAv6gsg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573520; 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=28tf5lio+l75NgUgMkp1DazjisfzJIKMC2UwGQGfUyM=; b=Sjm68L9eF/hUNa0nEAY0tzxfUbxDZYE1MUiD5Fk9SLOck/3PWCN3jpbY/bUS8SI5YVUbGF hCRi9fuEHqdq35BQ== Date: Mon, 03 Feb 2025 10:05:05 +0100 Subject: [PATCH 04/16] elf, uapi: Add definitions for VER_FLG_BASE and VER_FLG_WEAK MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-4-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=934; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=qvBznUpLU05pMIiidsZrHxM0XCMJ36Udyt/zDIm3nn4=; b=N8EPe4SWUVakAB+4BPyrhp+oOoSFOcjUMNsXcY5d4XdoEUO4bPdfxTJ6W5cfbOZaySJ6omt62 ytTq7NtvGNkCW12u5RjsjBz7GO8xJJU+SKCKOKILAq4iUyh2Aw1gKGd X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: BA635C000E X-Stat-Signature: zman8kmwi1wbb6nf3mhmepdjbpo5noie X-Rspam-User: X-HE-Tag: 1738573521-149041 X-HE-Meta: U2FsdGVkX1/rOeBKBOyEmAZ4WQH9OYqeW2Xjfd5PNVVao+gVkIGn98/XXCU5rMgcWP9V/IQiGeTZAz/J5bmOJ0JrsPqSdZveZR/C6zUiVCa8ciuXaUSvlxFcOxIjLiWyORq1tTdUn/0IGsFgSuMIHIcDsnhHR26dwZmUFdsZPbkY/hwzwXTc1K7cVUdgRA4HYeYK/pFbG1DCFYSR/TPVIvVhqAXOqSA88yGOeNanSiTN4dCHhaSwNykSuWFtoZ+SDVESfFeSXFZTJUk0wD9sSjZT1Oe3zTLCSqruGbEVQ4zQL25h7wxtJzSxdoMi3/2H5NVDfPRmWifUVlb1i+AiipArvua8efjQjn+1wby5RIOAEcCgjyV43yclldxNd+VaU12OQgn6xWCvtTDEB89lCayCYdcKibJPbz8zthnSBEZNZeOAFWQNUtPxmUXXb1jJhkjbqODPwAlC2pSezM6MuNy/gHy+ldnUV1BoheiOVECuQv74WDeg9xFOHtm83dgv4zECeK6oq5CRIljto9rh6bBhVLggAbKI0ge7De3SOBKwUAs9s3s/yzlggJbD4fqBJEkPNTbh2EQyPdoA7GWy3JTxyme1aeBHGBTLi9uws+n4hTDU2qJYMXWIxisIQ9vUxmGLh5NAr2Kd4q/ZWw/iUagk1/wWNEbQr1RW04msgvQq/SX9E03KpNhbL4/Fdbhprai7/+A5q7Nh2Ywf8u7ePNKtU6I/WA5YzcYmvXOL76E6w01wBGagDlNkFwO5q5dru6hw7QMoGdaftoXoIAAdzCgPV6b6xfNqoVEQgHHTiusG5V9y2UAUCi2X1sxbjjrobL4PYSxrmvAVxEitVpthEm9BmJmm57IW1EqOmral0NhSL85Ra0l285sNzm2/xnSU7ZSipmXDVIS+QvBvymo4DWBBMSCwJ7euVlgr1sTVyS8oJcl1RYu4B9EL0xZ5d783V/JJ6i9spRqvdNrddO8 4cEnXIGl esl6FRj/srGDF7xojEV5ZOhZoaBwol4n14fUDKdug4bWzb4xARRDCkI5iwkd6rF1EhjCBdQZXaeC3N5PTE6GEXx/JCoJmR6Uqr2WPMC6seAVz8JqloeMWE9Ar8UnpIX/316yXW1UDQerW2aYfqz/v+/cMrjhOSdyPamVvzETPbf4Jh9h8yzuIpF3LoPigwmbRQsCn5f7t3wl5ILAbZbvcL3yf4BVLNr1m2st9J6M8COf+y/qaDJVGBT9im19vJyVnQGb6C/4nQksdi4e8iKlFdMB8OQCA1z+9nYKE7ZvgOQZA6ykLHs07VoWQ9dKNoLkR75KQZqaDAKnFZ42xdEDXrPsxeDO/Jyi3/Ae/zTM4QheDLVEa/IYEU0Gx2VOJoigAHj6LVYZcSWNvjXPT6B57IlZdmDb1RY3+4UA/x4dhRDVNibiSQo0nLgwK4/hiSxqTCpJUy+mBMg0p4IwTM1bZBRB7BjvAiB1yVmY2uQYuZGZBsDhG1cGODIVWqjjuBFZ8U0sI 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 Signed-off-by: Thomas Weißschuh Reviewed-by: Kees Cook --- 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 Mon Feb 3 09:05:06 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: 13957110 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 03BB6C02193 for ; Mon, 3 Feb 2025 09:06:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8C14B28000A; Mon, 3 Feb 2025 04:06:40 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 87095280002; Mon, 3 Feb 2025 04:06:40 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7123D28000A; Mon, 3 Feb 2025 04:06:40 -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 5321E280002 for ; Mon, 3 Feb 2025 04:06:40 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 0E7371A2495 for ; Mon, 3 Feb 2025 09:05:26 +0000 (UTC) X-FDA: 83078049852.26.619DC21 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf08.hostedemail.com (Postfix) with ESMTP id 33FF316000F for ; Mon, 3 Feb 2025 09:05:23 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=ahqWUTH1; dkim=pass header.d=linutronix.de header.s=2020e header.b=iLkT9eF5; 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; 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=1738573524; 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=EaCxvI0b2Du7t844lWGxhhHOksYb2s9PM20EB1Ag6YY=; b=571biYY4qa0/SfK3Eb3vGRyoBPjJJXxojHWEuCpYkOZPlTi1IMgvAi8xjyOusOIgzvFDOr G4kVSMT2p13z20P38ReOnUDc/U+dwMliR5FUh6f6hIUxpoAbSMVvV6sO0ISXS9wYlBiBsP debswpJShpsaR/+Kw9m/WjI64ciFT/M= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=ahqWUTH1; dkim=pass header.d=linutronix.de header.s=2020e header.b=iLkT9eF5; 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; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738573524; a=rsa-sha256; cv=none; b=jUH/VgcnTl/gHFqT6s8DV00Iqw7/vTTGDwIN28sLPrByeUSJatPiZy0Bmp79kEvqWr81eo 4sjr8WdJQGJ/0IdG6knMmhzWqrxafBdOOyEkHAXLvIOzS0KxUgMurlguEEJWr2L6VTIYJ2 6oQeChRot6oHmQGyA2fzN6FQWdu+BHY= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573521; 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=EaCxvI0b2Du7t844lWGxhhHOksYb2s9PM20EB1Ag6YY=; b=ahqWUTH1Sc8yeVAgvNolQlD1lh5COZPQXex+lsdiNCCZYRKR0eR0RrgWcPP1i88usBmIID G1nTxkJco2H2rEV5I+aAUQBk/PNnSFKx9T77umK3k5sukG/GDr0yyrIC5dAP79W1OPNPrb uBOpUwxFmddQr98FlYo13DnndyU93IrqlagcUqf9wczjefaV/8SLg3KOAMScLGy6viaN0T bpgimSBsaZf4F8FRh7CSQaKeNrTcbZIVmZWJPCcGOWNaLxHIjCuJ/G4Uqgjd67lxwvsIQK 4afg+qqMacB+SLKQClFUpNP4LEF3Ak4/NnpGe0jTuT4RkTG1H8t7p5STQ3hkJA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573521; 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=EaCxvI0b2Du7t844lWGxhhHOksYb2s9PM20EB1Ag6YY=; b=iLkT9eF5N07qKx2fnA5B+0n8MMjRdQODVIGY+wQe9CAlBfrfTfSV8t7Hk/hSlcwTZjy8j4 eWdu4JTfpLB4PjBw== Date: Mon, 03 Feb 2025 10:05:06 +0100 Subject: [PATCH 05/16] elf, uapi: Add type ElfXX_Versym MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-5-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=1084; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=b9REhQdfZN7ermQyFmhBpR4szMBhcomhygovm/zRZzk=; b=V3fBkX6D/VOzq/MH28Rw6LWLDJwi3SlZrsvSPOMj0VsnXePwATYfkMvVDWwnZ+jD3rCmfrHTm FiV8OABOHWaDwvwDA5QdqMNyJEuqlJN43gl/R2FtOIEV5WxmSyC/WVG X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 33FF316000F X-Stat-Signature: zstnbfy5w16zpeczdi1b9nc9xnuiy7y4 X-Rspam-User: X-HE-Tag: 1738573523-248596 X-HE-Meta: U2FsdGVkX1830feONNGLffoWz6xhuyzlurQNenmcDfd5MT/j4Co3x4HqaMuon7PNW5dIAaNScwaQc3G7vARscNLkgpGXjbSfj3TEcnfmCidvLhIwqJPqXDrmN2veFq5jU3mrlE/JqZVRwh0kD04tjeTnb4PjmUTZG3ab4VMfTpUAdOPAEGR7FyS0ZlArBWfUh1qtxTf3Q8QLdzQSjlOiPo4Lz5mwyGGa3iu5S8E7msZkH3brenZ3e59NVqwqTmZ/xcVVv8QCo9PxakAxMxkhjxt7tnad5kvjzOgHlGPGgBSVC/rSqNlp3bwKqxWAXICT1gZKhasMEd5YgEP9JX5QbRVOOmhM48kY9gECe/r+ceaht6GZkU4CQ43bYqbhGhJp6bsCD1PROnngvm+PXWK8Mfkuwpz4bpajF/hFRNgBHnxg7gfM5qzlr/LnFiHi0XTRy1JofqHftV639NN2IpEkqRxjwB6ZLtnftX7uv24KTjLlPI5puzjrauXUuEVxWSSEnHhb5deh3p1FdNxOc7Px/3UIV79Cqnr87XBk+96Hi1j3ckZbYpDfoqTWk2wuROvjY0rds5LQovS/ot4LBm4YLZC46ccLRAQ0WE//PFcjcm3ojvxOnEQA1Y7c4ExVM8hVVILvWFZRP4XW197mou3m7ev/VIXIIavjnFOWzPurqGFN8nA8VJDX9PJZFS9WCB2p+4kdDzzKum9mkqiQIt9xVVt32PUGpqrjY+iHdTe5p8Ok2/DeZt+Qvu8cuVPIUjgNAKh7WX40/5PsyEQa9QUoAos7eBuMVgQLedi3XNtJYgD3tSzxzNU4xyLsrSgcxzGYryykgBx5Ys67OF3WcQPqCv6h5PO4GcRXr4G/Fp6EGhQ0O0MCJXZwjjSTQMZyfgZ+j5OWVaRQQpJaEvFgbGqCe7ENw5Ey6ZV6woSB2QUb0MDt0txUjal0+4FE8RsVUXVIRn1bvBCK7e26BiMpF2O ntaLjywe HZQkM+ugvtmzeeMCD3DoHAIYalkbsRnd2sATDEGVc0tJ2ETdoINEwGYcD+5wtYySGXVEE5AaJtc6PS+ulZi3vIf9pUTPW1eNUQIJ8kjMTQ+DIXv6dCHaD4jWNzxqO2OJ+VCGtyT+jHRE2Q2weRS/jdJY4k/oAvkmDolRYbbDtYrASWFweTwvneK6vG/htmCvrQQPqhnwc1JYUFkY20RJfonZwMl1HbHMYceD4E0mB3S8puLAC/46iqS9YIOIea65u8YCELB9D7E/hs2PKhhAQi0/vdQvnuYoTufHeGwilMRAF52nqDAjQVPcFJDksOOWLwc7UtB6PETHdhDg+ZRBdXCDljwpWXmJQY8RbFsq56wsU8gXIcyhzmF6gAqmgnmiEbAFI4dk4QVHiMXCbkvPWxsmMgbjUxTVKh9R6PFZBy+jTJZ/ylCB/7CX4YtRn5HacG7DFSy1EsNgRf053zLMLZsCDD5zLiELZ+gpfLorsYF8IDm0= 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). Signed-off-by: Thomas Weißschuh Reviewed-by: Kees Cook --- 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 Mon Feb 3 09:05:07 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: 13957107 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 F027EC02192 for ; Mon, 3 Feb 2025 09:05:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8734B280008; Mon, 3 Feb 2025 04:05:59 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7FBD6280002; Mon, 3 Feb 2025 04:05:59 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 628A2280008; Mon, 3 Feb 2025 04:05:59 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 3C42B280002 for ; Mon, 3 Feb 2025 04:05:59 -0500 (EST) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 020421625B8 for ; Mon, 3 Feb 2025 09:05:25 +0000 (UTC) X-FDA: 83078049894.29.B8F3007 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf06.hostedemail.com (Postfix) with ESMTP id 1B7FC18000B for ; Mon, 3 Feb 2025 09:05:23 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=xGfx6yHi; dkim=pass header.d=linutronix.de header.s=2020e header.b=94Z1dN2Q; 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=1738573524; 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=VgSqTSk81su0MmtqYLownOdk49YkaFaYXYtHKJAxgm0=; b=CkzAT9bfEo8w7EUQO2VltgWGCPI9S1b/LNuD4uvz1EyKxYeLg++1TEzRYbIjxOsdbHpw1Y ezaHfOrbnL9RrkqK+dGaiUoNmEuRRogCRZcFkVK0JVAampoRZUWoXg2Tx9o04Deat2WeM0 9bvYtf5SXf65XKGTNYzOwVjWeH2sIxs= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=xGfx6yHi; dkim=pass header.d=linutronix.de header.s=2020e header.b=94Z1dN2Q; 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=1738573524; a=rsa-sha256; cv=none; b=2opJPY+DeTekoZdhI7hrK+NIJ+o/9a169RxwFLIN9JBNXZ7VNtcttxInciQBmCYDymhlN0 9M6NULuvtCdq6g3dnIaZI9OtOF0Rn7aITyoZ9+1gpZp6zAzwP0YhYjQ9IltAcps7O1xemm KXO2wMPdkVaw2k2iIwFbRxqrEgj6OA8= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573521; 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=VgSqTSk81su0MmtqYLownOdk49YkaFaYXYtHKJAxgm0=; b=xGfx6yHi7iZ3B50wSZNmDCxhoV3oerxbIl2ErFtWav52FPiddPhdhOciwkBMntgQhFximk yCTtzX4GgCWDIveJ8PZwLnNjl+aHmyPZkm0NlVbCpBf/zHfydpWcYv0XL5iSmTX9AgagXw LrEKVjWPLp/43xACs1aooe450j/1mUODTSBUMhqhA7Zf/a5xga8zhWb2EILAtQZEx/8s38 tFDUV2IDZ7dnXovL/3Qb/b6mCfnYNuLvG6ZTyMwvwC6NXeett0g/jCSBF3kB7rDL2ohhQl wKx6cgKzFN6dIOYFSEFug1EGJ4lt4oq2zS/yHOdm0gqeuht2HOa6Et91Az97Zw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573521; 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=VgSqTSk81su0MmtqYLownOdk49YkaFaYXYtHKJAxgm0=; b=94Z1dN2QIVLYeT7X8BukIFB1pvRBZ6naLClEBvXDwYwMHCHp2L4vY5GaF9jAJcIOiwyVCt YeoqYPpzVKYwMnCQ== Date: Mon, 03 Feb 2025 10:05:07 +0100 Subject: [PATCH 06/16] elf, uapi: Add types ElfXX_Verdef and ElfXX_Veraux MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-6-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=1518; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=FHjDFl0GoKn6nit/F9ipB8685b6fIBNR9d7/04YuOok=; b=K34MIkI7ABRtpHTTzHhgAEtIuBVWA3OhksDhhthQLvZ5GSkDTjSWJ4guUs3+fffHpJGidwdBJ pKjCcN1XSZwCXzYW1BHvHOTiY17D9qpTzV9/nm9rj5CRqcZetbWcppf X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: 1B7FC18000B X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: kxccc6ru39phdmb4qbgjap4dwmhj5nax X-HE-Tag: 1738573523-923481 X-HE-Meta: U2FsdGVkX18siToWmAYYxP0IRoXN+fUuNhO2h7AvK6YwtHkikPFLF1bbbBn5R6ZBPhNDrBfFw9IMxOHUu3PjLHxFqt+i3zucsQ127XjvMNGiHchDyWMdnjPz+g/6t29i8U+1RlyA1+Y9Jy/euaK+WeKOhcDC4S/UQ5SoZx8aJniZ+2Q6fIlSSp57dA8p8HO3k4z9r68WU/ySkWDbAhgrLIQQLji6u2awQDsF/eUFnoB7/dm0fZQ6Ch6jHS8BPSoY5Z8SKTCguF7kFFmTQM0pg87hVhpg3zjqvwD4G6E0nuqN+g5zFBVb5/izQMRzBQPCjVQ+bh654jHEtq94kstO90dtSYUXgicQvV92cFeY41n2ZnQtjVbMLDGMCbSTt3q/NdfrbQ9zcb4sfaTGvcJOJpVifa2annc/EXTtCZ0iujos8+SiEnHSrf0eQIY24raJz/PrpFgUWHiS/Ek29tDir6obb2FPdMkDIDxkuxoEpBbIcwqAjaF/m0AoB/hiDe4a2Vr0SsCc+3KvvpT3/xwQtMAX/S3a6eua9q4+2EK1e0Wflk2CYEH6XLgJwyyknOuhZL+Tf7skPuOjcPvLdDKHXNJq20iaoG7gl2cLIpwZ2Ub2vudExv9wNo7xnDjsJIoZZAqkMf1IPLcXtK7bylBJZCyx2piG3586cCKLonlCGs4Zv4f4NXw0kMtuC7Y/Hpc7Ts3b3r2Xex65WU1nCotnSnRvqhR3epjxEMol5oQ1+g6MqDwD3++YOqEqrWWfdm7EmRJfMyLbbNRGFmSk5XGfZ2yE84CrnKnKUNxGGiIXmAx134smDBYM8M41hK5RtKAxzvU/kmjcdsPtAeh6lh/W64knMiyQZKgQ+GHaQ44khJ+HayPtttJEmV3cO71R7F0jeJXFKXlREoD3o1bYh9nsqgxIJQpruKnnxcH3yEN7MelSEfbD5c6H9Bam+5ixCSfkw5zPhiduJFO4KXn52y/ pxXULv+D KSWS8Uc7HSs3xsqCkvzR4tM1/9wVv43cpSJhftqYMtg5g6sCvbZwsi42ZksNEOnsD5KyC/98M2atom+/iplwMJUtyEbGFqkopoznfsJKm5cLDxqB3SZSVamPu2wv6kNSxaf3QGNcOQ/cKb4CKmpJN1KtAK2jwURtCa5rP6H0xPvkwirndNyGNla91CClGXRR0/HfEarJKLMFsj4BTmxgDT33aqx6Wxq0IdtyHzwueKyEL4jfeDYYJQmC7CFtUJU4j7pTMMAz/3uh5QPFV7wcWXhUwWOlFYZwLBcC9/8COtXUrfVm4avy1ULGWJUsxiNcATHRYHkrnt6Ki1vmlNfg5BkVUxyu8RUOnCL1geH9e5rLQV4FJrT9WsP27YngMKmvEV3RqKIDbfAyZ5e4lOxnIn8gRNGP+cnwmTugBXgfMvthGTGCaeUYh71aE+WC3OCNfhuOTnrZNwqmrkuU7NLS+mRDF9f81/ED7CDvfzyxHiRojq4tJlO2SzbAGZEinqGR/H+Clx7s4pidiOoxBdISECpiiq9UN+P+El9NtgF92zUBemsYxtlCSUlubkrSGoEyA524t 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 Signed-off-by: Thomas Weißschuh Reviewed-by: Kees Cook --- 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 Mon Feb 3 09:05:08 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: 13957098 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 2D1EDC02192 for ; Mon, 3 Feb 2025 09:05:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 90EBA6B0085; Mon, 3 Feb 2025 04:05:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 8BE1E6B0088; Mon, 3 Feb 2025 04:05:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 710AC6B0089; Mon, 3 Feb 2025 04:05:34 -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 4ABA96B0085 for ; Mon, 3 Feb 2025 04:05:34 -0500 (EST) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id AB8EE1426C8 for ; Mon, 3 Feb 2025 09:05:25 +0000 (UTC) X-FDA: 83078049810.23.8A1C65D Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf23.hostedemail.com (Postfix) with ESMTP id BC66D140017 for ; Mon, 3 Feb 2025 09:05:23 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=pQFe4RYt; dkim=pass header.d=linutronix.de header.s=2020e header.b=Mqwvnx2y; spf=pass (imf23.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=1738573524; 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=Wx5Fg3tuwAG4mM/9HU6XNNDkw7M83pjZTfsX/DsSGQBhJN24xwDqlmRUkARCvCmS/dPcaV aG8aXLqQw1hcUg7n88Hn+wtkZykO0rXzKScGwmW9bqlQOd3cf7hdWeaV09JkIDhU6eXeXU LtHDY55h2r1dj5FjcoarNHBxE9pVxOw= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=pQFe4RYt; dkim=pass header.d=linutronix.de header.s=2020e header.b=Mqwvnx2y; spf=pass (imf23.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=1738573524; a=rsa-sha256; cv=none; b=ursJI326eWPyzu40OCQWAvJIUo3pHBkir9TRQ5JWViYVUAvEe8J/1XCpqzp5kRFnIDck7Y G77u3qFa73bWrrLLn40lhleYI1h8wBn81TIPtFv/f6O92/Y3EVYSDwJ/OMEpeOqJhAAcJU HDRbreCdDirClULcGY/9IDKNxqxGYiU= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573522; 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=pQFe4RYtkli/7L/8nvrlxC65xZGHS7tv3o88G1Z23eHMo/j1gIotacrJYBPTF1O7CMwCak 7RTDxSd0+NlO2ueeK3SwvJg13f4nhZLytDd9OnzMVnYlhzQQQuBFUBc5WqWICFYOsTnpTr FjRxEFu4OMepbT5he3J6LwYr4M6vjCENcYY6VMc4c76Ix5+TFMqGkxm/dR+TInk3tfmv3h U02h8fBbguqipmck8GhKAEtzH47kCGfIGt3Q05Uw5IwdAT9Ojtupwv+9FnWlWhbqUMQt4f 8StVIyhuAYmjqQ1JRQRE1gZCokmCTzPD2jwNeHCso4Riqh1BFI62QaZv5UJp1Q== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573522; 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=Mqwvnx2yMYpGhhlC29uf7giTftCEuooFsZcxy75rKQBUYBXCrVO/twyW8D54coDwMGB0H2 /6mooRKR1hAkgaDQ== Date: Mon, 03 Feb 2025 10:05:08 +0100 Subject: [PATCH 07/16] tools/include: Add uapi/linux/elf.h MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-7-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=18079; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=5wSxSpPLrEhh+gEr44hMdOh4WtecZqa6aJNR6ugfHyA=; b=aRQjkfiw/cFniPpVWqeKIcc3FHuRsfG+Ye1S7Y1XUo/L8L2N9dfCbBbaxknMjwZ66lb6x0HcN Sf1qFoUYmIADefrX2NkbUTjF9sSmpdDuyBajf0E+UeYFQjAELbr1YNQ X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: BC66D140017 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: hucnhmghg48h1x79e85pxja98sf11ki8 X-HE-Tag: 1738573523-897245 X-HE-Meta: U2FsdGVkX19++DG3OzvBBJ2XP8QSkmtgiygBXREbgn5VyUyegtONMQEQNdapPxaR/IVi5DE49MGEJYpbpoGg26dNr4scW6xUY0fxDplxFZ1mkdL5QEzvF4jMMBcIlyShAzueCiEm+4mpIwv0cFmgCELeGy+fKzEm+A3NxvfSdqSy44w02JHPnWR9NBejqKyEGBT/4AfGJnCpxFhmjI7CMUB8opyJGPqB6rF4IAB4fCi6ImS1jgrW8n9J/EMyCXvpZ7NpFQLgx37tz9TUWH6kyJ2mGgKzLtJv3PREce2Grv2f3ywne0lIjTjTmzLu9ffp82RTAPDwx3vDkR9kX+x/1Y1h2ZEuQ3ZXGEtkm3DHgutAMjibyLvXsxAiO6B7qpXrz7klDtseqmKa+ES1AwkVQxnVLqeGQztd02iA2VT0IqEuHUNBH75mDlYIp42Sv19Ng/RLmJWXfWCkHzc/DhGsVfdO1tlvfAcuoFeF+/QZrwQfxJiBm+JX43CdxS9tj8KST1crT8nVwlEh8KosYW98mNTTCGukp5Qba1LKNXjPQ0k7UM4cLOMq2AUNYJCy+rTuCUwF6KQWZ0O0uMg3t755byeyA0q9UrVMy7TOgOKYohGRYMlexldnjNcL6xETtalZWzbaVFahMZ7qwHzGjLabKDqcfBkP05IVWzA9XhZnGjms2DeklLH/xRMIOKURuvMjJNx2E2jpT0JYScVocEUauYGvmceNheuLZrHlMuwA2/+K5JiCxOyGibi8auRokzvqKEvUILL9iwDlB756pYTpopLI6tNKWjHFtc1AgC+BOx5KdvIGij9lmOtBMsBdkfc2FNaUjKt7oYR3fuGTr8lAuyCEjewDWF7ry6BBqXj42OGiXzzMQNwNiVOkFGGC1AiCUhE3nfopLpX1AD5xODm3b3qZg8aRIJyzJ2qRSz2/EgFwbJM5lCoUQMhqziR6uwzdKJ09aMFk5rG5iEugZY/ bysbB8GW v9FIrIpU6Mnj0hfmYP+8a67FiAUwfhfs2WMl8VpHKggee4nuBcwGk4hB5/9bkwNMWmFpeIVzRnnKKEU8xUn9/fn5G+jjhX6vjNp4JD9/f8AvqTe+ffB52vohVFx5Er4DPOMrOswd8IbC8pE8ryUwYCLHtSW2Yrr+gM/SQ3tf0VY+uAwdjkSM/dVUU2T7uBYICch4wyuOsgZ28yLymUDF2jQgdrG9rd5fTADAQGNx733Yo0hIWQz+TovKGUtH70xhJq+wXQun/Rj9SiCnli/haE/OMlCFVKBuQ895DHJgc1lGyaeibyFRg14uMRzcWWG2zb8YY776Au560+3ZlSR72UaTe07t2fCT1EmKiPBmCoiYVfMh/GDFdxdQSGkLeik5l8o4oPeQuHp21enZpTCy++SkDeVUaeQk7c6PgdNnkOUHeZ54HNu015v6GBcyEsd1fsKaQ7sPPa3zl26IDNUZMpsf0Ik/0EeYoh1DR+ilBDG5BYfQ= 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 Mon Feb 3 09:05:09 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: 13957103 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 4CCE8C02192 for ; Mon, 3 Feb 2025 09:05:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 827BC280004; Mon, 3 Feb 2025 04:05:44 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7B0CD280002; Mon, 3 Feb 2025 04:05:44 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5B61E280004; Mon, 3 Feb 2025 04:05:44 -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 3237C280002 for ; Mon, 3 Feb 2025 04:05:44 -0500 (EST) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id E14DC1A2593 for ; Mon, 3 Feb 2025 09:05:25 +0000 (UTC) X-FDA: 83078049810.05.028F424 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf24.hostedemail.com (Postfix) with ESMTP id 298FC180009 for ; Mon, 3 Feb 2025 09:05:23 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=JhMKYXZh; dkim=pass header.d=linutronix.de header.s=2020e header.b=sjZoTqPe; 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; 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=1738573524; 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=xkhpTws5NSVFUU1g5jJHWcTCiry+G3JDc0Bx0ZCpS7mnO9E1Kzq3P61If+er8nYKArEP2O euxb9EyzLvhuue3ulZiNoEgTZd+8rrYOfG+yHeMHBL5ICcirJmp/w8P890Y7HAuZKwbQb4 rlF9pVLIvDSx9fHd/In4Enl+icd5ukU= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738573524; a=rsa-sha256; cv=none; b=1dKit4n3I47FyRGKab8eR+YYslNkfaDpSPRKNYcGF8jmZQwi5I09mOBhIDtiWCG5lgBGEv uCqWwrlBENxj5UFDskjj86knlI8IbxBY+l0l/YtqcLyjU+/oHPYcTYvV7qO+IgDqsvKfEG Q57F7MXwW2nJHXm7GehncfKuJKeV32Y= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=JhMKYXZh; dkim=pass header.d=linutronix.de header.s=2020e header.b=sjZoTqPe; 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; 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=1738573522; 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=JhMKYXZhVSl8/w2BmQY+EqIs3pyiQ1lhM0emDgv0arK+K4XfGigIh+g7r0at1+9pdkHLaV BEDeI0QuP5p2TSNd7UcHI4NU5k/ph0uuA3OrMPWoMI6Xg9xCBm0mh6N2wJPUumv53sSPSg jL6FXZz5CdlgIxGLAYDIyDs2pVr4njxIO9MAQ/YKVAH80I3CQPxXcCx/QgeUJYzh+Fp3+v rwpHneaSmTQZujuYiT7zMvIFTTSt22ck+3CsHkeKfaSkBQsDE4PMEIFzV2RxeOgTYch/7U AcVJEAcWLxm//knVgt04bowdoOenBJzIBREKOl5QDJ9UsN9f+OedDsp6JRfQvw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573522; 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=sjZoTqPehK2ud05RLSFDc5lU4mzS47xZKf+CsUnMXqFCM4Bm54cCYDsz1eW1TtpPW2KZbw nGrE4YodtXB7OtBQ== Date: Mon, 03 Feb 2025 10:05:09 +0100 Subject: [PATCH 08/16] selftests: Add headers target MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-8-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=1095; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=0OYIxTlpnbjEhvswabtZg49j38hT3MAFwMnYXuy7rHo=; b=7OFfX8P7FhSczFpGy/axi3iZncIH116trhlD/v/wjEr2m0wr4S0g/2HGcyDlWkMjKCfp4pL/9 UfyCKzpFw7ACjbY83Xh0CMIYZqw0+FIc4YHGYKq3pWuiltxDT9sA6C7 X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Stat-Signature: a53ups5rx4cu9dd7j3harud7pm1f1a1z X-Rspamd-Queue-Id: 298FC180009 X-Rspam-User: X-Rspamd-Server: rspam06 X-HE-Tag: 1738573523-220459 X-HE-Meta: U2FsdGVkX19w8RW18UGSiX9JgyI9pBgutpIjxxnV0uBFGP+ti5GWMhKR2seck+Ftr1sq+bx8c+oa8UHtkAaC6ln8dZeBFYlb3LbEPl9R5Y7ZlKq7ZofcuCDE3E/7Ro+jKPidxXXGmgjZOSxufHmGs8kzal2egKzgZVHeD59IFv09pa5iPqq+6ol8WiVCMgd+fGIP9N3obFgKQEYeZmRh8t51vR2skkvwt3a9yyCWGq7VZZyU3FsQuyUN3LeTZzp9S77PsnsXY+ZBKd/smjnYMBD8uvpblA76EAB2VFxDGHHtmkKYdKn3QQxOJnt/NGH+8wBqZ9fbofqnuI28eofq0SpgEyPziDaUdTsOuWsitPA6WzzHTpQUUwOOWn9TDO0nbeB/teJnADKRN/JgqU9jBLSOe2f1aM4+pxFppxYZ77NvdFKT0atwnTU1upWptID+J91S4AgWQ09Dg5/pwv5327ZIjEyBNLRaQoby8DlkmHjhfvN2W29K8qzP50Fm/mCxXr0B44b2Luo/MwVw/tAdkeuUd3J6tbHwVezRjMdKaoNl47CIjWHoTGg6bH31BEtKv7ak89lbhJgtet/fckAMYyCDGtZqk2bieC77u0o8UuiXlnbkrm85ACjqjRXbmMGRU1JKXukPD/Dcg8uOrBPRHzspPUchvGqpfZWXlv0kXb5aoN1uxXcFNuc8Ki7QxXzd5KGcCZKGXcoIr5NfBuXMVz9G9h4epS98hB05eiN8KMld0BmkV5y4Ob/kOdXPMc9SbyNtBQvm3fMB2ALzlHBoH8sBuMVCCo1bXJ2umaJT4pWJ6xRY4rcB7vM03Oa1JHw7f2n7Qi+ygwh3VRwVzhqKeW+nxk7A2hxYfEFWPu4jVRmBeixnk0cHGJLmA1i2iK0TYHCDaAlXsg9PoSDwGnsxsM9yKVZML97E6yJWRE9RwwOqkot7WrIkZbbQ6DDR433/WdIlo4H3CSUsUFgcDmO wHYzNV2j C9B59iBxZ8qJhr7cRveweHlw7SLrgoHauv+xrY3bug8jT9DmzuOTK+AiW5OwG3rbmqB3nfu4i+GWZp6rrMVNpr2kjgaFBQTjCf7HLWf+C+6W2KxwdDw/okhwbTc3+iVK9MrmEE2byiqyhBFkxcRgEt17Rdamgogs0TJkiBpliQmEzHhr7B7jaCvWau2qAh/NhzpWbZy7s9bXwQRhC9k/iNOAygnwZtYlaYO+bkhW9CNzx8NKuFFh4I0shwUUBZ3Lnf1GduNvAf5QHC+mlxHDS/ZjTiaii8H19Qjam8JqfBYH9GquShkq3JCDCanqrMzzMMco2IM3PMh1Qpp7JznTTIOt+rk3SjUGJ18zouyv9kNvgBBqFrD0BWafle3jIm4jszhpWT6QNd5Oo7x0rawtzLmpA6o0WfqF+455pjneydsm8ky7YPDZSjY6LNQ== 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 Mon Feb 3 09:05:10 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: 13957101 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 6AB58C02192 for ; Mon, 3 Feb 2025 09:05:43 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EDF41280003; Mon, 3 Feb 2025 04:05:42 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E6FFA280002; Mon, 3 Feb 2025 04:05:42 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C6B11280003; Mon, 3 Feb 2025 04:05:42 -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 A4CCA280001 for ; Mon, 3 Feb 2025 04:05:42 -0500 (EST) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 849FA1426D1 for ; Mon, 3 Feb 2025 09:05:26 +0000 (UTC) X-FDA: 83078049894.21.159C4D6 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf20.hostedemail.com (Postfix) with ESMTP id AE72C1C0010 for ; Mon, 3 Feb 2025 09:05:24 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=sMnBRWh5; dkim=pass header.d=linutronix.de header.s=2020e header.b=xwTeEsva; spf=pass (imf20.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=1738573525; 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=7WVDDHuHpwszLQfAJ1T83z5F1c9gQAvnN0P02P7Butl71ZSh4++VcaJojd3KW3Dfg/HuLI 04ekUoLZhO5/tAggqHLq/yM1vV6BKAFd4pNFMAnxbz4OLXOQxRKBwwD7HQqcWpT7sYU9wH KB5XzfTAlbBRv3908DYpFQzesqFf4FY= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=sMnBRWh5; dkim=pass header.d=linutronix.de header.s=2020e header.b=xwTeEsva; spf=pass (imf20.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=1738573525; a=rsa-sha256; cv=none; b=KE715OwoGeCV40Knv9rh2TKFw46vLW+yl/1+ea/QdRdrRSWntVKrR5n/y3fuWuoqZIUVsR V0VXzpYOZfVi0NDEqz/ebmK4wDmjchnEWrOgf3GA+SG5uy25ODhui3rBaRR+kPYAkQfD1j lNQ2m0iXoh4Pued+xv9rDcvsxv5kRFQ= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573523; 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=sMnBRWh5Odu/hj5HZMTeDDMsDUsT1NHGleJvFt0LCBuMV7COMniMpGez18OWPxAgA6u7MG X0LXW4hxnmeKSs+3ZS06zwWpivEevPl5q1Zs/Ya0kd488hSx/EEhmi7yHMsnNIiCwDGmaT kn9Si5Bv8TDq1iZJavb5pT6bGqInyMMEyGzSDgRWhz/pGJPALzRuGx0oNjCRgdFOGB+Fye 3ZO72L3jxvwcioTkFQJOdPNG0U9D6Q9ZN81917whURIBSyDbVvtJNzT5V+SVrV9dFXmrFr xBVd7BbtrVaWa0v0+QLcNs2f/AI8LyAG+ppaVAdglfVjOqtR1P3okLxGNmmBSw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573523; 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=xwTeEsvab709zFyQI9k93t/nyI1n1BCLhqfH7Pd7esKStlGj7syuEBBF5uT3Oi1q45FpGe RtCosuKtkd5H1GBA== Date: Mon, 03 Feb 2025 10:05:10 +0100 Subject: [PATCH 09/16] selftests: vDSO: vdso_standalone_test_x86: Use vdso_init_form_sysinfo_ehdr MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-9-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=1895; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=C3WrIXo4pF6mfQdzvKKu1BjqdXgy4M3jnZi0dZUjrCw=; b=vqn4AilDy7ubG5y+C+hp2FjcC5G15khR+tILwCvaP1GUME4dr3rv0qNjecgSBJ09SsGUhU9Ln 6sEIXscGBezCysoRDXLnNFoAbxqVNBfjeEVRJkZdbJVF7MPnQxvFLvX X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: AE72C1C0010 X-Stat-Signature: y63uw9od89aw5dawis3qbuqzp1dq1qgf X-Rspam-User: X-HE-Tag: 1738573524-662286 X-HE-Meta: U2FsdGVkX1/4+IODOYWIYMRnighR75wxoYpeIDtqJjKAc854qZHYBwtYai2FqcMNNwNdCc84WYp/v943W6+TiYzLScJh+2N0T111y+mO3Te6onhL7LR5JaYvRnx1YUVVYXtKcUmBxlebKDSUCCjSIAcY+0mGUcPWHrLKqiIXrcAgJ/wkVaUZmUp6iJLtF6hiGcFOsiSbOiDvlmNTvnKrb9+97ZKi2vvduehkaXSq+5CMxoitBrh4awbYb5ErbLmlUuj1I+7BeJhLaYAz+3pZ2eCvqhEH8SqIIxalgwUz0mYJBviVh4K1auXrqEmXazAontnIPujxZU80dK2f6Yk2gHo72MLkt+pWZZIFDpGnmYyk5iNw6nnVTCN4cVYPHD/8/gmn8FYklpXsn5ijpl954idn8ncPNmAECHuoU6dn0DTtS9UIXgQIYmjL3WL3PMflT+Ur9nkMg+zCxrYHFt4raea1nuhXXzw/dmTu1gMUydkY9NT64qqjcdQqQtdPP3IdPcSXoEFx6R/cYyz9KYld37hLdpLR2VmV8gQRsWzvHdJ3QE8FXHZ/Yi/fFf1O5f3Vrg0bychIMXCVUmpk/xW+7qw2Gy8CfGtCloF5X/zmLt6KnLzKDlfsh1VK/SDwiU5UaA4sV1wnMkAZFBUX4UBhaTQMnjE+t3OxjYjhmCBtHvKkSO/SjV9+YjbpcCoZ57ZhpxjJBGcqgyFay7AkdAH+6jkQgAh0ipoLuN49dISSekPpdl3CjPNf1OJljCVZWG3d8en6C9uNy2aKCdFs5VeE6y+jt1PWK8tAh6Ga6QN/1uiPaB1XB0DiFG3JC6i9aOi+qwU/H3/eGo+UhpwtrUKrhhTlOOXm22zJjDy4eFl9RrfEJMPrS6iLbi3sEnDbb3mlW8oIIaFfR4DkkWVVDeY7ctUattCg1yOfUoMxg88wLRiLohwnchFeoKKqif5WNcH9WHf3k2Ii/ooDljcTh52 hGqjmZoq InCfzekTIBF7blLMAapuVRM/s5JBZcsUgl5pduj4DT/A5bs5jb4JpXfPkaZHGTGNBQPzlglckMDVh6xEZhYJGozs9899nU7ydis3fk/E6JMa5HBY7r7c9xm+IO0Mk2D4vaReJUTnwLUDkdYQsWtJKybkbQkMYrFX9IjaOjtmRiAYMU78I/ttADBzIQZeMjiTQfs5/DAth0IEyrjIcxQ/X0kbKKNpxMNQVRU0KFuHkuQQXMiX1OMMpEgbc/1lEGecvS66GiRVvO/+a+vNntMXLHqAS6r/BjiSxNJDCGLdczsnJso9nI942HCTT1ETSGeQ6yPQgN/GWBahcvC6Dcw7u5fI72TkkjFWE9rdsatPJ8B75fYCNWRWxYXoPYFhQFmU/aO7kfb3vzkbHw83czDz91J6JXTZAlDLQEq8baTkAxGGB3GIh+uN9roL64O7GaAAbmrYSWtN8eexlTNvCEr9y5mbhfJgYBx7SlRw+I/milENpsIQ= 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 Mon Feb 3 09:05:11 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: 13957112 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 52C86C02193 for ; Mon, 3 Feb 2025 09:07:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D2E7F28000C; Mon, 3 Feb 2025 04:06:59 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id CDE49280002; Mon, 3 Feb 2025 04:06:59 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B7EBD28000C; Mon, 3 Feb 2025 04:06:59 -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 94735280002 for ; Mon, 3 Feb 2025 04:06:59 -0500 (EST) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id CEA5D1A259B for ; Mon, 3 Feb 2025 09:05:26 +0000 (UTC) X-FDA: 83078049852.26.6E7DB03 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf10.hostedemail.com (Postfix) with ESMTP id E4909C0007 for ; Mon, 3 Feb 2025 09:05:24 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=fgkPYkL9; dkim=pass header.d=linutronix.de header.s=2020e header.b=bauLXxZ1; dmarc=pass (policy=none) header.from=linutronix.de; 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 ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738573525; a=rsa-sha256; cv=none; b=PKslml/IXKGNwLJvoFiBf2zmTwFa0ZcsK5oJrDYLQAum2LBTVVE9736BcqC4HNX+XbxgIa m50/rW+9UWpn9S9SgKeX6IIZyE157bxgxdrUVO7AB7OJug0rmJu3Ex3l9v6dGtu1svd5lm Xz+GUWIXqZphqZlhS7wbeVK4hoX/wIg= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=fgkPYkL9; dkim=pass header.d=linutronix.de header.s=2020e header.b=bauLXxZ1; dmarc=pass (policy=none) header.from=linutronix.de; 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 ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738573525; 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=9OHpPSU9A8rMw65GpV2i5kAnHrOB7dGDB0rMnM6cdCQ=; b=Cpm4yG8TVRnWRmscVG8KYr31k/NFDV0tmetqEAs9fN2toOhVpj3YFGFi+8mgT0ekn8LZKX CgEIcU2nC8ooj9OBID+7UL0jE5ffIWG/rRbKlVVdRC6BtbNWGsw/ketFGn9MZymNVRvTH0 7J1j8x35ZeWRILiMsR55AF0YLSxU1T8= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573523; 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=9OHpPSU9A8rMw65GpV2i5kAnHrOB7dGDB0rMnM6cdCQ=; b=fgkPYkL9gMRnyDkH2RMIwKuOFSQ+y+KO7EHHtpv7Wngciwo89WNxP728ntzAAt1JUW/UTn H0Fg8D33X4l/QIWJNe8JWTaU+Ye8fCjdrKywWuLyM5LxlLUAf0cXPmW/KclM+oPE8MgmES SJxYKqlLzN9IFqngaxWPLyRMbdzTXVOlgsgxW1MMzSDfGd9ToBldiUJv+znD8Ata5DzkeW 16oJosV2UUPRuK44RefC2ea9AihINCjdN7H8QaAWloooA2RbrDzBXUi8qpytymNSUJOZN/ Du9GAHro/3MRHoIWBh2PlninlkPOMx13+WpEdCj2EeOl2q7MK7SKnY13MKj69w== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573523; 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=9OHpPSU9A8rMw65GpV2i5kAnHrOB7dGDB0rMnM6cdCQ=; b=bauLXxZ18S9/378dg+A3yudnEpxzalp2Z99jMwwAW+rGiU96hjqw7z8Ig05lE1UMox2dou t+dLKA5NVDkybmBw== Date: Mon, 03 Feb 2025 10:05:11 +0100 Subject: [PATCH 10/16] selftests: vDSO: parse_vdso: Drop vdso_init_from_auxv() MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-10-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=1524; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=ugBwqhNadfgaJrsWyUX/2beQ4czEKoozrpKImBBUGps=; b=14j5KAr756dMld/affOvFMwsnE3RfqI6n9MkPXjBS3SeQCSJnmZpBsFXGJMIC6BfEE+NqoqNB JEIjSpeFEuyDorQqPFhp9++Vl+WbXqyyJu8KIzXICUkV9cX7C9/zdR0 X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Rspamd-Queue-Id: E4909C0007 X-Rspamd-Server: rspam10 X-Stat-Signature: o9mnp5jkukmgtis33ycxzwsgtmreb7mf X-HE-Tag: 1738573524-71000 X-HE-Meta: U2FsdGVkX1+Bwamv+8jAZPDc3TfYUvcxqu3gxhN3HATPnoRmlAFNTrle7isWgFEypr5nvDuZTvOvCcc8/TTiS2p6xyl9QH+dxeDAqzW3Wf9hQn335aChH2nU40kmgn67NwYtonvYkT0lUujzh0oKZpeQsRrS/zBEXFbO2MHDy/XAXYypUxKaL3yIt07ml4UbfhlG2SQESw51iDFKQqH68a9xQUN0sr2p4gN80W8buPAh6hruXkVFzNUiKLUtVKI5rtZ3z2m4wxoVlJarJr1w7nKDdaAsZeBrZtS3fMu5H+aPFrblohmGoprHI07eXpSJ+zMDiVkeHviI8nyrAtqPCLptRX8+P9PRzBD61RjBoGj6Jiw/rn7Rxli4xijoQNoigJvInQexCWNqLY5wQAJJNF953rBAm+8TDf+Pf2NIhdYPtZ99ib1rKfs1BVYiV5foSJ+QdV2HOIIU6PgVjc7+94j6VttcnkitSQSR0p8G3fuCEr7MotAI/COWoqYmwMexzF4J0y1InInjocn4u5rzBicUfB3SV/GGjDYVOdqciUyj+bkNGNsdBeexhZX4jenyBqYlUIg5AjuFOG0m0DXb7hJyeJ8KDGBKexgltaZk70cHYGJugjA1I9MrF576Wkm+GMYkziA/JC8CrMiQCLk5AAG0bEnS5XJImj3N7dxhjOgjk+XcXkBil1eE0spjQrGd6q3INQhzG4hNNZusXf6ePZXugDYDNhvlTO/h0IKWmVFyG4L3Wg/Csr8ZpSE8xahtUR5nnIgU3v4sWmQqHZRtmRSDTgs7weX1m2wKByWgZDyyYC/ygWucfZ8efzIRlRP3JMf3i3xVZoKPzk0cM2yWMDyNMSYeorjYrAj+nl/XfRD/7BaYX2K7rfoo+nQPl4psyGK/YhjOzbt/yjbHk37ySCcEL8S1xX9FJ4RFAA/OrEnqkaI0xWynU4sDwRhLisHa2Mgw2ydaefmu8wA0aoM gosmwz+v XoUbtXlQTbi3EcJGybyAsjrM7b3kYYHGcIqoZ9FpEGwUyVPFr9LEYTM8bSCtpr6hd3KF+4coV0/mY1GLm5iYdRMcF8rhk4cFxMbec5P0uMYLO/9mzGmltlZruny0bBstpJqpCyAfwsanTFiAZSaOeOIMHXQfZ9Hh256vIHn2viLiN6oDIHhyzh5p/A/+wlV5awzX8Xyw3704ilu0cpsg+8FYbQjtdjH4TyBFzuSBbKP9Z4oK/LLuJA9iYkcBnsGVICftoCSzDqa0VgWK64h1T6piKQnF/L1Fu8g15vgSnVrgkoKAjQIE+wyEigOwcXaEGgc99hg+ySd7DmwHUAEvInEz0lysyX0+zlcxmlKqLLyzx2j8bEhRWohHjlqd8Cnrd1UjaWySfll1GguT0OpeC0h5nMAapyVA5ud/kFg61u5SvrdfFhL0xI3PKrGJgZpAMNjPQfFuL1HTMb9d7Ttj4Ufa2jXRlG7Vm0ENsK6BenCtBKXM= 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. Also remove 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 Mon Feb 3 09:05:12 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: 13957108 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 A72B5C02193 for ; Mon, 3 Feb 2025 09:06:10 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 34205280009; Mon, 3 Feb 2025 04:06:10 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 2F3B1280002; Mon, 3 Feb 2025 04:06:10 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 16C61280009; Mon, 3 Feb 2025 04:06:10 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id EADEF280002 for ; Mon, 3 Feb 2025 04:06:09 -0500 (EST) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 52BAB1CABAB for ; Mon, 3 Feb 2025 09:05:27 +0000 (UTC) X-FDA: 83078049936.12.71232B2 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf04.hostedemail.com (Postfix) with ESMTP id 6ABD140006 for ; Mon, 3 Feb 2025 09:05:25 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=QKMTSHwC; dkim=pass header.d=linutronix.de header.s=2020e header.b=ANpDWJuI; spf=pass (imf04.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=1738573525; 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=MMNXVOXmleVpz/sdR4snAJ1botMjGa/FJxTjPMio01zktTC+0jCF2UBjUEIEo1wEsMyefH f+uaDR7z0z1wXGxWLMl2vXMtQwz1YmJjvlSfrAuRYR/2N0pQcVgQ8nhyYympUnnBr3bLrj x4kZ6AozwnSMTI9QfOqyjJvOxuhZt2k= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=QKMTSHwC; dkim=pass header.d=linutronix.de header.s=2020e header.b=ANpDWJuI; spf=pass (imf04.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=1738573525; a=rsa-sha256; cv=none; b=l+6Pln/aOtlkJt5I/cWks9ruTVnY8qWY3MEw0H1A+T8l+GPzA0uSbIZVKEr/xqH4NeLJUV ufIyoRAD/KH+xbTFf2LF2Iq99yXu+SK8mthXw0sXcZ6gi02Pz8W94VAFHIVD5dHKwNhtXN Iqi0n+DyXekrK7KRY1tAMsiN03Sthd0= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573524; 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=QKMTSHwCQSP1GFrALXRUd1pr+I0o1ken7IFPwr5hwCqzVi5W6OAH6JEzSoS++jlQNCQqtQ 00KSRzsq/zQbFz9eJiGM3N3QvBCwPu9xXoRt28OcagWfzRCpaeaFZ3lgKiQlXeFj/fbf1V DPF7gANzIcMfKhFc2IHT7o0pWk+tdhx0OvkmPAAajMUw7iyIP9rD491lyrpvnpz12e2kNo mrEdWAM30mWVtaHFrSFuuYdSsHHzA0+kM1USqBmE0DX7S5NbFBX1eZFxGsJZSTaefZfjfx OfXPqMO4W6RgERpxeK/11QmwDNm6Drfs2txWKiz7gd/vZ4KAtd64gHVgVl9GPQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573524; 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=ANpDWJuIpNr8cNesKHQJBMRYvjmuj39qzxjgbY6Dw12se5Zf4/l2uhcKpcUNWox9CHNc4z qdBmoii2TPSVlHAw== Date: Mon, 03 Feb 2025 10:05:12 +0100 Subject: [PATCH 11/16] selftests: vDSO: parse_vdso: Use UAPI headers instead of libc headers MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-11-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=1432; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=NpOQuxLd7KblcjFPnaDO5YLxwLL0GxVqW0hZLzvIMGU=; b=EVrIy1GANEM6B5AcEyRo8lV/ac+2X2NNYAMOZ2NnAil0mfCdvESkLcjnYXyGzAHMomYPMYrjZ 9nl+mXfJMzCCzL46iUgHOKGLJ7oGfv2ZDai+6a470OId6MfhWN/AzaG X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 6ABD140006 X-Stat-Signature: hpf5ajbkp1udc4g9c4i7m5fs6cc6ukch X-HE-Tag: 1738573525-983395 X-HE-Meta: U2FsdGVkX1/ZFLTbiVcmE/rb6rJqmvgqvLo/QF8rIedh7a0pmQPmiSysC2h/tr+1F1fHftMKbyTfm5B73RJHsNHmf3hBWZ1jx3RizsJgI0SQNCbtcT+EuHOWwut7Xp3NQopBhnaEXwOnHWQQ0k0RYQg4v5tRxoKQ8/GaJmCfTEeXFxaM1HUJDBVdvfHjL46jnFZxA47ubZ13ZGq/8cGD1ufR9EeA2QbQR2fO1GmfGqiEXfpCcJdx5RzeAYRcOKzbWDb3Xgsav+f8RlIvw5rm2eS1gNZFI9p1EYDeVAz/xiKG6J3Ftkru4WsMun/8EFUZ2qndzB7RPDjDj0q6y/S7ECfdIidWsNfQBoFfpea4oSAPkuLu24iBNZoRO3wm1Xs5nULrWaqoN/rrWVmdleza/EQ7Lu39IjynSdh5uBvO9CPzjS+6p462aiN2DLV3+GIktqt1Mgw9gOIUVLCaad8Vjot2LyqSayafH7DFarhRmZm5LHENxVrqobm7DurNix678938DKIOHX0CJMZgl4U/99tG9Gf8akGgAI0px9iT+JOEGj001GFepzj1yd+x28e5gHO+fGuoSExt/9w2nBSB4iCkHjEbv0eX6N+4sM0LYShWYZPQTXQvXjl7iNarp6Ep3BzYVCgqoiaFH7xDk/5CRlFFuaDWpP3v6t+kRtH9W6CB3cZR3sJKiuT9VvW8No/aRfyZtVjy7QFGMSngMEKEVFSs4Im7o0g7locBpyv3yYwol3TI6a/RQHnpZdAR9jdkPbckOmOS2kDzUqtDXl+TC0JOkc4DJOKuKLo9YFIr1S8EPpwrCxygnNmk8x53iIXkhy5mGeQtO1OHjaoAtxok2mo/U6lz395BJ48Q7vHde0UqKmrGfT32C0sAXBAV9asiMlp+G+7FH7gOpcuqr+AEMqF3sOIsec5Q6pPC2DjM02k1fjg+KM2wJxAbnFpo/tC81K86I2p1o/sCdiVdQK4 hAuChi7c VvaYOhtsMmay9Xmms9JeigcBEaS95+jnZK7voNCwHIfGmW1hti9wD7xCplYpN1p4f4HYDe+XMhTUpJoQS04XfJKBW4PIPchyCAWtWcEhTjXHCgK3EXm1/Cfg+2iImzq5RmhZtQWigN+tzK7XyHSrXuu1oLxme45B2xd1rRckp2I3bTbLt1vl9HaXEzd1pCCBgLeET3Ro1YhlbyEZ1vTznbi3LfJi4NwBw9mKNhe7G+RvkILesGNIMy6GNn1mWRl/6/bChpeN9yShJMuzxkOaxku8numIa2/utnYiIagFiDO3bgnvc8MwKje04mxij1czOuYt7msoSitIwTcgQWoOMUDDSshlbBiWkPFNAr/3ogL2iPCELi+5qxSkHyuAJ4sJgusNv8UQRpA6NyCrJkvrwHeuKOGbP2w6g3Ap7/XC6EFVaXKBRVToRsDb44UNAw9Js9KOXqwOJEZTxemi9z2GdlFBufaL8WF7iVELgjb/0pR3uDR0= 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 Mon Feb 3 09:05:13 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: 13957102 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 044BAC02196 for ; Mon, 3 Feb 2025 09:05:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 21B05280001; Mon, 3 Feb 2025 04:05:43 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 14850280004; Mon, 3 Feb 2025 04:05:43 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D38BB280001; Mon, 3 Feb 2025 04:05:42 -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 A97BC280002 for ; Mon, 3 Feb 2025 04:05:42 -0500 (EST) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id C30404CA8D for ; Mon, 3 Feb 2025 09:05:27 +0000 (UTC) X-FDA: 83078049894.02.9E7C33E Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf21.hostedemail.com (Postfix) with ESMTP id EBE081C0009 for ; Mon, 3 Feb 2025 09:05:25 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=nvEN1cOm; dkim=pass header.d=linutronix.de header.s=2020e header.b=oF1rtIul; 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; 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=1738573526; 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=jFDwPV6lsBZslToOKyXNR5t+tXo6Hgz12HX75G4gxdmBFXlPO52U+zf4xdzkDk9lcoqwzf k1EivzOiG3iTlruSH7B/KxBO2xZ089g3lKDAKWckjzZSJ5O3aQV8ihbRi2pg6HtAikULp8 lGnjVYqB7FDA/pIgZhkfIEPGNqDyqoM= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=nvEN1cOm; dkim=pass header.d=linutronix.de header.s=2020e header.b=oF1rtIul; 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; dmarc=pass (policy=none) header.from=linutronix.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738573526; a=rsa-sha256; cv=none; b=IJ/LxVAjXkpBaYEGMPEHcA8PXxAHmiyyW8pZYDEPlmu7fU0oes9pAwzskbfl/znxvKv0XN hsXHfGVYf9PWAvEyIIN93yGII0YOy2PuhVUQ7VygyYsIiKyMi1genk+qHaJBgLhj5gibXb 77eTefsQnxM9ma1aMzjtH0tnzZSJChk= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573524; 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=nvEN1cOmn06k49QOVYgcSYuPY5VASet5LsKlrY5DYUZOHO4UmeYOuTHYyWx2OLJ4wkvFT2 ja29nLqXV6qQBiSPYRZZ8jD4RgMVrGmKu10RGdVABquOEtfTIpNicZN5WA4ArSK5CibbOo idVN3IMAor/2EQHweC5iQp7PvxrNVEg3kdiDD0JPtJe8WumBoOh6ZLAnsgNPLnoviMOAaY FxooXiVCuBCUq1eYPuAaqNED5jsajGMiiMYPUXeWXJqAegS0Pmwu5Pt8D6ojtc+2j3MNjK QZS/YhVUAe8sYq817HUGYzz+UdOHcqqnevqre9JX80n6T3KMbdb8FefbljQMTA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573524; 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=oF1rtIulgN3B5woeBiKpzvQTVwGp3aSYHc5lUe24f1IDKPQ9ufAslpGaab29OU3BJWg1nG EV6VnsFpjI1gEyCQ== Date: Mon, 03 Feb 2025 10:05:13 +0100 Subject: [PATCH 12/16] selftests: vDSO: parse_vdso: Test __SIZEOF_LONG__ instead of ULONG_MAX MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-12-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=1086; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=fJM1dVn7zNhQ0eUj0mWU+BrWz8rCvgfwxzZIAbjOWds=; b=P2jF09IdnCieXPEKGoemdM93wx2FWHeUgvh77I2DZzUgYMzUUEK/15O2kADdMBCByL/IGRMDb XPonFfZ5batAjxJINdtO2IIyDvSP2J2y/IOTq5G6FHdWQBmcgPx7uiA X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: EBE081C0009 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: grj5femuf4517r8179ecif4x5au4dis7 X-HE-Tag: 1738573525-782255 X-HE-Meta: U2FsdGVkX19AgphxrV6HkGsFVZFLjuFVFzBbWoyC3je/LM1BaSTAJfTLVQTvhyHuDXvPZhLuKwRgg/XGsgb0wlZMYx1hzMKNUaeGthr6yRx+PfN3tcQZWJoLjg2qpZOJerxXmw7QnkjknBULG4kRans4tnDs7FjCRCZUGilRU98RE7XmKLQzICfyyiRP3mj68mPeeH1cTDS/OXC1a3Zxd7AKbM8h4zBkJ8S9g8mT7tHdVmxUIWcVeR+v2uH5796emfna/iQ+6rFyjcwbYp5g7Xj1gyyPLjfN/UoByvqkMMws9VF2CCRnUxlwur9ZvJvRtvqP/6HL0vCcvlghA0SHa+WNASDl7xPv9rll/t3Rs7cJ6tNuESgaH8G1TFv88HIdgsPjz5rLP2oFy0UWLrKi1IIfVoXnrEFM1KjCeC3vn61j7h/Ww7iFL8saHiJBw3IZ1ZZNqXZk9i/G2QcSghFhYetpkY8X4TLoIhIlXjCg/In5O1hLbJvXa+zoJKNYp7lPQl5IGWxFuVkB+RwIku0SnJ82uu1SoN7esXgYg0wjJjGmPKaWd9LEa97k0UWzuWfVOOwqL2gL8RY1GLiFQRdUDNxDM0rSgt3LiydeHvCWsy0b6YKOgtPm85i33J0PeqR1LWvknoozLRGTugJ7G75R92Tn1P1FKhvKWl2YjOasKPOpCEux0bf8Egq13edVnFsNILNk1LiKFdJPkNoJbtHK4wazdMngjWgcuZfJAY6f7/ZmoJWn1+Iu+Vi0FRER6OrVMLvG0fllQyER9NeCc5FC9UM9bToLFEzf1b+/Yq7iw95UfG4+xMnnLVW4uVYmkfK3GgmNYwyel6vfG3nOviw6/9ytxJ99X1W0rISy6BW/yzKOdHHXUbkXBwPb6T0tD490LEmibljngcmqMUNr9fwqwGmthZSyAQrV1NDIIs3brPvLYsywQ08TFxBOyIbaa5ytZmEjn+F92y0YipmHVQz x5SnYcbR 63cz8hD2ljH3u56N7xlgD2PRh2K27xIsRGo4AahU9FPiVzNteBCZwiKtHLGBSajRu50dTTIB5yya7SyjV4t6CzAKbvPBV3IH5oPzqeBUXbZ4oTaw6OWPlXOzHOIb78SqpOj94YttHueZeYFazk/QPGnOHMrtKEL3p9esBWP/MK29fa/XeeJn7qA41y29cSPTXTRIFLBClfQCxLGpuKlyf8oMtxs9UZJlvFTc9U1NqNCeoiyFAoWyWoVpYWcsaNF4ZL+wFOR+URk1fqmLL6EIlHtoDrknXq1bIF75sEwTXIUWXHijE5OFb58E230AekUTa/2JmP7JLLibSnHPhfGFznRcs1umdsKQRZkWuupqEf/EvAuunMZDF2kp9aS5STr3jhymsbO75QBaw/KdhkPR8QP5K6yVwRasUklNmVH/0RYq5g+TC6DVZ/7fN2nPZ6HlrcPd6a+kcwPvuuOIHWlJHJCeCQXRashBYrnqxxhIpml/SlDY= 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 Mon Feb 3 09:05:14 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: 13957105 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 76DCFC02192 for ; Mon, 3 Feb 2025 09:05:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0D09F280006; Mon, 3 Feb 2025 04:05:54 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 08264280002; Mon, 3 Feb 2025 04:05:54 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E65A3280006; Mon, 3 Feb 2025 04:05:53 -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 C717D280002 for ; Mon, 3 Feb 2025 04:05:53 -0500 (EST) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id B615112256C for ; Mon, 3 Feb 2025 09:05:28 +0000 (UTC) X-FDA: 83078049936.29.B100C75 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf05.hostedemail.com (Postfix) with ESMTP id CB847100015 for ; Mon, 3 Feb 2025 09:05:26 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=DfC6KsHR; dkim=pass header.d=linutronix.de header.s=2020e header.b=rA+hLWr6; spf=pass (imf05.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=1738573527; 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=IQYQpcPfp6ErdUhcd4g1hQR7rxemGi27GYxhVGxGLIM=; b=1lqZSoE128MvxRLUE6HDwSy1PUXAc8+fecgmtB1uihoK1XB2ZATdtPO95U+zqnl/3PYX01 Q9fpgheQgMmkE4BkG1oHR3qr2BtRejFPIrhFovNTZ3TY6n/SA4vTWohhCc/v9RhWPQWRUf /hgxrOT8298K6gMZzQr8GXv16Usqyqc= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=DfC6KsHR; dkim=pass header.d=linutronix.de header.s=2020e header.b=rA+hLWr6; spf=pass (imf05.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=1738573527; a=rsa-sha256; cv=none; b=nIYDdUWx6Y2YM5vEMKGPmDYxbaSy+XuMtRtY2Vr7utH0jZ4McbGKGNyOxjr2vcH1wqrpHX csViCbS1WeV3ekiOVJ6CAvI8jztwTA6Ulh3IvLsKB/mseLNVtggCEnUP3kv7Kn3dagrYXY 1vsPMlymexcYbomUO7BqotOuaFXL/YM= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573525; 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=IQYQpcPfp6ErdUhcd4g1hQR7rxemGi27GYxhVGxGLIM=; b=DfC6KsHRJsJQPxHeNvNfWqqvAjHu5L4PMF/ZKBcNWpdNF41CWDQjwSQNr3ItUnSwcNAjEf XVBhU3TlZRaqxVtk9Z9rhlXaqxNZYDZ8jnwhOO7E++JyAzOXg1lTCcqXQGwxDtkl8kKN2/ QnJYH59ZagNcROQM6YvD82ObUKy0TQ90JldyJiANnr5zmkgEaXSUKuO4W207CB9MH1r9ha f0mClQYJ/AEKwkQK4Wwag5u4dkRUiG3q+JCunW1NOXO+X7Rb5/v8WewcRPMClCmRjRdkz1 f0/XO1RBnDWXdPeCGK7kDIQLVCHrk5U7GGQbFQWs/D43QL2XZUSk0i59hLqpcA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573525; 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=IQYQpcPfp6ErdUhcd4g1hQR7rxemGi27GYxhVGxGLIM=; b=rA+hLWr6BMpQWLvEovR3V0jSYbK1RbwTORd27NAuWuAvtIbg3xiRJd/+xwABegsrk7+Z2V h/Hq6/0YkxIYZnCg== Date: Mon, 03 Feb 2025 10:05:14 +0100 Subject: [PATCH 13/16] selftests: vDSO: parse_vdso: Make compatible with nolibc MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-13-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=756; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=k6VUcueMsds64a4Z4MA/57EnupYZZoqU0G2BNVcipcM=; b=VNnbvj9POxcSn3A13xo7ug3s412wmbrg96lC38H2tnhmDK285wBgMT1/UX6qO+TUEE2TdHrBV d4lNdSDjftsB4ikN+Hj4kSbgObC8Xve+4WVgIxIeGYyX6Y2VtnqQFEc X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: CB847100015 X-Stat-Signature: ti3da6fc5m6rx4ajuzdx3daxwbuza1pd X-Rspam-User: X-HE-Tag: 1738573526-272439 X-HE-Meta: U2FsdGVkX18ZQ0zTrsHSV7KGutersb4nxPc4E2WmK7O+pMfp6oSJh2dfh5DBLGIsZyaXyYxjpxisYqFCrxNsMtBpt+n6+axCJ3XAnhDjgpVJSFrIks/1AzSzGbldSNF4AzXBpTPaUo4ij/YzvAkkSGlR42f2GghaQNucxPTO226Ngmk+CLwglsb4MYKHADVOqztVXx6MWfrH5ufAympea4JJeQeZZk5jVLbqSNG4fuRB3hZhNoQWLB51IKu7033jWeDlqQ2/eJaqhvnyojsbvpBBkbI2c7vntn3Xc14Ctita3cXnp/ZSIltAitFcnlBC2bFIWfRntCgzjC1MCz4L9ziqzGW3ruJ8n9EH4Lc2ihOnsKn00XM6DnYoQnT9Uwe1cjZbFJcbx3rFct+3o7s0L0KUGSRjRXk8X8lughn0YRf0Jagifob3k4RmfF4In6Qy7WLI2eykDbLHIwik/H3Kp/xYfgZM/C4wDi7aBA0lm4OFiVdJsNjsk7+nWV1ZmixEpzFa9v1FK+j3ZIVthOvN87oQtUfklbtrH9VHo29g0Ye5YN979WJ/e/mgTmqkD0yUFT4h4z21WNFCW2CNmRQObJT6QEGWhSBEaZpVztkDL/C+M/CoSRQ14yhhCkn0Xg47VLY5pBxA12V6SqurJniZgtUmfBdeV/JxzXmfUbSokiBbeVAI/V4/jeQ1fsSnLQ13dGKa6KfkmBpFrZSRYANOi8OzyCHJir4BuYRU6HMx4qoqMQFrJ0goJrljjhTzS6QhJEjRl7ubzaWy+q6lzFdhndUpHLk8Of09JUm+I+k+IQzTebBd7AO/xovD3hkNkchn7uPraUUp5pNRmcfQFo/HW9kFg2Qi7ys19vF+83rk07R/SN4nkCP8883nuZZNLLs+TvE1/q0QcnFTYeUAMWOeXcFPM0QvhiWh4VGZb6jJMwP8wSwFM/OFnmLluGZj/lTsU/g5Sih72RhAG7xeoX7 V7arBEj7 +EEbs5BwC00x9ezOQVLuhRxyFIYbBE9iOkwELLHuaPdvhOTF7WGV0P8NtRmzwY25LmhuPkKLy7I7uNxwp8xWyxRsjrk2LRwnw/SZfFqpnQ84eSH6nFnMbfaJMZecuaMI3No/Y4zVWQksVJffZzTcedKo4IGZBrORRl/QRtiqdDiQoyb2cMR4fGxBCQOOTr8obdz+pPPShRYvuyDRfBATuYpbg0gxi3yLLc0sqIbqMNXZg1BZE9LIkYwv9kXvO95t9bDLXH45fx0FAESYHWKk/yC0GlwO+Qh5dhnaHEfZRShvqRIdaNO9AG4Fcn6Ycv+Eh4HQFUNdPq4lQnLy9vSCGjwCCjUVRcVxIL5CYH/UB3Jow2x53Fx9zGW+59iL2po0/hgSW1dWFzAAR/HfS1sL3q2xPu1Wq9RJK5z+fLjL7FqTLkYVsGc5IkGWgW7oQCV7owFb+pCkJb3Ifn44k7FHFFc5Rtv0a+TnD5t0clEBysuh4G7Y= 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 this header, instead its definitions are available unconditionally. Signed-off-by: Thomas Weißschuh --- tools/testing/selftests/vDSO/parse_vdso.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tools/testing/selftests/vDSO/parse_vdso.c b/tools/testing/selftests/vDSO/parse_vdso.c index 902b8f9984a1f70049d46bcd4f199df24f507dcb..6ea1d7cca6a3da910097630e8237a3a6daa0cd06 100644 --- a/tools/testing/selftests/vDSO/parse_vdso.c +++ b/tools/testing/selftests/vDSO/parse_vdso.c @@ -18,7 +18,9 @@ #include #include #include +#ifndef NOLIBC #include +#endif #include #include From patchwork Mon Feb 3 09:05:15 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: 13957104 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 941B9C02192 for ; Mon, 3 Feb 2025 09:05:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 21501280005; Mon, 3 Feb 2025 04:05:51 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 19380280002; Mon, 3 Feb 2025 04:05:51 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F2835280005; Mon, 3 Feb 2025 04:05:50 -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 D2ECB280002 for ; Mon, 3 Feb 2025 04:05:50 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id C96C4B4D8D for ; Mon, 3 Feb 2025 09:05:28 +0000 (UTC) X-FDA: 83078049978.15.E365C6F Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf12.hostedemail.com (Postfix) with ESMTP id E9D144000C for ; Mon, 3 Feb 2025 09:05:26 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=yjmAtgMY; dkim=pass header.d=linutronix.de header.s=2020e header.b=Qk+5JP6m; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf12.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=1738573527; a=rsa-sha256; cv=none; b=7aY3rzJgrB7aq/qFWFxbCMXlEsy1vVMzmuMDA/XloKvygUiBX6wZVSyAsvMFwSN89s4/KL +ne4DK6DlMhJ2UO7LpRQTjv2+j6D/t9jG6Ug5qVLCXrN7uCli/LaoUOP6TaCd7Uw0FQeX2 gz8li50QZPMvsjM41ZsG7y4/jlRyHso= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=yjmAtgMY; dkim=pass header.d=linutronix.de header.s=2020e header.b=Qk+5JP6m; dmarc=pass (policy=none) header.from=linutronix.de; spf=pass (imf12.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=1738573527; 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=Pkaxg7OMUXM+J5nh3dkCLHGI/CxGKZ6N0GKbKhwi5nnYj7okuoli1umjo/Bpwo7B9CLazG Lh8+SdruFNv3XW+R6gKUIO4rZDcXCkokroPyPSkjPFRGEHvAE1B8xEpAyOCSyPNEwatmLZ mOo1Y6dr1VmsHWAnwKOap5sCmFbGvlU= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573525; 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=yjmAtgMYGYfBdpksBGL3fLj3qyPKzWWYn9LYLPNuZ48cP7fMNj2UUfTat6YJOWkmEUT+vR UHTsI4zn8oh+peO1dvBPkvsvUICpuqld/b/0da5ylPAMpltqhNSqXWOVu5fwnZ3b5QGQM3 eoYOD6yyEDikifawdsoHk40vO5ieyjDGlRD+u3cuy4IkfAa3WMScUnZrQ9YRHzU/yD4AHq IIqqMSZ3H4utDJ8Bt2Qy+2ueNbkA/Dx/T0PTHmtPjkkzYcGsYCYqwdJRYwE+ofpbD5tE6s Fv4SAl7sIVAmqRN5VLws6Rsn7sl3wEO7DGNlCdGY0qNFVlw10copD9nFdUFN5Q== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573525; 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=Qk+5JP6mxxwppOPLgoax+Q7V36u+yZMdh/As+saJE+SWTU+amwMyzjwngOwgQ//NXRieeG QofsWTBRfOJfO1Aw== Date: Mon, 03 Feb 2025 10:05:15 +0100 Subject: [PATCH 14/16] selftests: vDSO: vdso_test_gettimeofday: Clean up includes MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-14-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=803; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=WWyAjd0lBF4CXtwQtc/ysMPL9nKJJ2TfKtJWs4lpBX4=; b=Wx5hqx8BLX3nyiwjknii3zPUhoiOo1txrGf9MQx5F49M1A8vApW5O5bGzPPmgJKo1eAaOt0mk eQyNUERgj8dCiDDbUeShmbJ3c0NvGokZun7HHe6yXdmDHodqA/P5NGJ X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Rspamd-Queue-Id: E9D144000C X-Rspamd-Server: rspam10 X-Stat-Signature: six4ybjd5k5wx1budw9bejudftt1xjob X-HE-Tag: 1738573526-828134 X-HE-Meta: U2FsdGVkX1+CEID4Rz1dey1NjLlWmiBkufVS9psGsoWOK/09UmI0lk1Un0p8T4SCQAvgSAxQuBp0TGNA2tLr7w5ztf3z/ipS8MR2xxNGVKeNDnJbBWwuRDta+srQmWYnOPCbZV1Kh0IvPAC5l3O41s5pI5R9i0v2nNQ2YHI/JM5ZYn5YKPKbTyCa/xTH24aMwMNPB3d9adYxwRlMRIwlmPjKGbcT0UNrcK1YKiZ2EsXgizRrg9OPWV1x58/Mu1BvtrEGZO/L3BdY/T0Amwj/XS//w26B34ws5J5YfBLsTx3wohA07R/+zP0pkb+wPM2sGQi1kDStU3itBbCimcXkYSiaUHVxbfHELIGnFDxCgM3pSuSGm62lMrU5iXod5UI1OKb0NGwIwWqfDyTxCzRB63qWDEf6uzLCtJUlSvNgNc8VfHLbirrkNOmFNgukEM8HXDfWtW8DUQMqGO1yJLlDpn6oHxhcSUgjP1ZypXGIXRNMzgV1IHL1JHIAZPS08Wug/puRA3PJSd1BZo2TzRtnlN2NXzwk+FCFJAMQGv3koiwxpoKvxtBtTCfENJ+EgfAewRCt+SjDrCA55Em2MPZWtwUv8WiAXtg9hHItCc9Uldf2wTHkqR9Y554YwgxKXzXZnhMAvjIBU3wvOGPQrmfG35OHAc8APdfsBrsSbvdgmf0Sv6k08To4xDDAXJzMzrHIX8Oj9X8/MdXX7QwxuZRcRC3mdNVR9ilgzoldH5VK8L+dtKEGjR6yAfaczrP7ajBaPVkJVLpCZmzgKVvPs0aCz7Yp4VLTvorOs9PNXqMpOBm1ZuSTGTv1emdTrl21ToMJ4i5UWwftUpr/3OZFTX32rzsDxXSvFnvsaTSrhNA6B2EfgnDT71wGIohKvM7FPMQzYvtCul/xbYbQ1znrzaDdR0sJpKJtHsvFtpCe5221+hpw2ww1+xonIbZEEoUjfBEyX7Nz79m8rf/Q6fHPe9G QmGsUmr1 Pin+d44qmoMAtr7lHUC9u538Y6z8dofIIq5q/ML5d726CSGmDGhZqdyfsDKxv0JNiHBid4wfqR5U06WRerqNpYUw69yegDm13LDyVy+JTqWF74LRf5Llch0NCBtLJMese9T+Gnd9DNEGsWgB2fYL8CrPUCWAUqCqXFX1kaZue470DAdRhYHUEbk8Ka0Ltn6ONP9hh4FgiuA42UqbzRsZatFE5gtGzwlm0U1AMzW8FJQ+uhAM5uhjbxiXGQ/UY5gI964HidIHvc4sh6WePxd6MC/MCYrM7Il1bnG+OTtS92BoSYnNDp81D+m3rcQllKM6ODw8B7Xpdl+KNgLune7RaGYNbv/dz461eb5r7YDZarxPKYeZTqA3J7bB+eCec2eNWqkM/vhqssB5ptfDeDqUPZwvZYBuzsJbfKHmpMWpdtfXyW38aW1aJG/RcdFRzoyO4vvquQGe3hcAH0tY0XwO7mUg7MhxLtfs5WIHsWQ4KyZvDNxg= 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 Mon Feb 3 09:05:16 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: 13957113 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 D736FC02192 for ; Mon, 3 Feb 2025 09:07:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6C5D16B008C; Mon, 3 Feb 2025 04:07:27 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 6760F280002; Mon, 3 Feb 2025 04:07:27 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 53E106B0096; Mon, 3 Feb 2025 04:07:27 -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 345326B008C for ; Mon, 3 Feb 2025 04:07:27 -0500 (EST) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 63AB6C258E for ; Mon, 3 Feb 2025 09:05:29 +0000 (UTC) X-FDA: 83078049978.08.FB09E40 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf25.hostedemail.com (Postfix) with ESMTP id 91C62A0006 for ; Mon, 3 Feb 2025 09:05:27 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=UqHJOYRL; dkim=pass header.d=linutronix.de header.s=2020e header.b=+rybI6sz; dmarc=pass (policy=none) header.from=linutronix.de; 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 ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1738573527; a=rsa-sha256; cv=none; b=4mwB4F4tIJZV1SkPrBRWlGa5nQl5kOR+2xPcgKgYEkxxxsVEkhqhcAfUqoThjFgBwXj/Hl gh0130rTrzAOYHxpIufF9O2ih80Si1fc9EzdC84QayYknJJG52ZVjdAOOqpFz4UekV+lO8 4cZMRe3p2kllqZfl/W33PEeJelpRBog= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=UqHJOYRL; dkim=pass header.d=linutronix.de header.s=2020e header.b=+rybI6sz; dmarc=pass (policy=none) header.from=linutronix.de; 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 ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1738573527; 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=akjX6ejZy6yrjMb8T4TWrINw3z0nyCa+K645jeCYdtU=; b=rDihRtLipCcaidO5wLzX+eCvG1QPqR1B9UzIBTrS/MW5Y6EjhteRnJlckavexYoCoQBwLg XTD9oXA1J7v8ePp9PMfFQ6xoq4HC/F2KI/TR+cT5/9ziS82KMOzgC6IUzSbO21VG5vTMkZ u22hhaawNHJD8NDwuCN1QYotdVzw7oE= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573526; 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=akjX6ejZy6yrjMb8T4TWrINw3z0nyCa+K645jeCYdtU=; b=UqHJOYRL16V8iJkhRHeGNFCghjH4fyhS1flQsI2QrAvDEHe13267dEjB6OtyxCq2nrOXm8 Wi6Ce7ido4LLW4mO3Hk+sz30Xnh7ddepdAADMIenVUaAwkH4VpuNtGyySMClyJrsKteEgy BhHewXdJG96x6RTzomwjwGMu8Rdq2NwVWPyc9yDj4WcNkO9DzTreQ2EMs5X65r9/I8Q/J3 +AwuVUUtXpACdl+Zta9bPe17LQRBNm3zn3i0EJD/KTks5iV2B48iKIgWxg+RguF5Id+7EL MM7iU4gQUFKSbecqSHzFKIfu0JsPCXza0t+XhsDa0mpOvwf8oZLtBXqqCna6Rw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573526; 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=akjX6ejZy6yrjMb8T4TWrINw3z0nyCa+K645jeCYdtU=; b=+rybI6szJmwaOxnMbGkpE1H0dn8OSbN7Z3I5x0wi1pTVv5WtLBpnD1xPYrt6z2X0Vh+rtz 7Oj39xC4G/+BxuDg== Date: Mon, 03 Feb 2025 10:05:16 +0100 Subject: [PATCH 15/16] selftests: vDSO: vdso_test_gettimeofday: Make compatible with nolibc MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-15-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=811; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=M1LNRTP++ni6j86RT9Rb5Y7RmFRtlZo8BBJFYlsbVjE=; b=tc0ELT6WhbHsJLvQddowjngOvtPYhzILhrX41ImTVVgJKAtZb4t+Iv2gwURamYqufz368zilT ejOhdeac9lPB6l0Kn3cv1zKLlfQXV+b1zaxTjWqCUDh/C26xTuB7yD8 X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspam-User: X-Rspamd-Queue-Id: 91C62A0006 X-Rspamd-Server: rspam10 X-Stat-Signature: gmzidtnioemkgnkoc5kzqqqkkwt4cx33 X-HE-Tag: 1738573527-585945 X-HE-Meta: U2FsdGVkX1/tYPN7jWBmvxmUsOOj1jeFjdno6mWkU64lWcHFjFoVuaha+g7JlESNTattr2Aguyme5ujQtoRK0UCeuof9vUYUYekCCSi2U81Ecfdj6iLzIFk2KZ9EzU6mFKszszhoBDwQ2h6xTryWlfL3X1f2Y+3p0F4YgHIKPyIlLe4WJ0RvENoZh14TJF6DIPjbiJ9jjrZHaqnBtFYJwXY9S4vcXOzeTTKHkUgjwcXVd89Lm1uQWlnlF8ndoAez+5ewfCuSxqhHRN91sWBVmi05gCVpiu2Rb5IZ56ieGTtX8jgsbGsSIL/1VuiQJc8URUv+DcYFaKAydszhK8clvTFf1SJEntTZW564mp0rQHX+tp2JxtkVL+kKJR3EqSOssqm7uBeSmihUJJsMfWjT3BsqrjObJvnvocQyWGsM2eoOLSsaKnCbB0u+0aIX4VMlYtW8l8o1SiXBGZrceatO1yAqLL6NBX+mjsctx4BdZ+K8GhkkCeQ1a4gA8PessCZhQLodUV6PUPOsRgmMpradvsx/98q23Ifhw92c36XLGfxmmkMbHh06OQyNL5LGZEDPyDU0cnzLV8rzH3pbLfFMEL0jSyYfbrVK+thZftkRj+YiPD04Rcn4peEV5IcjwQUqvOPN+7qb6riM+e2ZBNfp8X6NFmU0flAS9Xt0CLxVC7jDFrUKLYDOTH2vBdv4MX3p98WzcJOM5d6YsuVrzLI5hz5LEqU4ZRWkc3knWD0letxdmxaaJdhvFyOvqDq8k4S9W39M4ejqAZMfK6ytyMoa3c621Jsqtdc7HzPz2IIZYOuhpu1sQ6rrkGoaw4RXCcIFRXH8tfNzOkl5PS/DAwvQB4OG32VS84N/vJMNQwbQ6/HSlkrJddBfEQbS3opX8zEFZysAbpdfB+H3ojROf1wf0hhp2U90MVbTq19LXn8XUy3a33jpHl5/6b8/07dGuiRdmMzuGnS7dlBg0bpaVGr BytpfWBK 5rqF8cwwfRsh0PAOBewba0FI28mnEbhhpWbu+xQ6IDd2AfnOlpKqyED73P6yRvwvF1gjv4rKqNKjkjIs33Y/keeNmNhjJnNXjFFoHzLw7rTyoI1c+hUcsLKptG3JFn4Z8UxuSMAantV1d+Z6glZisPWssPP9hp7b7VUbP2emXO8uSMUHGMqFQCXi5LBgltiAZfEyCLKHLYE5QQnX2QIXsfVzsQ79NH8TT1NgYVdUFTlmzgtN7gb94pwBAldv/8GAKYQkCAx1i6Ux0Q6A/P8q1Mxzbui0vcivRh8CTx3iAe03wSNnklIR5Awg/7SjqCbhahfrCQReza3nCOLv/VrrGn2ArBzcZ4g+AjLY0Y5vFSZ6D4JVdA6pUGWGAXtaHC5T6u8h8Oy9R9NxT1xFhKsMx7g5vemo98WpSs3FLTwK+U+0BnKKI+dXewShUxG3zGLpY7Jt0bld6/81Tmp8aMm9FUeskgYxOvg9JrMK9tTUIIta7RBw= 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 these headers, instead those definitions are available unconditionally. 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 Mon Feb 3 09:05:17 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: 13957106 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 D4B98C02196 for ; Mon, 3 Feb 2025 09:05:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 654BC280007; Mon, 3 Feb 2025 04:05:56 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5B20C280002; Mon, 3 Feb 2025 04:05:56 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 40558280007; Mon, 3 Feb 2025 04:05:56 -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 1CEDD280002 for ; Mon, 3 Feb 2025 04:05:56 -0500 (EST) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id D45F312258E for ; Mon, 3 Feb 2025 09:05:29 +0000 (UTC) X-FDA: 83078049978.01.F30E749 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf22.hostedemail.com (Postfix) with ESMTP id E3A4EC0007 for ; Mon, 3 Feb 2025 09:05:27 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=tu8Hh9hb; dkim=pass header.d=linutronix.de header.s=2020e header.b=M1mKAq5B; 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=1738573528; 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=hkkLKmlJkZ0SSKj4f5YoKEb+xd8Ljtdwmbmsr4xET/aLLFPzsWKbjUKHHbrsLHvbHDqhsR 3c4/IkENhE0cenPQYRYZy+WVqRbEldU9OB+wi35q1fn9XnAYmIfylnG6MvK7Zwvv7Gg516 1G0ZpXW8VOJOybfoQI3sT6mXSuTlBP4= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=tu8Hh9hb; dkim=pass header.d=linutronix.de header.s=2020e header.b=M1mKAq5B; 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=1738573528; a=rsa-sha256; cv=none; b=LLR7qP8cvcZYT2IBHQUlmn8MRHh6apPNYYfG4nWsuGsqGpkb/PZ9PopMyd48o01J1yIlMV SsupE/3A2n2LnAmSN/Y8kPMj6l47uFCwJ5/GqKujfIyCCImEhvoUxyCW2Y+upxTP5bBwJP WM81E4eZgQWBK/4D7OQFYZTYaLkOR5U= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1738573526; 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=tu8Hh9hbsWetkIDgzcpH2nG14ZI8nV2lcq3oKrs+KHbFh8KtE4qTpI38Igq94jhAvFsFQj 3yY9SX6JdKiD8tVe2lUU9LRtsvnnjdn1JhlJXI2mhmuz8+sLGmg738B9CYWqJu3GcKAmBR eAZBHmf/DNUJNQ4HU3P4/HKvBWjUi8TdvgzhWp8BgOqw/UWfqmIFX4Ii8DQWyiZRkNMGxo XnDY1pvwSsJZetB95mma2AdKtOTPOicddBbhqUJKIL7EuaTezJuUX5Ac44BaK7XUGYnMqr qMdTdJVpXfOXIriZL4wt6wd6AqBXU45ogl118Na0xqoUU0pDPq51ih4XZk2scA== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1738573526; 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=M1mKAq5BEsyd2vw89rzEqIJlchsRF4h8bG5ZOfxZUaEDBVmgPocf4eab2VMqxI3symVNg2 4ntxneSBMmqJbIAA== Date: Mon, 03 Feb 2025 10:05:17 +0100 Subject: [PATCH 16/16] selftests: vDSO: vdso_standalone_test_x86: Switch to nolibc MIME-Version: 1.0 Message-Id: <20250203-parse_vdso-nolibc-v1-16-9cb6268d77be@linutronix.de> References: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> In-Reply-To: <20250203-parse_vdso-nolibc-v1-0-9cb6268d77be@linutronix.de> To: Kees Cook , Eric Biederman , Shuah Khan , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , Andy Lutomirski , Thomas Gleixner , Vincenzo Frascino Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, llvm@lists.linux.dev, =?utf-8?q?Thomas_We?= =?utf-8?q?i=C3=9Fschuh?= X-Developer-Signature: v=1; a=ed25519-sha256; t=1738573516; l=6263; i=thomas.weissschuh@linutronix.de; s=20240209; h=from:subject:message-id; bh=io6sXt7iIEpqclAN5udDVtDQPsKQqT7YCXVo80AmeIk=; b=GwjI5bSquW7zdPwOw/ObHOwJd3uaE2TURfhr6wXyXJSxHF8582pBDftmeCnGijOcc4+cOJsgI vZbb5XCvvLxC6Hni87Pvz2ilsFxfk0A2G8pgIDBOlJWWLW/J36zx9Uk X-Developer-Key: i=thomas.weissschuh@linutronix.de; a=ed25519; pk=pfvxvpFUDJV2h2nY0FidLUml22uGLSjByFbM6aqQQws= X-Rspamd-Queue-Id: E3A4EC0007 X-Stat-Signature: r44fj5yog6om4xonxk9c1kqdmgnmewmj X-Rspamd-Server: rspam08 X-Rspam-User: X-HE-Tag: 1738573527-632510 X-HE-Meta: U2FsdGVkX18+f/eUXObUMHgOeWc7IgB2yUaAJgmo1+TRbw9ceIWo2IwtokVRwdnyCX7xqrZxa/c0e1C8PsljUI9RktS8XDyB563/18YLXrQrLKwzjZkKez/1GctDps/2nfpL/J5qiZb0HgOtSXTX9KMQ1TUYLNWVRr9yFuFHBPum6xMRooTiycKRYTMiQH4WuR3QgbTpiiocNyloKWy7jjDLRArYL0yhj9+GRo/gVsZHeCh3Q6M//CJIKtDH0azBjUroYszL+1wByZkQXeJ94vhBuDT0bgoTMaIYkAKz3t8HBJkJBg7Ih69IChSBTObmJ2Dio/MckUVNxS1x69iIv1CgIqPgGbdJfzzDHiasCcvZY7q8sPrWkT177SQ/vV0BxlRXVNGxUCJnVlP0k4T2BSL9aNlsk+soUVWCFsm0fTdqxMhBQRXOXKfTj2jbcipNejXIpa6rR6mKQbXZzKqwr6doN5InuYyM7JqWSjQrTUV1VVUqTOOVqCJTo3JAGATBB20kbCup2jCuse4WLqGTsT78U3HB5ZbKpMB+Kl14owUwramY+5Mzef0W1ffXmHfJQmDKF6ItTl7b7LAjc75UmEJsrVnBJ7GgwXbqIvNJdMdCeN3WF06k44cEWjR9pB+gEA6ln5mauFshAtCy1EKddDfBn9U4cEfkrtiNpYwSXHTLHwzUUk3TesZ4rkrQ7yP2xNQgE43sydVBYmMpNTIVsgiVSE9ZOheHsRCMnszSxdRDBSiAroeZTQMqYlGPmE6o5reFlQTehMruVZopCXS5nz3G1KYp65A1APvruZA+43RmMFZlFhUo7QKk7Cur7hKlIGlQqG68YQnAprMSJ3Ax4CwCaLM6W9d5IhTZ6iYgvY9qG4ebczuWtU02oLNI33h+kZWNickRdfSFRUVrUZ4Pd7xpRBSjxu94II6CWHCIuVWFS9eCKnxqncyF0uZ6gaeNscaEFOrr36UJ2Hdc4Yr GBodvK6X v0lifsiAc4ArzrQ36EQv8cdQR7sZfIRokV9JHs9JwZd94K7Dx5kuT/aaROoOj1LPGZ6ieUfZVy265xkFBdggs+jrUzjyivwZaGPBT/GuaXejeLgtoK/BBW6K9n/EJ54Sf9tf/FkAR7CrSlpQpiYh8lF/UrJUO3bmxjI3cc8vfFm1fZdOe81s2MZ+oMoXm8DtfdL3pYa625CggGTBbOtzS4NEIOzmiWs+X9a2TJrvE6v1uBRuwqsN++VFbUOjaKBbTC2xAVro4LwI3ZYaIUO3M6XLjcLzilRTaWYuR2+orF4RaLa1HqZ0CV5z9IqEemZG9vF9LXk1jpVIpZ7/U68NFVDTE4OQ+MPM1ZplTAW0JbaoOd59/NWZz6TQMGBuIZfkvgvOC+D2U7J8iBvE7rqGM0Fekg0aF50MMqcvy9/Berq4xc99HLYJknc9DRpEq++8hlDwLd46qYKUTmBeFPuSswr/jZeWvhiw5hi5hixpjtY/PdNQ= 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