From patchwork Fri Feb 14 03:38:50 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John Hubbard X-Patchwork-Id: 13974422 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 A4F00C021A4 for ; Fri, 14 Feb 2025 03:39:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 15B396B007B; Thu, 13 Feb 2025 22:39:02 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 10BD36B0082; Thu, 13 Feb 2025 22:39:02 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EA0386B0083; Thu, 13 Feb 2025 22:39:01 -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 C39CF6B007B for ; Thu, 13 Feb 2025 22:39:01 -0500 (EST) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 2CE03141C94 for ; Fri, 14 Feb 2025 03:39:01 +0000 (UTC) X-FDA: 83117144082.10.9813E8A Received: from NAM04-MW2-obe.outbound.protection.outlook.com (mail-mw2nam04on2085.outbound.protection.outlook.com [40.107.101.85]) by imf07.hostedemail.com (Postfix) with ESMTP id 50DE440002 for ; Fri, 14 Feb 2025 03:38:58 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=YPSDOPwc; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf07.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.101.85 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1739504338; a=rsa-sha256; cv=pass; b=zz/pqKIDVW8Mqtq3OKsYpRs1slMcEoLJHw9Jfwee10ShWFHr4DChPjL+F0X0GL5HH+kb4G GKYWJS9rbM+W4a36mdTJWwwklij4cZUr+tM6HI5aiPb5TXcqakFmI0c9/IxsYUrtY+gCZ5 kFdCGDGGsN37n/V7mCKzvaJyzsEEYYE= ARC-Authentication-Results: i=2; imf07.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=YPSDOPwc; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf07.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.101.85 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1739504338; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=XNKDTVKzx3H43CZq3NlpON2d6JMcUC6SmJrdULr+B4A=; b=MtKarcvvmUrTWcMMOe2KcAIz8I903Th1LzfqkQFNRPNNk1TsdXy8NYVGHDoUBAxXvG2cvv pOsP7maHdOQh/b2M5x38bvsCst8aNQ5dwPZqJmg4kgDEB77fYOotQ42hwAtslQpgTbfWZ4 e9Z3qymNYvHVgFkRPSThf+0LfSvDMNk= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=cE4kg7qapb+39JP7dt+r0GWIhRMEDMmmNjnObJSPVD747UHR60TYjqnDNK0RdNxhq9uYvo5LTXPiZJTVgoq2Qkb+Td+pHg07xid3xuuRfVb2YGWQ9xqRxT62hNxyNau9C/i7tJTPqE0g3OMjwFKl2LOCDdU681fOG5cVOR2UnUPfYeDH4SoIBVIsVnZXfFc8xAjuh8vT/6Cr4f+XByeUbqf2BjUqovI2CnG4H6NeHcpEXJB6lS+tKdKaQI5lSKvla9CaVuTuy47E4l/UhmONNv3R3xbSK7+W5ncKqMiX0aSw08AWov+wQ1X2wbSzshuAwhhtZI6WzDGKlnmIMQ0SfQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=XNKDTVKzx3H43CZq3NlpON2d6JMcUC6SmJrdULr+B4A=; b=rSYPJ8UMWJeyy50uqKzOEmdinHVhbSPxyKfRNgVi+lQEmT61VGoFFFbwLl12L0RAXUFH9uMMVb2wYeM8+qHlFERpBfhb7vf8LfAVUWIHo5QaQxjjc4uMCPn+WfW5aUN2ym6l7ZgZqNpXT2XUe0JXcGExjszF7QSFyogY6ea6BYoIdwrAmhlyRg/PwsamRchVoPKtXJxQp06A3JCIkauKxewsl93JoMij7aeJd399Z5JMjUQMjyMjbHPRwxxttrlUmowS3j8WV7efiiTso/vHioKOJknssiKrkMdDso/2WsadDZIUGbN+im1QoqPHilaJ26xppEwHfWjidmR/S0Tj5A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=XNKDTVKzx3H43CZq3NlpON2d6JMcUC6SmJrdULr+B4A=; b=YPSDOPwc1vVcwpG6XPq9+gb5MnXJ4aE155ODrob5cON9ezWYOZObn/ZbLACXThxrKRSNSmQvIDmpbvrdhse0m+N84c3yjBO8jMvN5uY00Mq9GKO10porR9yK1Ul8Hzhc7Qx7pkH7BsRSt0hNBLPSODz9lL2hGi2KsN8CT5IbkNXgc7ABuc1WDs6ImR5XOmJpcDV0qK0NurUVA5R2fZp2rw/ZwZk12uE/9u5VeRZogJ315VyEyrIXtb1TKlXZ3NMUnwNs2CtFmruAKIRWQemrgoIrYe0xcGBaC6s6Vk3A/9NzmTrFhJ8JkNICs4PC90LF22TFaANCuDj5gX+nG2CXGA== Received: from LV2PR12MB5968.namprd12.prod.outlook.com (2603:10b6:408:14f::7) by SJ2PR12MB8111.namprd12.prod.outlook.com (2603:10b6:a03:4fe::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8445.14; Fri, 14 Feb 2025 03:38:53 +0000 Received: from LV2PR12MB5968.namprd12.prod.outlook.com ([fe80::e6dd:1206:6677:f9c4]) by LV2PR12MB5968.namprd12.prod.outlook.com ([fe80::e6dd:1206:6677:f9c4%5]) with mapi id 15.20.8445.015; Fri, 14 Feb 2025 03:38:53 +0000 From: John Hubbard To: Andrew Morton Cc: LKML , linux-mm@kvack.org, John Hubbard , stable@vger.kernel.org, Dave Hansen , Li Wang , David Hildenbrand , Jeff Xu , Andrei Vagin , Axel Rasmussen , Christian Brauner , Kees Cook , Kent Overstreet , "Liam R. Howlett" , Muhammad Usama Anjum , Peter Xu , Rich Felker , Shuah Khan Subject: [PATCH] Revert "selftests/mm: remove local __NR_* definitions" Date: Thu, 13 Feb 2025 19:38:50 -0800 Message-ID: <20250214033850.235171-1-jhubbard@nvidia.com> X-Mailer: git-send-email 2.48.1 X-NVConfidentiality: public X-ClientProxiedBy: SJ0PR03CA0381.namprd03.prod.outlook.com (2603:10b6:a03:3a1::26) To LV2PR12MB5968.namprd12.prod.outlook.com (2603:10b6:408:14f::7) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LV2PR12MB5968:EE_|SJ2PR12MB8111:EE_ X-MS-Office365-Filtering-Correlation-Id: d9baebaf-0f73-4f2a-44ce-08dd4ca91a1d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|376014|1800799024|7416014; X-Microsoft-Antispam-Message-Info: hN/eruXxrCzrHc5rKmdFUJw7Yg8AqkqE4eeS0s0paBgungvWthNBdBjLClc/QvVQIJdJv5KHXjwXoZrsO/NjeiuQ94FXUv7MKSFBPJwGjAZl4cQ5iL2s8BfZlZ/aezJ95MOu6ATMO++wE3tk4rsR39IuiozdJASxAOXtpxb+nflMMXNTt9NAGRr02U7E0eyTTHixoBPJQZzm0qDyDLcysQ2XqFZH6udo2OQusgGa1NeDBNQ0cRkZNyfjRLtBnUsGlW/pFeXvRacQVjoWG9NnP9o4LFpDeN5qqVuV3VIwB4QObVwdpUpuvNLhwm3NSivr509QZNqKPMmpJX3QhKTRVxyzL7vDXGAKCGJvJjWZKPqlbflNZZNY5gjnMdAO597suahoInlZAS89oCWOLWJ/Tpz9SedGK0BT+kTJcgUZcIPsehD33WzQEY7/+HnX58fXKCGgWzPghBmlqqIedkaiuTRrLs8xcOJl36mLg7/oh/di/XMGp0dLqHIhKxwxf+pPVZi/6bcJG4tgeriqtE3uI/K/pI+OiqjcDEM4mkVXVzx102PHcXkUFKex1OUlKvH4vJLoDFhAd6G8vfNsX+WfHuoHX7eD1NOI/FwKpYMlgR4y0Vd1YEI0tcIo0FPhomMMj+JwbXHIcfYYWYooAAgVB/gGBz/TT3HRgnPv/rDsvAXN9lp3wGz0Ml/3pU1MbxZ157sd3dv8rzi5ig/t2sFStehcfXoL3cqHqumgx6uopD87SHh5ZfpSBNl6UIoCzgbbKd6gV+RHCwnFF5DthyeZHR1sdfZJMSfXLDTY5WZrnQ4obEvkXA/gbTpXj6072xFsVBk+qIpddjVLbBXVwfDyMCP2M3PZsxbmVI1YoP+zJHkNYhzJljZJUrt1sR4G3Wm7GMsb1MvFUQI5HDA0c1+fNleJqJyBJsgdAgETLUjAO0ScywhY6Przr58DwCa5d0gznQQW/AWQHovdlq36L/iOj+KWQmatQ+mf+HRMeB0PZ0d1qtI+ksq8WUUO+O4SnjI2OAa5Mu2tfoHKhLAl7XCsBuQSZcV5cQfUSu+92uxsnK8a2kiV866NQ0UAvBfT7vlAdbMnnyUTabxLvCp1MUQDoapHoAkCq51ozuwf9qLekdYa/14539dBlIcxgt836oovcl78EMDYaMANPlmfHOt8eHRY0f0GmL/XI3U/w9RZ6KrIHGQLvT1DRip2YEPVdiOs3O+hEJr6EhEcsZvMnEwblo/ub8j312QVLHqIR/FbpSixyKT2ZPiHD1l0bRbTCgpv4Bw24wPdCK4iiDPp/2LRqaHVyqzDeMwwEKZ75xC/HgG01CAGLnOvmAUXtpbem9Ecca5FgHI7rS3b4OVc8iDg8joAmdob2zR1oRkJomvDnYQP+ZZu17Wfib6IlaQOB2Ph X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LV2PR12MB5968.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024)(7416014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: if4PH0naRgziblbUm4kOcd9Dq5OGL2NR6xnG5bP+px5rLwghYQSU+0TVzjvjdNOyU6gVNgY24hKDooa5kZd+9F284D8Ss92dSEUaqjSDb/uHh9aW7JnC+pvuxQyMifTznJeu7zKrF2o+o0w7OGAOYGwU1f1kA28XL7sSAVsTF0CjzXNWLl/ucBJbKuiKJeBIzcxM+u2Jw4+Lmf55VxhD5e4fLe+gvtA0szEldRpPxsd9nrvM8Te/Gydvs6FBAmhyd5chDu7sIL6TXb4R2e3B9cdVnfArlRf9lWhmuxWFOE+Cjs8e1y5kxt/5FUCQXI8/pSc4b9rDgdIBr0WP0amMGAdEJT5rdoRFklX5SKrd6W3poHeUQaoNh7VIRaxVjfpTMFUyZpuYERofjjFdvvzjpCshVDD62O/Dv1aW/0T9p1ng7IhSrAbT6LYrZSZ5S8x2oPHSwR9YsUurBt2+fydmMq6jjM9It8cIOiqxGHeXhmxWpXTAU+erdb3rwxLPGTdxzRqnQ4FHPf5rwCM2CXO5jWvX+ripg3tl4dze8UvQe3/ekCS8xvIAPtgOuMlqGIKEJmRLdyE8DfoVqZdg3w7GzhuwlOPgkEfe7pTTZ12Z1nB1MfpzR3bm60u8qns4hOjJyZtNsD1GqGTqkJv7qCHnS+Xhv1/Scfa5JEKcNmWsFzteUhEpabvCeTFzmoAoZdyE9ExPYk6G6oMAJnBuunPu2Vumi9OwE+7um8g96duZoMsb8wvE117kuGLZizkp8ggZtVZVYhJ8ee1WtDo9VjdS4y40Wu/ZktuqdPabII7jljLxQyJVoViSlR/sASoQg2p3Khz/394fHKkbhPmxOVcu9VAPXI2o6DVOsg+4whhZEfUZLkU9Lv+8/9Hkrmfgx01dbilUz9cy+Id09eHUkWyYUOUiz3O1TnZgHUq+19cb9VQ3wK0d+5xnxR+xIMWfHwWt0sNTeYDW4Z+vbAZNyWp21thq8LuPoYdFMK29POl2GEOZsgnTp41Fyn3b4JH/OxkglpPM+povOTc6goGDHcKZXDGQtfuvr7WKr9sPzHBKL2sd8TV9JjMadz+PyCzJP/co/NH0sa9PrGhFHCijtkpfc5uPHmryvql2/dyr4FS90i+R3IwqnlzppM3Y/ePNxNEUBgyyZkXfJsMbtrnrYxpnh6ktKH5j7jb3cIXXzBujvnsVQ+iqfjYF7TIe13O/Ec6KdBgRTeJFR5wkr2lVw6FudPDEUgsfs3tWktzsUBDQ5AJcqQwA9uT55xf4zIY/gkkgyH40/407RVGmxVqXUwJ1CgCD8PWtpno2HZvXYemzzx3oW35c0TKsao5hImlw+lQzNKMewoCQ6e7QCx5ox6Dq3bKoiVCszXCN5D0OxaEPIY0osquNsolT+40p9hJwS2mYiQG02cLOQIwHXXa/Y3kesUYOgnF6cb+fEW2V4/uIOn7dWeOzAF29tj7gvaw7AXbE1fTKlkogM5fn97MgDbW2lg4VzwWmOJpgc5wPMsgVca3fFhnONviyFtlBXRNiZha9/2b9+L22EOuO6I+ABKnELqTN+CJ/jhQLz5FROC4YmV9MJ0+6w/oeYck0jNjQ8oAd X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: d9baebaf-0f73-4f2a-44ce-08dd4ca91a1d X-MS-Exchange-CrossTenant-AuthSource: LV2PR12MB5968.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Feb 2025 03:38:52.9289 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 4Tf9JijXVl0eHyu7gcu7ILtiTgA8CvHGop7Gf5LgotJqerR4hta9HIe+XU4yf3vt9THR2IgXoUFXAIkzLJtsHw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ2PR12MB8111 X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 50DE440002 X-Stat-Signature: 9wgs1xkybu4htf4wjzx1xtfgjxjzqhw9 X-Rspam-User: X-HE-Tag: 1739504338-756984 X-HE-Meta: U2FsdGVkX19kaxaEavOlhNng12cklsc7P99VCjXY52TMM+SMTEhFrDTjHyndKlBj8GsrKpP9jtrVGPYPRm7Fr/ea3wwFRWmGVMLi5A7qNHQOgPBIpguxYLYoC86hGnIzgX9XJjx21jAWZwXIUek1uZFx+uZQq30l+qCuBpIjabwmi/6MKAlPfYc6eN7mGSwM5PYGxC/IqqN6XR03tT409Z//KKQsG3pbY4k09GQ2oF4ZMBaxJjHpZm7vjd3GKSeUIUNtJ9v7bTIHu56qzq0Uu5TcO2ym/osB9xQtJSb6SeWwkmaOSIq66S1vTpelgrJsGb+mH5nEjHYNVYrkWGtWFTooHi321d3Gi5VmB90IVn1w6aRoMsOw6AnwyMzmzaZEho99N3G+deK+Ma3bkz/iWrAs0Fk+oea8t69Runx5jVB89bVLua4DbY3rQlAaBvEap6jn14wQn/rB08icVuuMn9I5SI6N1Yx0Bb1c79QpVljpNAfeQ5p3oZMgDQ/F4uoItsPn1vFynIuw7cxSQJVUv6RxErfQ9YKj/wDU3gZ3TzWBo4YSzU9d7snVcKo1HMtJh2gmUptmZZCj9GaYCxkG/abOvjts/uM9USuLGSwNlWOTp2ACdG986LqO6EOSSuUU37TsWrJoDEvkk3oY3VL76aXAd6mCeWSnWUeqzHB5p9uOx29KeqeaIn05y83V+PAEq4i9j6o4GHGjtHwXCoCuaWJGLa1TtBKz0DfLMjjr4eXmiRb7RCU9uOfeRqGS+zLvdcKAh8R5O0k+c8mfDKPpOqZMGysEzgs4+idOXG+lgiNkjWsf7d17MHlh8msEuR0kUth/JmLgGD7eRXinmxYUkzYuKNikzmIYZ2IaqnVO1KSa38j3Q5vB2nr2PW7Z7Ez7oJAkCoX9ECMMvZZx4LrF7nB4ssXTZzpXRC5eWeogoq/Rdk8iT8xeh3xxXXyjVTZMqnY4YP5p294jDLp7Eoa w6wFt5AK S1W/XJT0NvxI8XiYwjGJwlDIz6lHIxsjnH0zaeEvzObvFdolUNvrg8XzM9AtKi7VSKz9UWD+N52dtkhRqAhEdiNKZc0IIp27Br313CeqI2tkdycYFR9P835tTx6FrGJ0Rzf/iW1c6Ov8M+gNWDPI7OT9uX5Hor0f3xMIS8G9sx3iR6jY/7wbhccoUkX8z8lSUERvZaBOqVidSHrsmgjoexUcjYkso+/eiDIw7mglsWuiRFlMyaq5c3mIzCJ2FQ5Rt5r9iWyC83A1QEkBuByhKMFwQxCLrnY6rcwWh8TDW6EFFiA4d84gIfkYstcFz7AufGnzS4Daca4KXFxDzsktr0Zt05HciQGLFvqUADuMhKppgytqpmu6X50cmpokkabfsO5eiu596C6tNTf4kyxQVEhtIONTzAg/i9lY1eV4hot/dzDbS34bPhPVpDznYWe7YQj1Q8qjCcul+8y7p4EsBoYf1ERYRkaFVh8mZBacniZ3yNu3y828+G6LiRDLvbN6cl68vdqskFCRmuCdHKMYF+Ao0PVB8p3nBzoXddCOVp1XniQChUnIPcfQ7kE9BZzABOJOjPGw+8ldASNYjabKAKEvS3YI/+pbp1IRlkikpQaPVI9WIgKUcbcCNX9sfVkOK2QpnW1mbctNnZSasMU9arOorweYdlmq6xxt6L5lM4f6+a/Y= 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: This reverts commit a5c6bc590094a1a73cf6fa3f505e1945d2bf2461. The general approach described in commit e076eaca5906 ("selftests: break the dependency upon local header files") was taken one step too far here: it should not have been extended to include the syscall numbers. This is because doing so would require per-arch support in tools/include/uapi, and no such support exists. This revert fixes two separate reports of test failures, from Dave Hansen[1], and Li Wang[2]. An excerpt of Dave's report: Before this commit (a5c6bc590094a1a73cf6fa3f505e1945d2bf2461) things are fine. But after, I get: running PKEY tests for unsupported CPU/OS An excerpt of Li's report: I just found that mlock2_() return a wrong value in mlock2-test [1] https://lore.kernel.org/dc585017-6740-4cab-a536-b12b37a7582d@intel.com [2] https://lore.kernel.org/CAEemH2eW=UMu9+turT2jRie7+6ewUazXmA6kL+VBo3cGDGU6RA@mail.gmail.com Fixes: a5c6bc590094 ("selftests/mm: remove local __NR_* definitions") Cc: stable@vger.kernel.org Cc: Dave Hansen Cc: Li Wang Cc: David Hildenbrand Cc: Jeff Xu Cc: Andrei Vagin Cc: Axel Rasmussen Cc: Christian Brauner Cc: Kees Cook Cc: Kent Overstreet Cc: Liam R. Howlett Cc: Muhammad Usama Anjum Cc: Peter Xu Cc: Rich Felker Cc: Shuah Khan Signed-off-by: John Hubbard --- tools/testing/selftests/mm/hugepage-mremap.c | 2 +- tools/testing/selftests/mm/ksm_functional_tests.c | 8 +++++++- tools/testing/selftests/mm/memfd_secret.c | 14 +++++++++++++- tools/testing/selftests/mm/mkdirty.c | 8 +++++++- tools/testing/selftests/mm/mlock2.h | 1 - tools/testing/selftests/mm/protection_keys.c | 2 +- tools/testing/selftests/mm/uffd-common.c | 4 ++++ tools/testing/selftests/mm/uffd-stress.c | 15 ++++++++++++++- tools/testing/selftests/mm/uffd-unit-tests.c | 14 +++++++++++++- 9 files changed, 60 insertions(+), 8 deletions(-) base-commit: 5c2b80714a515d35d52772c931ca4581f4646bac diff --git a/tools/testing/selftests/mm/hugepage-mremap.c b/tools/testing/selftests/mm/hugepage-mremap.c index ada9156cc497..c463d1c09c9b 100644 --- a/tools/testing/selftests/mm/hugepage-mremap.c +++ b/tools/testing/selftests/mm/hugepage-mremap.c @@ -15,7 +15,7 @@ #define _GNU_SOURCE #include #include -#include +#include #include #include #include /* Definition of O_* constants */ diff --git a/tools/testing/selftests/mm/ksm_functional_tests.c b/tools/testing/selftests/mm/ksm_functional_tests.c index 66b4e111b5a2..b61803e36d1c 100644 --- a/tools/testing/selftests/mm/ksm_functional_tests.c +++ b/tools/testing/selftests/mm/ksm_functional_tests.c @@ -11,7 +11,7 @@ #include #include #include -#include +#include #include #include #include @@ -369,6 +369,7 @@ static void test_unmerge_discarded(void) munmap(map, size); } +#ifdef __NR_userfaultfd static void test_unmerge_uffd_wp(void) { struct uffdio_writeprotect uffd_writeprotect; @@ -429,6 +430,7 @@ static void test_unmerge_uffd_wp(void) unmap: munmap(map, size); } +#endif /* Verify that KSM can be enabled / queried with prctl. */ static void test_prctl(void) @@ -684,7 +686,9 @@ int main(int argc, char **argv) exit(test_child_ksm()); } +#ifdef __NR_userfaultfd tests++; +#endif ksft_print_header(); ksft_set_plan(tests); @@ -696,7 +700,9 @@ int main(int argc, char **argv) test_unmerge(); test_unmerge_zero_pages(); test_unmerge_discarded(); +#ifdef __NR_userfaultfd test_unmerge_uffd_wp(); +#endif test_prot_none(); diff --git a/tools/testing/selftests/mm/memfd_secret.c b/tools/testing/selftests/mm/memfd_secret.c index 74c911aa3aea..9a0597310a76 100644 --- a/tools/testing/selftests/mm/memfd_secret.c +++ b/tools/testing/selftests/mm/memfd_secret.c @@ -17,7 +17,7 @@ #include #include -#include +#include #include #include #include @@ -28,6 +28,8 @@ #define pass(fmt, ...) ksft_test_result_pass(fmt, ##__VA_ARGS__) #define skip(fmt, ...) ksft_test_result_skip(fmt, ##__VA_ARGS__) +#ifdef __NR_memfd_secret + #define PATTERN 0x55 static const int prot = PROT_READ | PROT_WRITE; @@ -332,3 +334,13 @@ int main(int argc, char *argv[]) ksft_finished(); } + +#else /* __NR_memfd_secret */ + +int main(int argc, char *argv[]) +{ + printf("skip: skipping memfd_secret test (missing __NR_memfd_secret)\n"); + return KSFT_SKIP; +} + +#endif /* __NR_memfd_secret */ diff --git a/tools/testing/selftests/mm/mkdirty.c b/tools/testing/selftests/mm/mkdirty.c index af2fce496912..09feeb453646 100644 --- a/tools/testing/selftests/mm/mkdirty.c +++ b/tools/testing/selftests/mm/mkdirty.c @@ -9,7 +9,7 @@ */ #include #include -#include +#include #include #include #include @@ -265,6 +265,7 @@ static void test_pte_mapped_thp(void) munmap(mmap_mem, mmap_size); } +#ifdef __NR_userfaultfd static void test_uffdio_copy(void) { struct uffdio_register uffdio_register; @@ -322,6 +323,7 @@ static void test_uffdio_copy(void) munmap(dst, pagesize); free(src); } +#endif /* __NR_userfaultfd */ int main(void) { @@ -334,7 +336,9 @@ int main(void) thpsize / 1024); tests += 3; } +#ifdef __NR_userfaultfd tests += 1; +#endif /* __NR_userfaultfd */ ksft_print_header(); ksft_set_plan(tests); @@ -364,7 +368,9 @@ int main(void) if (thpsize) test_pte_mapped_thp(); /* Placing a fresh page via userfaultfd may set the PTE dirty. */ +#ifdef __NR_userfaultfd test_uffdio_copy(); +#endif /* __NR_userfaultfd */ err = ksft_get_fail_cnt(); if (err) diff --git a/tools/testing/selftests/mm/mlock2.h b/tools/testing/selftests/mm/mlock2.h index 1e5731bab499..4417eaa5cfb7 100644 --- a/tools/testing/selftests/mm/mlock2.h +++ b/tools/testing/selftests/mm/mlock2.h @@ -3,7 +3,6 @@ #include #include #include -#include static int mlock2_(void *start, size_t len, int flags) { diff --git a/tools/testing/selftests/mm/protection_keys.c b/tools/testing/selftests/mm/protection_keys.c index a4683f2476f2..35565af308af 100644 --- a/tools/testing/selftests/mm/protection_keys.c +++ b/tools/testing/selftests/mm/protection_keys.c @@ -42,7 +42,7 @@ #include #include #include -#include +#include #include #include diff --git a/tools/testing/selftests/mm/uffd-common.c b/tools/testing/selftests/mm/uffd-common.c index 717539eddf98..7ad6ba660c7d 100644 --- a/tools/testing/selftests/mm/uffd-common.c +++ b/tools/testing/selftests/mm/uffd-common.c @@ -673,7 +673,11 @@ int uffd_open_dev(unsigned int flags) int uffd_open_sys(unsigned int flags) { +#ifdef __NR_userfaultfd return syscall(__NR_userfaultfd, flags); +#else + return -1; +#endif } int uffd_open(unsigned int flags) diff --git a/tools/testing/selftests/mm/uffd-stress.c b/tools/testing/selftests/mm/uffd-stress.c index a4b83280998a..944d559ade21 100644 --- a/tools/testing/selftests/mm/uffd-stress.c +++ b/tools/testing/selftests/mm/uffd-stress.c @@ -33,10 +33,11 @@ * pthread_mutex_lock will also verify the atomicity of the memory * transfer (UFFDIO_COPY). */ -#include + #include "uffd-common.h" uint64_t features; +#ifdef __NR_userfaultfd #define BOUNCE_RANDOM (1<<0) #define BOUNCE_RACINGFAULTS (1<<1) @@ -471,3 +472,15 @@ int main(int argc, char **argv) nr_pages, nr_pages_per_cpu); return userfaultfd_stress(); } + +#else /* __NR_userfaultfd */ + +#warning "missing __NR_userfaultfd definition" + +int main(void) +{ + printf("skip: Skipping userfaultfd test (missing __NR_userfaultfd)\n"); + return KSFT_SKIP; +} + +#endif /* __NR_userfaultfd */ diff --git a/tools/testing/selftests/mm/uffd-unit-tests.c b/tools/testing/selftests/mm/uffd-unit-tests.c index 9ff71fa1f9bf..74c8bc02b506 100644 --- a/tools/testing/selftests/mm/uffd-unit-tests.c +++ b/tools/testing/selftests/mm/uffd-unit-tests.c @@ -5,11 +5,12 @@ * Copyright (C) 2015-2023 Red Hat, Inc. */ -#include #include "uffd-common.h" #include "../../../../mm/gup_test.h" +#ifdef __NR_userfaultfd + /* The unit test doesn't need a large or random size, make it 32MB for now */ #define UFFD_TEST_MEM_SIZE (32UL << 20) @@ -1558,3 +1559,14 @@ int main(int argc, char *argv[]) return ksft_get_fail_cnt() ? KSFT_FAIL : KSFT_PASS; } +#else /* __NR_userfaultfd */ + +#warning "missing __NR_userfaultfd definition" + +int main(void) +{ + printf("Skipping %s (missing __NR_userfaultfd)\n", __file__); + return KSFT_SKIP; +} + +#endif /* __NR_userfaultfd */