From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id DE061C54FB3 for ; Mon, 2 Jun 2025 05:44:53 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 09C336B025B; Mon, 2 Jun 2025 01:44:53 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0262E6B025C; Mon, 2 Jun 2025 01:44:52 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DE2556B025E; Mon, 2 Jun 2025 01:44:52 -0400 (EDT) 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 B73356B025B for ; Mon, 2 Jun 2025 01:44:52 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 6146C122243 for ; Mon, 2 Jun 2025 05:44:52 +0000 (UTC) X-FDA: 83509371624.03.28CF99C Received: from AM0PR02CU008.outbound.protection.outlook.com (mail-westeuropeazon11013004.outbound.protection.outlook.com [52.101.72.4]) by imf27.hostedemail.com (Postfix) with ESMTP id 5659940002 for ; Mon, 2 Jun 2025 05:44:48 +0000 (UTC) Authentication-Results: imf27.hostedemail.com; dkim=pass header.d=arm.com header.s=selector1 header.b=KBsuH75x; dkim=pass header.d=arm.com header.s=selector1 header.b=KBsuH75x; spf=pass (imf27.hostedemail.com: domain of Dev.Jain@arm.com designates 52.101.72.4 as permitted sender) smtp.mailfrom=Dev.Jain@arm.com; arc=pass ("microsoft.com:s=arcselector10001:i=2"); dmarc=pass (policy=none) header.from=arm.com ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748843088; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=JAYJ6KxE/0iP7vPjBpRHCNjrUuwVfBNUzoalATB/pmc=; b=jKkk/2fAc6s31foOe5gIeHZMif2sMr68dGmx9Jv0TMl3XdKhqLLqByWP2AVlqohgyyYF3W 8j2wH+N21kXx4/5c/8UETEKrxK9JgTpoAUrtKfY9mUTS7pqfODVBtRNLxhNdTYc+p4ApP4 GWwUoTto8q9XF2L8WJjgolKFLyikzyM= ARC-Authentication-Results: i=3; imf27.hostedemail.com; dkim=pass header.d=arm.com header.s=selector1 header.b=KBsuH75x; dkim=pass header.d=arm.com header.s=selector1 header.b=KBsuH75x; spf=pass (imf27.hostedemail.com: domain of Dev.Jain@arm.com designates 52.101.72.4 as permitted sender) smtp.mailfrom=Dev.Jain@arm.com; arc=pass ("microsoft.com:s=arcselector10001:i=2"); dmarc=pass (policy=none) header.from=arm.com ARC-Seal: i=3; s=arc-20220608; d=hostedemail.com; t=1748843088; a=rsa-sha256; cv=pass; b=zEf+kBUlpsm52iyB28oZ+w0UdzBprNQlaAX5ippICL31V10Zw+qjGCIC9UuzX79krV4YJ2 RieIC75ENS+69RGyQarVpUCgPS16tq+QcaEOtpr5dmt1vkxZAesNaf1wOvPLBqEH1d3nEf CFInb4Jfzx7p5kbdW1LJpIV1t6Cw4Qg= ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=RXqd6KQ0SqDrTxP3TeIGhKj7wQQLqhVkH07KTBCmwiIRZDSgtiFJOJNOVGeIBanddwhFTMYsgvubF/NobprNNBvb4bAGTu0Fd/WhwsXcWkahFDyKDXZJh1gKPY4ebxN/gGO1SFHVOz+bbWXfakyp7rHf6VbTJFklEkPr1idEWGpCIq3d7gKOMAJxcHDTDZzzrNEg2nZiwB5v0vS18fZCSYaKgn/ahB7wszVy/E4zzh5mQfK5taOXXoIhjdujKrlD+tJAt4uOMNIxbzMNqaMbaNRQShvc0CsCocVEs0BiEz40/ly0QG5dkwkQ9sYDr9cWJEHzPyZ7sTQwtmngEBzz0w== ARC-Message-Signature: i=2; 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=JAYJ6KxE/0iP7vPjBpRHCNjrUuwVfBNUzoalATB/pmc=; b=BMh9l4NwnBtwGNcucgt2EBqG6/mI5qLEvyaBPCGGHGsYuJDyG3wrWCQlfweFLlUeOvzO1XpiiYA/IX8s/vdhZDwVLC3TA1QD2gGS/9ZP7r2LkN+RORBeeoUYtBtG1XOimwFBEPOh8rdU5lB02eyBxx9RLklHQkGI0DC8LEpaYqWPIIVnbXvPnK4Ag/9ycuGIq8gJ7Fe8WG0eZ3NNLrRS5mM/b9az2udBVePjLwD9HoNDwY1rzNrF0iAuZNNlIRu6Si2IxYQohLiAgy9gX10Bd7MX8mGOgGUTj0uOh3+VApqgnH8mN30BPd8vTtFrds5MSPbzYoiGVM1hjrmi2RuAZg== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=nvidia.com smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JAYJ6KxE/0iP7vPjBpRHCNjrUuwVfBNUzoalATB/pmc=; b=KBsuH75xFluwsa9XxmW0WKq7tMvtBRL/sLlRobpkj0Mz0qV+xkujs9pIWAw4mRHIh12qfqmx/0WSFf7ksUGRQbnlRCZtTfsT3D7lHn2EQEAAWM+FwQJmDsdw78Ipwe/NFQ/NB9RuuzYdicGXMWMf3TgM0tOEXtfVA89ySuJvefI= Received: from AM4PR07CA0022.eurprd07.prod.outlook.com (2603:10a6:205:1::35) by DBBPR08MB10604.eurprd08.prod.outlook.com (2603:10a6:10:536::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8792.34; Mon, 2 Jun 2025 05:44:44 +0000 Received: from AM4PEPF00025F9B.EURPRD83.prod.outlook.com (2603:10a6:205:1:cafe::3) by AM4PR07CA0022.outlook.office365.com (2603:10a6:205:1::35) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.15 via Frontend Transport; Mon, 2 Jun 2025 05:44:44 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by AM4PEPF00025F9B.mail.protection.outlook.com (10.167.16.10) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8835.2 via Frontend Transport; Mon, 2 Jun 2025 05:44:43 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=CAu6Z9oIN3VjS2cAQJ3qXUzEpfQjGjxH8SNVMd9MYZVL4UroJx7He+jUN+i5E4P0m7nVdi6Ru4DmDLww+HvGZ6muEcE8r4qgjf0LxOVprt68hot4MDQibe/GFoiSn9GJpjLUzDx6+9k+HBV/pAbzTNP3GwwBHBI2lk8vwTy13wQm9+MF8JlI2ThimE6YMAt2yiI7aytYLfnToIppiyqYGvX7O7EbkiaiYAKA/u+qtPH2dGwXFIrzaAfcFSg9/v9x96EQoe0Gv/dbwlQcZVG13BqN0MhB4DUSo5hgqjq2KIhlx11eSaXfOHSh/+X1a49cSPYyt2/WtFJiV1Ut/rnzwg== 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=JAYJ6KxE/0iP7vPjBpRHCNjrUuwVfBNUzoalATB/pmc=; b=UMAynGB5qb9yik0FUXlcAlrmLBuCUwU+EwePK6R2MArhgCdiRDv1dpCsQBiWGZs767G96SrCv4BNe+bI9tRkjRvAqy0gCNZcwomINDboG4RzH90c/gqKVYpVZVIfaiBGY0FCcfwbrRexq08ZtgJkT6mSvBcgkLltJnHEfmd+pSO5ArAMUZaDZ0gpFVhh/iweV4DObiPMpO+yKsG+serfC0zdvddY/NXHCQH2W/KBAyjBJk2L6Dr03LR0vjzliwDOqbxSwqU9HbCMAJ67dakGud/tHYZFeoKQ3N6buTU0tbPCfALmuPvGX4Vo3S/ay9JiFGFlTDUqwMwP2BC24sdQvA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JAYJ6KxE/0iP7vPjBpRHCNjrUuwVfBNUzoalATB/pmc=; b=KBsuH75xFluwsa9XxmW0WKq7tMvtBRL/sLlRobpkj0Mz0qV+xkujs9pIWAw4mRHIh12qfqmx/0WSFf7ksUGRQbnlRCZtTfsT3D7lHn2EQEAAWM+FwQJmDsdw78Ipwe/NFQ/NB9RuuzYdicGXMWMf3TgM0tOEXtfVA89ySuJvefI= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from AM9PR08MB7120.eurprd08.prod.outlook.com (2603:10a6:20b:3dc::22) by PA6PR08MB10624.eurprd08.prod.outlook.com (2603:10a6:102:3d2::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.37; Mon, 2 Jun 2025 05:44:11 +0000 Received: from AM9PR08MB7120.eurprd08.prod.outlook.com ([fe80::2933:29aa:2693:d12e]) by AM9PR08MB7120.eurprd08.prod.outlook.com ([fe80::2933:29aa:2693:d12e%2]) with mapi id 15.20.8769.029; Mon, 2 Jun 2025 05:44:10 +0000 Content-Type: multipart/alternative; boundary="------------yekU83LbIyIzmS0T0XwH7a6N" Message-ID: Date: Mon, 2 Jun 2025 11:14:05 +0530 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] xarray: Add a BUG_ON() to ensure caller is not sibling To: Zi Yan Cc: akpm@linux-foundation.org, willy@infradead.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, david@redhat.com, anshuman.khandual@arm.com, ryan.roberts@arm.com References: <20250528113124.87084-1-dev.jain@arm.com> <30EECA35-4622-46B5-857D-484282E92AAF@nvidia.com> <4fb15ee4-1049-4459-a10e-9f4544545a20@arm.com> Content-Language: en-US From: Dev Jain In-Reply-To: X-ClientProxiedBy: MA0P287CA0014.INDP287.PROD.OUTLOOK.COM (2603:1096:a01:d9::16) To AM9PR08MB7120.eurprd08.prod.outlook.com (2603:10a6:20b:3dc::22) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: AM9PR08MB7120:EE_|PA6PR08MB10624:EE_|AM4PEPF00025F9B:EE_|DBBPR08MB10604:EE_ X-MS-Office365-Filtering-Correlation-Id: 7b455515-f79d-47b3-fe56-08dda198932e x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|376014|1800799024|366016|8096899003; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?Ad9otiYXlNSWnEG8WnZDAEqAZczreVfddgAjxGe9cy/PBfJQhU24sVQ1JpCK?= =?us-ascii?Q?f5OI8x9KObVd4wIrTpjQ9IXQIQb1zlBSLHtVm9i3G8HpcajxBH+/iWuEKXrq?= =?us-ascii?Q?Q56YPHyUpr3dcLLDcIAx2sB4Jz1F8IDv6LtZOMoe63RTJiY8ymDjdsS4fqfA?= =?us-ascii?Q?bVLuwWyI/ROnx5p1BxbbdhS6qk9zH/2xePjcR4S63zXdAjxZbswt9YYvl+Wb?= =?us-ascii?Q?xBz2zBn/QFd0tLu3cYCrSGxzfFQRoqU+tdQ5IuRnG7kMGqBt8ygyxCpSaxEC?= =?us-ascii?Q?VMOWMZ1ViCwQ6TuBKJ/nPCpj6N1Rgn+Kp5xvUKot0sAM5SlSrgmqedNGeuSa?= =?us-ascii?Q?pfAHoxbRz6OxrL3CxjyaNK42v+eQM8cujZ+zVNQ4xPQwHihFwqzdflRuatwQ?= =?us-ascii?Q?QhwSUptTZ817UqRgVy/TaIvrGnS+05R1E8mRl+xu0y6WQLRupBaVPuBa78i+?= =?us-ascii?Q?Yc0T7DrDP4Um4AuIyz8mNTyc4v59HJKJkRWBf8EnjGAGyxzKHZG8TsQPWZ/I?= =?us-ascii?Q?Gysu1T8no+2AQ1Ql52q3H/6zZ0cTbJ7KtL7ORqdCALN+EX8Q1G96LkYsWHHJ?= =?us-ascii?Q?lDbI/1pn00lMyh3LJL6wkoOMHi7j6qO04Im1kHT3dBIi+uRUCalLzeMZQljJ?= =?us-ascii?Q?qYt1dlrbY8LXSyHAcnWZ8duxGsFnVuTyqw4vbGEC0H8y2iBwAWvGx+j3fUMO?= =?us-ascii?Q?YLnPq2pmH8A83Rk4KUT5Ehm4hh6/z5FysuGsxpW/+SmCO072hxXG10a6cjyU?= =?us-ascii?Q?szGrKxGq0MPOiPrqRcUskjh/RwHcnyNBU08bF7jb1cGZQmVYjOS/F5UWq4MU?= =?us-ascii?Q?MQH65iWbeHSfIYYV0ajDmzsiuCt78GS3QGfzXyB7/04FXARMd7He6Y3K3VGC?= =?us-ascii?Q?B2scyXCpratKw4VOk8Hh5KzmJFKv3QQQHBdWa6tvxXetGHsXr+BY1nMRcsJU?= =?us-ascii?Q?KT1WHklQLy/hBq8Qr+53d6HkgYdC56P5mlUE/x1zEJcC5EsuBqLA0MTwLRaW?= =?us-ascii?Q?qRcs41HYcz/GkP86ytOjDtB3UF09AS4jcBA1RGWE/NmwgWxWeE+zT9Vz0NQ/?= =?us-ascii?Q?2tE7CNxP0gaZe/YSsOiRZ+Gh4oCgGpy+xygx0AOkjQWOa6cK4QroSpzI9FC6?= =?us-ascii?Q?cqiAFUTWyp6LavYZopb0WI8kIUA/t7RtYC+WI2O5zatt3fdb2mtawcn7G6r2?= =?us-ascii?Q?lOiJ/YsDtanmnE1blsuZlc7sntazfRUO+UlhKOz2bm50MBtA7WwafB3sR0c4?= =?us-ascii?Q?TYZudx4zoN+PWqqSvUjG2uEG8hsqPRfW/b6qJlGXXeYKqdfJFKdKlzTSHDbs?= =?us-ascii?Q?ushfMqN1ZcwBHsdsfkqI9yW+Pe4wGuMyJqhnfvC/KQVzoF4t0UlSsR6ShGpN?= =?us-ascii?Q?4wHQyTP5mFIdkJKohbsdIyu56Q4cMVFsspcZH49vZzYZWxbYvMf6Me9FwTOD?= =?us-ascii?Q?Y/tFGQi+QrI=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AM9PR08MB7120.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016)(8096899003);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA6PR08MB10624 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM4PEPF00025F9B.EURPRD83.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 21f2d19d-f732-4590-717a-08dda1987fa3 X-Microsoft-Antispam: BCL:0;ARA:13230040|35042699022|1800799024|82310400026|36860700013|376014|14060799003|8096899003; X-Microsoft-Antispam-Message-Info: =?utf-8?B?SGFWdFMrWmVHTHh3MXFESWV6eldaNVRNNDNDM3JhWDBZZmI1Z3dHSWp0U1Mw?= =?utf-8?B?NDE3cUs2Zis4eXZEc0J4QVAxUENld0VzYmxDWmhHRCtocU5VSWFSVythK2FX?= =?utf-8?B?c3E4b2RMSDI1L3VLNGRibEgza0Q5Qm5HV25BRTQ5THA4aE9mNEk1RHloNU1L?= =?utf-8?B?ZDJwYjBXOEZQdk9FOURLb3U1UHM5eExxNVE3c2JTazZEeGdaK2xmazRqeU01?= =?utf-8?B?U0t4YUxTelRGeFBMZ2t1SStiNnZvRnZZZHBSa0YwSGtYOVN2d3JJQWhaUEY2?= =?utf-8?B?MmYvdDFaVzMrRlFkYzNWWVNDWVZTVXczQ2R4RHpHUEFrUXRYR2l1KzFodlNn?= =?utf-8?B?ZHZjaUVkV2pUSUlBVzVEK1V4UmJwajFkRmxBZ01xQzljSFFCSEt1djJodHdx?= =?utf-8?B?VDV6Q29FT0c2VHVCZzBmTXBxYkVBWEJoZHJ5U3pmd0QzS1hkdjJiRld6QWZG?= =?utf-8?B?NHU4QWFBT2RGbk5odkxreWVIem9CbmdjT2I5SFhPQkgrbCtHbUF1QmtUTVNE?= =?utf-8?B?V2xpM3RmQU9abFBBRFl6dFhtc0N2Q1NDZ0F3Z1ZlVU5NcjF2Tk5wZktLTHBo?= =?utf-8?B?S1dZRGh5ZTROUTY3d0twZlg0K2lkYnVNc0VoT3BqbWdYcjFuLzVZb1IrQ3RZ?= =?utf-8?B?Ry9McDBTbXk4ZGFuM3pUOVNHZDh5YjE0OGkvN29wb1hYUVY1UEFtcDkrYnkr?= =?utf-8?B?SSs3SWJFaU4wZ3dkZVNzTjI2R3ZGWmx0MGNoN2h2K3IvNlFSRlZhV0hySUJF?= =?utf-8?B?d01UNThtbXdIT2tjY1FTT3VZVEFQT2MxdUVleUxIVUZLVmFHKzErNjhzeU5E?= =?utf-8?B?YnhhWFU1cFJkK3hpWWxJRDJDVDMxelBNMWk4Z3JOdUJyUWFoUFBuY3QzR0h0?= =?utf-8?B?Rmo0SGMwSHdPZElpRVMyQ3V6YlRleTVUb2Fqc3FtRTFxTUs5Nzc4dkxGQlB1?= =?utf-8?B?SVN3U253VW1XUnhiRUJKWWtBWDg0UEI2ZTVWNzJ0WENqdUtVVjlyVHZ2OXQ1?= =?utf-8?B?OG13Yy9nRWtXWFAwZHNHY0FRRFA5WVlNYkFYZThuWkJTdVcvRlBFS05Rdnhi?= =?utf-8?B?eGJjT1lzdjRsYnNHLzBqZEU2U1cyd1publhoSHRPd1E5WkxFQWgrTTU2Tzd2?= =?utf-8?B?MEtMNFJvL1hVOXdSWjZ0dnRncGRjeHdxUkJSRFo0dUlHeVArTy84SERhY1Ur?= =?utf-8?B?SlI1NVk2ZmJuQ3l3MzREdDltNXpkcGZkTzE4WUhYTnF3RWt0Y2pVMXI5dU9D?= =?utf-8?B?eW5zTmZ3UFFpeTZFRTdtZUJpdExVK3ZOQ1BxUXU2YXAvbjI2VGhWSEVEM3hI?= =?utf-8?B?N3JXL2MwZU4rK2xmYzN2clh6SHlEL3BCOG5BbHZFdm5kSUZqd1l0WGJLaytE?= =?utf-8?B?QjJNTzJXaENMeWFxcGRmMzgzbnN5Z2ViK05MZVo2cTA3QkJUMHd2S3UyWFJh?= =?utf-8?B?d3YzQ0xFWU1pTjRpWVJaczkrWWtuZHNPMWQ3R2RaZEJoaWd1WFJMMlRlSE04?= =?utf-8?B?Z08rLzd4Mm50YWgyU3lYYWlXNnA3dVVlVytPdnFxWFJYODhjdnJSdEJWcnhB?= =?utf-8?B?WlkyWXF2T042cGlpVXBpZVg3eUFpN1JoRXNZUktBejhPUVFQRHd4Ulo4QlBY?= =?utf-8?B?dFpqOTRRZWhIL2NvOEJxK0FZeVc4Tm4zYVQzMVlQVDkrYVJQQTBORDRYOG81?= =?utf-8?B?RUFGWGd1L1YvY3NKbG8wdXFkTXVORU9LSXhvSFhVdU5zRXJmQTJIWkVXY2ds?= =?utf-8?B?NmtmdTBoem5vbFQ4SmR6QXI0YXI2MWxYajZURHdybmRDckljTlNoSDNOeXBz?= =?utf-8?B?Q2paditUQ3BFcTJNbzNBaEUvMzA4OXhNUlMxaWN0U2pJRUJBZGpYSDcwWlk1?= =?utf-8?B?YzZHdkVFMENBSHd2RXlkTS82SEI5OUQ1ZWpjd1FVMXBZWHNMZE5JY1NqRUxS?= =?utf-8?B?aURaMjZMMWFHMWxEQnhySG5qT0JFdTVUbEtMdGZRR0FJWjlUblZWRDBRakl3?= =?utf-8?B?WEsyMkVGZHNaMzE3K1dhYWppZVJPSXdxc3Bjdm5UYzRzK2RjRThqVks2MW1z?= =?utf-8?Q?i6QrLt?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(35042699022)(1800799024)(82310400026)(36860700013)(376014)(14060799003)(8096899003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2025 05:44:43.1882 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7b455515-f79d-47b3-fe56-08dda198932e X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: AM4PEPF00025F9B.EURPRD83.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB10604 X-Rspam-User: X-Rspamd-Queue-Id: 5659940002 X-Rspamd-Server: rspam09 X-Stat-Signature: 6y9okrz61wraub5rdyuo8z1634ispga3 X-HE-Tag: 1748843088-589720 X-HE-Meta: U2FsdGVkX1+Cdf70jNZv01gpPmdBYzAsrR2DmyNUSmgNo0n9LRZnv7T/mdlY2owAPddU8xyMRAfeuGx4gp9QeCB/4+BAVme4nDXdbzt8NnPvDGrTaouphMf37qRsqgkCDgTpak3hbqK5Zn0BlvBXjwaE+0UAcISPrM/ssWbvZlgXHSCrkxp8JQvDlxy8sKU0dbYw2TM2vF0dMt8ekuM7XgK9z3aqRTlHj7pC9h+9cu4OlQWQSU3V54RQuEFf2ch1lM581Dy7Q6Lxu+t+Lxd7V3PmSOoM0K5Hk0t3EmMpny9xvQ9vev5Im8uTdsN4V9NGoVuF9wq2+b6cUsg6bHfE3RZ30jOFio2wWNR3dNbpQsEOpRRszN43i6mKIvNtGVNAYq2VlNxMO3BWfz/W9Biefmm/OEuX/RFcKYT6RMM+nZ7LwchJ1F4+JiSa9mTHVrD9JwVYxoGMKmrHUg/VMU1YewgowUY/9k8onlOJlvIx/CWVFsGyibj3zjJi/dKX3wxnpJ/58of6G8610fT60Su3V9W4x8uPM86FxkjMoesRrB6IpY96KwVAMhZ74d6BsnzFuMxWPc6DAfWy8t5QHtBgR2ycWWNWnBneItQq0hFPr9dE+f3M0ty0yH17MIPAaHuH/pMwC2zMGZoDc9+YIO8cHqWQiI7VIZ6ucgqNtyDRvFlzT20FnjIMA38XOHrMi+PxlznHMpDjSP9nkUTlpF/0fr1K6RV17Bd6ZIyIlQ7M/bCy+HLKYB2qw5tF9mayX7NJTBxKFqHEDiuf+zfTSHjqV+Oc6/hOIl2nrR/g421cPgUemvqHdvHL8rpv0PKFYrU80ANu2O8Mk5E2EqqYoK6cMVo1OEaQDAbYtS0nnKOXptlw1OA8pD2AN4n4oQ9kGEzA+7DFTcmoqCJYG4kSjGUhIMBGCMjq+wryDypqB0HApjjUKyEVXRRhbcIeJaoli89i6mLQCTla005+ZnjFubz YImEVhW8 OZlYjrXTq9m0Dsu14YwE4ZKnbYp6Ca2NyBniMR31WBuScOwp0O1EKOu9CBfLZwfREdbWIMDHm53qLntDbxwSKw32PRpNMIroC2nXYLbUVjP2JdjL3GZ9ZCt9kSq5H4csZX9GL5RDfCA3xL9c/YEpZMpybgHYoeJK0xS8EZgEylhk0Wt4Y9aB9kXu41XkRKDpQuoLrWFrnSvRxYCjCdxsmApiBYSYIEJRt781uhnidPBkpJo3P2SAdky/NBAbq6lWdguAZIP6Ju//xUnsLTE/nTvA8siuI0K778Lgbmke+Y/ZAZj6Os+2rpa+C5SL3W3i3E/JEMYosLkEiSAjXXImqm2q/On7Ua+m1W9I+muiWREyX7NozrVSeV1IukK69/3XnRRQl+h4luArWiWyhzEvxHDllI8dRD10jRvq7qB8o7H00zH6aOAIsSqkO9P9S8CiRYDgByAE+G/LhW0nb4tw8hxuH59kHttJq353BTSXSETRxIRpYSiC0hgBl5mxVFUX1ycYpk1uvlNBr/EZLrAozZQtw+IuczeBjTVD4JrYy38WtqWJirKYkFy4l0j9kfZNsoC+sBb69FARwBIVuXf1x0eIopnZIcIKbnt6nVOtl9UviQHwXiwPRubAqPS3rNJtudhOFQO63rQPo+qqh9Qp8BZNoYDAI7Wt/mQ/0PZkcqVmSc7n/oaJcQBqNyokAiX7hP/afTlw/fEtbizVavj0HuoHNAaETb4+Uhw3K602yjQPjmfXIECFJ2GAfXaDns1Hit7pqvWqQLA76/hvjtpXzKxr8mlTxeVvM1t4adqvo5A9YLy1PMOoOxkY1P0HKUcg5WIEg0g1Q9QDycmvB6V7GQoEC++F04IhEJQbjL4cxgKubrx0= 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: --------------yekU83LbIyIzmS0T0XwH7a6N Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 30/05/25 4:17 am, Zi Yan wrote: > On 28 May 2025, at 23:17, Dev Jain wrote: > >> On 28/05/25 10:42 pm, Zi Yan wrote: >>> On 28 May 2025, at 7:31, Dev Jain wrote: >>> >>>> Suppose xas is pointing somewhere near the end of the multi-entry batch. >>>> Then it may happen that the computed slot already falls beyond the batch, >>>> thus breaking the loop due to !xa_is_sibling(), and computing the wrong >>>> order. Thus ensure that the caller is aware of this by triggering a BUG >>>> when the entry is a sibling entry. >>> Is it possible to add a test case in lib/test_xarray.c for this? >>> You can compile the tests with “make -C tools/testing/radix-tree” >>> and run “./tools/testing/radix-tree/xarray”. >> >> Sorry forgot to Cc you. >> I can surely do that later, but does this patch look fine? > I am not sure the exact situation you are describing, so I asked you > to write a test case to demonstrate the issue. :) I added the following: diff--git a/lib/test_xarray.c b/lib/test_xarray.c index 080a39d22e73..44fcc947a5b6100644 --- a/lib/test_xarray.c +++ b/lib/test_xarray.c @@ -2111,6+2111,8@@ staticnoinline voidcheck_xas_get_order(structxarray *xa) rcu_read_lock(); xas_load(&xas); XA_BUG_ON(xa, xas_get_order(&xas) != order); + if(xas.xa_node) + XA_BUG_ON(xa, xa_is_sibling(xa_entry(xas.xa, xas.xa_node, xas.xa_offset))); rcu_read_unlock(); } and the test passes. > >> >>>> This patch is motivated by code inspection and not a real bug report. >>>> >>>> Signed-off-by: Dev Jain >>>> --- >>>> The patch applies on 6.15 kernel. >>>> >>>> lib/xarray.c | 2 ++ >>>> 1 file changed, 2 insertions(+) >>>> >>>> diff --git a/lib/xarray.c b/lib/xarray.c >>>> index 9644b18af18d..0f699766c24f 100644 >>>> --- a/lib/xarray.c >>>> +++ b/lib/xarray.c >>>> @@ -1917,6 +1917,8 @@ int xas_get_order(struct xa_state *xas) >>>> if (!xas->xa_node) >>>> return 0; >>>> >>>> + XA_NODE_BUG_ON(xas->xa_node, xa_is_sibling(xa_entry(xas->xa, >>>> + xas->xa_node, xas->xa_offset))); >>>> for (;;) { >>>> unsigned int slot = xas->xa_offset + (1 << order); >>>> >>>> -- >>>> 2.30.2 >>> Best Regards, >>> Yan, Zi > > Best Regards, > Yan, Zi --------------yekU83LbIyIzmS0T0XwH7a6N Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit


On 30/05/25 4:17 am, Zi Yan wrote:
On 28 May 2025, at 23:17, Dev Jain wrote:

On 28/05/25 10:42 pm, Zi Yan wrote:
On 28 May 2025, at 7:31, Dev Jain wrote:

Suppose xas is pointing somewhere near the end of the multi-entry batch.
Then it may happen that the computed slot already falls beyond the batch,
thus breaking the loop due to !xa_is_sibling(), and computing the wrong
order. Thus ensure that the caller is aware of this by triggering a BUG
when the entry is a sibling entry.
Is it possible to add a test case in lib/test_xarray.c for this?
You can compile the tests with “make -C tools/testing/radix-tree”
and run “./tools/testing/radix-tree/xarray”.

Sorry forgot to Cc you.
I can surely do that later, but does this patch look fine?
I am not sure the exact situation you are describing, so I asked you
to write a test case to demonstrate the issue. :)
I added the following:
diff --git a/lib/test_xarray.c b/lib/test_xarray.c
index 080a39d22e73..44fcc947a5b6 100644
--- a/lib/test_xarray.c
+++ b/lib/test_xarray.c
@@ -2111,6 +2111,8 @@ static noinline void check_xas_get_order(struct xarray *xa)
rcu_read_lock();
xas_load(&xas);
XA_BUG_ON(xa, xas_get_order(&xas) != order);
+ if (xas.xa_node)
+ XA_BUG_ON(xa, xa_is_sibling(xa_entry(xas.xa, xas.xa_node, xas.xa_offset)));
rcu_read_unlock();
}
and the test passes.

    





          
This patch is motivated by code inspection and not a real bug report.

Signed-off-by: Dev Jain <dev.jain@arm.com>
---
The patch applies on 6.15 kernel.

  lib/xarray.c | 2 ++
  1 file changed, 2 insertions(+)

diff --git a/lib/xarray.c b/lib/xarray.c
index 9644b18af18d..0f699766c24f 100644
--- a/lib/xarray.c
+++ b/lib/xarray.c
@@ -1917,6 +1917,8 @@ int xas_get_order(struct xa_state *xas)
  	if (!xas->xa_node)
  		return 0;

+	XA_NODE_BUG_ON(xas->xa_node, xa_is_sibling(xa_entry(xas->xa,
+		       xas->xa_node, xas->xa_offset)));
  	for (;;) {
  		unsigned int slot = xas->xa_offset + (1 << order);

-- 
2.30.2
Best Regards,
Yan, Zi

Best Regards,
Yan, Zi
--------------yekU83LbIyIzmS0T0XwH7a6N--