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 DE93BC7115C for ; Fri, 20 Jun 2025 17:13:57 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7645D6B008A; Fri, 20 Jun 2025 13:13:57 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 73BFF6B008C; Fri, 20 Jun 2025 13:13:57 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 62AE96B0092; Fri, 20 Jun 2025 13:13:57 -0400 (EDT) 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 525A66B008A for ; Fri, 20 Jun 2025 13:13:57 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 0793F80F81 for ; Fri, 20 Jun 2025 17:13:57 +0000 (UTC) X-FDA: 83576426514.29.E752953 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2074.outbound.protection.outlook.com [40.107.212.74]) by imf14.hostedemail.com (Postfix) with ESMTP id 452D210000C for ; Fri, 20 Jun 2025 17:13:54 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=Zi2NQzdP; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf14.hostedemail.com: domain of ziy@nvidia.com designates 40.107.212.74 as permitted sender) smtp.mailfrom=ziy@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1750439634; 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=O7+JgNPdWdWr7zbeD0QVzkXt2norW0PgLL2iVWcWe4c=; b=sZRO5J9FqMALPtgoV7GMYpKsW6U6MCLHMn1bMnAeTHxfMlAkxI2MdTWX7Q3P7svm0BeIOC Qg+I8BtOzmIGB8k2EaZpC4Swwn+BR615wl+p5YebtFE8fadP+tkQTIy2R7D52LEVKdT7yH UubDKjGNOQua+2TduQmSXN3yX75EUI0= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1750439634; a=rsa-sha256; cv=pass; b=TgVwh/xLiRP5b8uBhFFpblI9rQ1f6nLFym9Cw4/xalHGCedWqUoVxfu9k7yfG0H/TrqhHS X9gkWataVt6dEBESnRwYO4LGurBtedHnSOhbiz5+m6vuCfBo/pce9yqBL3cU/jYQ1HzPZY hAd467UDgO3M5LaeNU76EjG2c+nlGHU= ARC-Authentication-Results: i=2; imf14.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=Zi2NQzdP; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf14.hostedemail.com: domain of ziy@nvidia.com designates 40.107.212.74 as permitted sender) smtp.mailfrom=ziy@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=U5icVokMdaZaApfmkjiDcEig3d04D8BW9OLKrHBocpAAytkpbCTDnSSZDYs5ziV711dt5kOFUZOh2BWFW64yEh5NexiUeBiJm2TFaZKUtIYs5Vp8gd6TnpSOYY+jAiiEHvrekQNLceJE9Z/OcgdpG3G74GB9RHLxm7xF5r28qIiNG5ntGcBRIjoDwde1VWNPScpqehyyvwr0Ym9dLWHfv8nVjocB/uGT4ZfZf/eFVmj+tCOh8HrtXSWS/5tyxUBCsPC04hblzvxEsjnbzYxW3+B1F2iV3+tFVatYRZubmAoJxhpsBJ7ZbNgItV2OPmyigRjCgVpQrVnRN0u8xeDTZA== 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=O7+JgNPdWdWr7zbeD0QVzkXt2norW0PgLL2iVWcWe4c=; b=Gxusg/mGlaSYdQt3eTtHcGS8GtmYAo8GlGU7txGy42V3dHj/mPkA52ir4ELZBIdXBgvUGJAzC4RQex5zj2zo7vqdsd1968s0zoG8lKIQjTzANma39zTYy0H6Ty7cusvt7mJemxRB33QcClkEqHZ5Wgf+kf/KE+j63doYAzxL7TuKJXzOaHUM72UplT+TkJcn/0tRynrOwtYOSCoqz4HUF3k0j753E8VLVwU4UWEsHrPRXUiuv7iWnYO/qK4gl7mgnPrEP11XrFj75JHdv2Ol8ej3j+LHLO2nkQxj7MTdBXEmQCYC177jAjuoo4MRDYn0s3wyKJQUZ2JQnTb1GrKL5A== 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=O7+JgNPdWdWr7zbeD0QVzkXt2norW0PgLL2iVWcWe4c=; b=Zi2NQzdPsRVbyJKjccS/FpNq4yE2ThrRbpqtjv4pyEihyD976t1onEGOgvxv0lPbbEzRKXwmknB91SQmifwULeNHwg/HXZNiyk/pxeurkmE455TZSdMwtQFHH2+P3iLVFu82YQjw3qDwtqnwEyHzFqXT54NfqfuJdlHitpcWrqn6C9t6GKeVRehfqbQY4F7TCBbXELP3SLPdxe0CScipCg6cP5cR5cm3OknLi/Ht35dA1gxp1IZtZOT4Z1okzN0g1gRzaKJavcQ694aKZyOywJJFbfGC5SRJnfqQYSufboMIN5mKOkw37MISjsLs6awfDQyaV7/d5OAmwB/cXIoIrg== Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by PH7PR12MB6539.namprd12.prod.outlook.com (2603:10b6:510:1f0::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8857.23; Fri, 20 Jun 2025 17:13:48 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::5189:ecec:d84a:133a]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::5189:ecec:d84a:133a%5]) with mapi id 15.20.8835.037; Fri, 20 Jun 2025 17:13:48 +0000 From: Zi Yan To: Lorenzo Stoakes Cc: Andrew Morton , David Hildenbrand , Baolin Wang , "Liam R . Howlett" , Nico Pache , Ryan Roberts , Dev Jain , Barry Song , Vlastimil Babka , Jann Horn , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Lance Yang , SeongJae Park , Suren Baghdasaryan Subject: Re: [PATCH v2 5/5] mm/madvise: eliminate very confusing manipulation of prev VMA Date: Fri, 20 Jun 2025 13:13:45 -0400 X-Mailer: MailMate (2.0r6263) Message-ID: <205C4897-7C81-4341-A1B6-8BC3E22A3B31@nvidia.com> In-Reply-To: <63d281c5df2e64225ab5b4bda398b45e22818701.1750433500.git.lorenzo.stoakes@oracle.com> References: <63d281c5df2e64225ab5b4bda398b45e22818701.1750433500.git.lorenzo.stoakes@oracle.com> Content-Type: text/plain X-ClientProxiedBy: LV3P220CA0004.NAMP220.PROD.OUTLOOK.COM (2603:10b6:408:234::16) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|PH7PR12MB6539:EE_ X-MS-Office365-Filtering-Correlation-Id: 11a66518-67d4-4122-a38d-08ddb01dd23c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|366016|1800799024|7053199007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?ZvDxX1XD17Akkum4pspQOhNTqPkEUnEBNJ4wmmcMkZ81NIq8yzb4GQmGoA81?= =?us-ascii?Q?AwAMgNgEYlrC3SmBHoX0I2neWD0+saknP4IkvPxGCWpjLU51QYoIxp4GhvpA?= =?us-ascii?Q?L0ufbULXJrMHSAG9/53BuH1bhwGFE4Vs7dZvsdpQh9ORecoCkAiiDxwZcL4j?= =?us-ascii?Q?CtgxMOR3u3rQcY4fbaidaYbu4moAgo/NBh3lPGGVElarqg6ZtlAGwQgxbq6e?= =?us-ascii?Q?kCZX4AyolFQ5REaVZ00y2jP9H+d0ewXN7RYhVrps1rLR3d8IDQSkuiSe3doi?= =?us-ascii?Q?89O/n388j9nT2Bzrz/wi0Fk4r298I88amBvuRGUmqDCT62NUTGCfFBk///rv?= =?us-ascii?Q?QxlaHcyd/wt1v80Dvc8EDRrdC6XulmpHKK2vv5t4USMJR5hj8c8FLJIy2Kze?= =?us-ascii?Q?Ayc/+rl/HVLcP2tlv9TvHGMahhC6C55oJKqo8Vuv7SJx/ulROGSGMyc/hccc?= =?us-ascii?Q?3E/tdGfxCzNwyUHh/8qcPmpqmBeCmahvnMVMYPX+8/zo0evcV0TZTc/nG8nx?= =?us-ascii?Q?tYTGCJYLYZ2K8+1QzWWZadrqFKMVsyyDnBGKTpFTnkyKFPUOFE7X+T4JWT8C?= =?us-ascii?Q?S3HEFAkZJ46Rtf8g0Q62By/CG2GNEQV26jE84LJ/vmhxccth9+LfI3Gnw7/w?= =?us-ascii?Q?dou4d+h+rpIDZm1I2ERfl96LI/n7WfTNqh1cP7MeFLVwzAYNcx/1I3uXxYIk?= =?us-ascii?Q?n9QQrYpOwjghGvEZavP7UyYmZ3KQhAsb8f5Xu9VtNk6fTmyDLADP+FLxqqhT?= =?us-ascii?Q?mNMKS1HAGaqY3GwIKo1mkGtEDP19PTc7JKXhKJLvJ/AKTAvdupPkycSfE3OU?= =?us-ascii?Q?KXttxsA1hcu0o1tPdi7wA86pB8Kqt9PVr2QVo5cHPP+eBPEd6F2nvN6sr2JZ?= =?us-ascii?Q?F1JwWQSA72Y5b4Rc/1CKRbCvw3PK8SDhoL7Vm9bXwQhmNeku1UIgnAsIvCJi?= =?us-ascii?Q?QNf8i0riU5xaRWY6BKvGaa22iEMwmQ+ZwLNRYhVdYOZTSTNby0fLumqhjY8W?= =?us-ascii?Q?tjige7L5237tQIyegux5YvQo4M+zYvG+JCPr9/LiDDB+Cxqa9GH5/xVRM07Y?= =?us-ascii?Q?IyXfHK6Ad8t99zc0/V8HUmBdiDUTmUFKhtdzhEIr7jHRkQsrk+F/Sn+RtQ5x?= =?us-ascii?Q?ikiZ6p0xfT9gXmeJYSFFJoGdOWlWLtDxsvPIkUaZLcjI6OLCInffPHfnxuav?= =?us-ascii?Q?PE8iQvWEnCOTk7X8YazUfPdfu6tsysG8TlqN5Jpf8zCQganO9mDBxB4SSdJm?= =?us-ascii?Q?47zz1CJkUPzf8rXfjpX8Dw8x/g98jWHWiYFOabg5OaGgu4tBIYc/0eZVzTW4?= =?us-ascii?Q?Ex8q9nJzpbOrcxc+D/CRGL/mGbDC2RmkaFHpC/4Irz2mOtUhWLAjtUb08vSv?= =?us-ascii?Q?lq1DjwtSGUtKDJuuB0bhD7XLqrKZ5NoI2aKVRK7heYxVdxM4gEO+J9NkhXJz?= =?us-ascii?Q?yz9o7qmLqAE=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(366016)(1800799024)(7053199007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Bdxgj4rNpOmrriK8J/eR0Yal8j2trItzjPz2Vl5ImgqFroldC35T0CW8qKyP?= =?us-ascii?Q?vpOYnFQHSGcgjLlXTNj9+cNOgTE7VKqnIPLwWLUYOY/ydfOiPoSSTpq4IJGo?= =?us-ascii?Q?fKYCqWVFRqlABk/WmYeK7cPvOjjbwgdskxn7J3RaDQJa8StxQEIPKkCJ46ck?= =?us-ascii?Q?eFHPhwLz0TKtvp+4lLafDWq3QqfsO+NQFh1fdzxn1s7cyibmKFqo1CE7NSTl?= =?us-ascii?Q?FJ3qOLv/OctXZSuH8a6lzAXnINIFRiu89uk0lOex0hFpjfzLKsHDqtRRyL3I?= =?us-ascii?Q?pjmJHtHV8otMc3NHzm6ohbfmN9VtaFduyKFGQ6xjt6WvEr7CtKcxTispnWAe?= =?us-ascii?Q?f7A7sHnkrc4Q7GMOPCxibs5IbzrmEV1NNSjZdl8K/V9lZmjFm4u3Iu/bXg+w?= =?us-ascii?Q?EoW3JHSYwsc6OLHbAN0af6aJjAPU/y3LOdXKmNfVKiOyvfa8pGgxbaiagL+M?= =?us-ascii?Q?AkX3JQsNoDw7pMWpaxSb+GuDC1KWYbwpTMuUB/4reErz8IBpk/6pzhKnlbo6?= =?us-ascii?Q?4qVfGgOiw9ZXVigVgggF2J5kK5J85okLsHauK8PBBvOvpZFSSxAnw2iA0nii?= =?us-ascii?Q?GwcVmk63RPiMzImUwOiYZiDUfaCM24TkgUbDKS2uPXnZTsZ8MsSMVl9QxHDr?= =?us-ascii?Q?tFaGeJW82YWlwLRe/IkU1pM8i4u2mW4c1zfrfdzZglvN4XeuZTjENp44N9tr?= =?us-ascii?Q?Dk1dPbZxpt/WYBkNWoEslq7/9e3d+9hX4D/TJ8U2uABCXmopaxqOb4ykbsYS?= =?us-ascii?Q?Hy2MgOBL9Sa9moWO1VTXNa+L2RrB5JjTD4zSbPgRjULQRzRBLs5r6Z0H7GwU?= =?us-ascii?Q?a9Um6gCU8g+eqTsICY36lFXlYLn6sGgoYQ+mgiMvycIgUTjixJ8hB+YrSG1N?= =?us-ascii?Q?xv7b6yoBUbCrRYj4Bp6yGi6PyQ3otPJX9qM1g69NUTTkAwhzLmHh5bhdLqVV?= =?us-ascii?Q?sYDP0WBeImB4qIP6Ru9l03zIVTBT04EO6Pgw9TDI73XH65pS6NKv1lyBfoZo?= =?us-ascii?Q?7a4fx+xkTQQ9K6dp68fVmmB4PjTee4CBeDFDBcBSLFkwiI8yWfxapGQtOd9D?= =?us-ascii?Q?kurAnDaEHfsMsRd7vyn8qBohF8zQASwx9aiYnrctTsujlA4jSd0DPzinMQTp?= =?us-ascii?Q?KPpcia6xGpGREUhSBXcbBf4mwuYRTzorY9VTHu6EemMkfHKjSHGBIkj7gQsL?= =?us-ascii?Q?S59GLv8HbTNvqiqe+BdfY4Xfws2nwhh4XGEpYIi8mTo7v3i/kzzUVWX84PmW?= =?us-ascii?Q?iRvp+6Wy95MX/Zpq9DCSM5SDtKVsvmvXXZENn9Zv8h8/TU19o+WVBUqJeSTg?= =?us-ascii?Q?q8pzYipgBfOwPZS1EBWcyMFJf23E4IGiqdviE0Gewsnh0+YhLQ1/IvlNglpv?= =?us-ascii?Q?lnxEDnyD/VxiZzLmq8su8uuN+7SF11VvYkLOC9dAe2WEvMXtGR8BckMgEUOc?= =?us-ascii?Q?NVNJQ283xk/wVHg6hiTLjb8DUEEIFMuhDZvUeS2hgN/D7bbRfNJuAUMBQMMT?= =?us-ascii?Q?6F3IWn8K1prqJ6cIRSBG2BRhUJ00lBX5kzst+ALF1dMur2Elmn5uw7xzerxP?= =?us-ascii?Q?P5C5uV7S6P48oTRxnVZ1deB0kYE4wh5gmB1rkkZg?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 11a66518-67d4-4122-a38d-08ddb01dd23c X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jun 2025 17:13:48.6429 (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: S1WhyWteRIDWvZQRZzqjAKiKSls41CPKVtJcwkrqvtP2+794ZpPN1wraXas4TnV/ X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7PR12MB6539 X-Rspamd-Server: rspam03 X-Stat-Signature: p5nm1t45sx9kiafunuq1xx55xueuos3i X-Rspam-User: X-Rspamd-Queue-Id: 452D210000C X-HE-Tag: 1750439634-267954 X-HE-Meta: U2FsdGVkX18/wjDYz20ErO/4zGMilfMIDTVE+PwSR8JE5jeN0mVKIceAvKG9P8xML1skMoacO3Xqq+yuCPpBGJcY/pF4kXyyg3zIApiOXC7obyt7U8cWGPicDaTBV61/DUzZxIGY38KQu+Iy3MD0o/KD/ALxng7rVDRVZ6tzbg0cu0X1P0oT2GBKFbScD8U8hMK8szB5IOC7N9BmXx+In9wUaeLwuTEnn32BjKf4LASwOeAXngV2jAhwF4YsTb7UW9kHzIBZe6d6cZcxRCw6P0W1qp46JaLQln64N1vU+QfFUu/oXC3n/Fh5qphdvk6KOKq7HpH3+8kf9H2w/qXO/RIYVrE22DiJhOXpGSAdeqQHoWiFLa9rIdG6P5kNRLEKbahpqztaQFpD76yJNXfG5fFZDSfVXZfaXaDvG5uf3q56pIXzpqik8as88GEOc0FXYdKQtEIcB38ST5fKFXAoCik+R7VDaHWuR9CuIz3vmF9swuD8MnZaGnpVHPkQkW5MjMqOUHCxMTrWoDBOsbv/i7AS/V2mP5fESwXxj8oM80sxfQr8X+kd2Uz7AqmpGg+UzjMyjLbCivskhcLDwPu8Mt1w2Fv3oUjxNGD+B3ar60/SuWkwPYkxMeUfPE4/OyRACOWmpXTN1+5nbRydoCwLaPtwDt/Scy6PmeR7VOdfkul9pzTVilj8J+xiLgJMMzP4O3BgUb75+fDJ/2BkkwsJ676Vl0QYxZw9x3Had3WjOSVzHp5ESAlg9cXpsrUaoLgq18vfOlxOlty2GB4ma4a9mO3QePUkILKlllNnzFUef+WbQy3wRH+eSQwNrrf4A82GMuvnVneGa3K7ltSJcMl07Kb/WFQg+mL/9pksO/UklTPLHnRrHQBBEnkR2TmLsYcxnH8mfYKvTVexeMEObEajVplY9EUMIER5KUwYpiB0B8+bZZA3UKKdcacB6aBnQN3aVKLGB+9ja6DbHoXT9kl N60j3RCy fpHeZd5kzc7XZ6C0GGCbX3qda4N+Rm7Cu/tQzRJU+Py7zwn3Mx3pvGdozSA76cDvxiqlm9NIYe+2qSwsJk3ixR54xa4PY+E/JdXOYLbWSwcB9sSA0ZKC7cmHC83ma1h+JT+ZkS8C0FsUJgvm0PomChSILP2Vcq1+mLXaB+tKdOcuMBi2GRhfoTB4M43frr3t7WzXHj24AUmdU/NPiYxt6fxTVOAhawEDqyhmumHD/DvLfxzaJXYebcgMCGdgq+i9S2QfKmcg7HzRY/Y4pPkeh06oEJuEzmod8GDf86/2vqqOKE3ECTp0fELnQyoHCp/Cb6ffLyALOjaTubHhWQaW9dBwjwKatU9xdEQRCxt8nJzcGQdSjUzqt21h8RP4/FmPtQ0Mu2142fL1SzAzOQbtihyD0Sr/JsrPZeduAZ4IoLfTTl3M= 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: On 20 Jun 2025, at 11:33, Lorenzo Stoakes wrote: > The madvise code has for the longest time had very confusing code around > the 'prev' VMA pointer passed around various functions which, in all cases > except madvise_update_vma(), is unused and instead simply updated as soon > as the function is invoked. > > To compound the confusion, the prev pointer is also used to indicate to the > caller that the mmap lock has been dropped and that we can therefore not > safely access the end of the current VMA (which might have been updated by > madvise_update_vma()). > > Clear up this confusion by not setting prev = vma anywhere except in > madvise_walk_vmas(), update all references to prev which will always be > equal to vma after madvise_vma_behavior() is invoked, and adding a flag to > indicate that the lock has been dropped to make this explicit. > > Additionally, drop a redundant BUG_ON() from madvise_collapse(), which is > simply reiterating the BUG_ON(mmap_locked) above it (note that BUG_ON() is > not appropriate here, but we leave existing code as-is). > > We finally adjust the madvise_walk_vmas() logic to be a little clearer - > delaying the assignment of the end of the range to the start of the new > range until the last moment and handling the lock being dropped scenario > immediately. > > Additionally add some explanatory comments. > > Reviewed-by: Vlastimil Babka > Signed-off-by: Lorenzo Stoakes > --- > include/linux/huge_mm.h | 9 +++-- > mm/khugepaged.c | 9 ++--- > mm/madvise.c | 77 +++++++++++++++++++++-------------------- > 3 files changed, 47 insertions(+), 48 deletions(-) > Reviewed-by: Zi Yan -- Best Regards, Yan, Zi