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 1DBECC8303C for ; Tue, 8 Jul 2025 08:56:43 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A57396B034D; Tue, 8 Jul 2025 04:56:42 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A2EF16B034E; Tue, 8 Jul 2025 04:56:42 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8CFC76B0350; Tue, 8 Jul 2025 04:56:42 -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 75B046B034D for ; Tue, 8 Jul 2025 04:56:42 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 466B616038F for ; Tue, 8 Jul 2025 08:56:42 +0000 (UTC) X-FDA: 83640491844.15.0D51B5A Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf22.hostedemail.com (Postfix) with ESMTP id CA5A4C0015 for ; Tue, 8 Jul 2025 08:56:38 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=ageUhpyu; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=IOMQtNMp; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf22.hostedemail.com: domain of harry.yoo@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=harry.yoo@oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1751964999; a=rsa-sha256; cv=pass; b=rNO9SeBSckLYALx2WMY4V6ui3GgSpiDvPUeFETBj2QrmTsN/Rq6MP4pq/z3spPUBx3sTPp ZAr1rEePRUppt+Z7d/4QiPLcBioHhlYsyr6IgXBzLI+LtazBCE5kMr/QR8eW56sh6Cpy6A 89MjKFa/fi/DEkq0jLtcqcPqz43AdOs= ARC-Authentication-Results: i=2; imf22.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=ageUhpyu; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=IOMQtNMp; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); spf=pass (imf22.hostedemail.com: domain of harry.yoo@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=harry.yoo@oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751964999; 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=XWoLC3lZHMYLsFa4ubnin4oqD7pLLUXDIvGkp7QW04o=; b=LIL8Q9dpSfDSvad8Aa7euubVIRbVLZv/u52l3FNFRWpUDtIczi+yMC+oPG0buEyNrc8poF csZB+VKT98wYRrG+zRu6jwCLy5HDRPSHAH9fVgSD0mbUT9hmS/HiL41UScigekrnZW0U+I s5TtnCq11QHebwy76Fj3pf4HQs6H5SE= Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 56882FCk014976; Tue, 8 Jul 2025 08:56:30 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :content-type:date:from:in-reply-to:message-id:mime-version :references:subject:to; s=corp-2025-04-25; bh=XWoLC3lZHMYLsFa4ub nin4oqD7pLLUXDIvGkp7QW04o=; b=ageUhpyu57uf0q9YCAjyiK5q1xF8yVN0uJ ZGKxwS8LTRuEj0JyAAU/sjyAuieggm+V3bRY1BgwlKJId5WXNp3wkiDe2xxAVh70 7QIZZN/fi/Anaz0OxkA0MD2IiVfLAC9Drbl1oe5lvsrufKdZ2apIrXzGF0IMarly q+We8dkt0YYunbJPE2JmbYCUVA/cMDP8ccMiP2i3sx7tFzZ+UvJeaxEFw602xg4X tg90Volc3fYkvL4o27mjB0HdHBqlS8BnjZ6DzfaaFlCSbcCrZigxf18222C6y1wT 0vSzlOmIDP0NLrdqslQpkEhUkhz3phVoY8xMQdc9GwvXS/HzTLIw== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 47ryf783ux-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 08 Jul 2025 08:56:29 +0000 (GMT) Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 5687P7V0040587; Tue, 8 Jul 2025 08:56:29 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11on2052.outbound.protection.outlook.com [40.107.223.52]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 47ptg9k4bd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 08 Jul 2025 08:56:28 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=MjYZ/u5XmstEZAe1LQAmUJaMHdeHb3v88n2UhVP+4zqhBT5SP6iGiy70wuat7CgbTCIfAP3fmyPGexk5clFlHIL1ErylQJdbM+ICkyRe3zsAx5FruCLNhTt0RDgLbTrC8JrVubTPNwGqhdJpqk/q08hRhZ+aqWxE2FaZEiJDgbaN96w1bVndq8iBSgicBVAafcW0oEJAOFaLE0DVUXr2ycDLTdOl1E1MSjWb1eZW4MouH4IaXDxSN/ePwm6x96D39DtRWYNt+0uujMhpyInX19sTYrNApvTXWrWuoNlrYVUibWdIN6gYczdDDu0n4WKHkQmuVryrER1xPXUYHQZ0FA== 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=XWoLC3lZHMYLsFa4ubnin4oqD7pLLUXDIvGkp7QW04o=; b=ZBDM2zOIDr1yJAm7/Cc+rPqvhNjTDQqUEdtCrG8K/R0VdXqfJqJDWZeYItVYuvXn8rMsehqCjS6QOJzBNMfRP7WE0G2LEHdAR5rqLCU9olPlfJPNX5clcolaVXSDsVKNKXbZtElXlyofz7TY+bdyfZ/oQZ++LLAIPMm5OCg7aRW3VK92zWykVmn3qxnWmGCy9PHWRY7lm9ZcHBfqprOmzzuiSTlSYJtBs5wgTxlgwhQq4m5fbLqPyaZ/jidx1/3ZGKyVz0xOo/P80mlVfcXJvaNFyNvO+D0p9IT55jIuNfTbdIpVMEC91CpBNdwAgW0LDeW+xRK3vl2orr81kkD1sg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=XWoLC3lZHMYLsFa4ubnin4oqD7pLLUXDIvGkp7QW04o=; b=IOMQtNMpvYsTpqNX5NYFAfQYwbajf+aZR6f/aVxH90126RG2Rk8dzFqsEz1DXroNMry15ugGCNQhj4XpP/eM6/hoV6QcsJZ6adEetjgo3CUtYi/JpDs11E9qAMjYbqxyj8e+ZJx7BKTeOYyB4yLzYveWdxs65kVqaBk5DIt+oFk= Received: from CH3PR10MB7329.namprd10.prod.outlook.com (2603:10b6:610:12c::16) by IA1PR10MB7445.namprd10.prod.outlook.com (2603:10b6:208:449::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.27; Tue, 8 Jul 2025 08:56:21 +0000 Received: from CH3PR10MB7329.namprd10.prod.outlook.com ([fe80::c2a4:fdda:f0c2:6f71]) by CH3PR10MB7329.namprd10.prod.outlook.com ([fe80::c2a4:fdda:f0c2:6f71%6]) with mapi id 15.20.8901.021; Tue, 8 Jul 2025 08:56:21 +0000 Date: Tue, 8 Jul 2025 17:56:09 +0900 From: Harry Yoo To: David Hildenbrand Cc: Andrew Morton , Lorenzo Stoakes , "Liam R . Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Christoph Lameter , David Rientjes , Matthew Wilcox , linux-mm@kvack.org Subject: Re: [PATCH v2 mm-new] mm: check if folio has valid mapcount before folio_test_{anon,ksm}() when necessary Message-ID: References: <20250707120740.4413-1-harry.yoo@oracle.com> <6716889f-00c1-44db-a7e3-c58a68dcd6ae@redhat.com> <77384767-f821-4736-940b-051664922c8c@redhat.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <77384767-f821-4736-940b-051664922c8c@redhat.com> X-ClientProxiedBy: SEWP216CA0076.KORP216.PROD.OUTLOOK.COM (2603:1096:101:2bc::18) To CH3PR10MB7329.namprd10.prod.outlook.com (2603:10b6:610:12c::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH3PR10MB7329:EE_|IA1PR10MB7445:EE_ X-MS-Office365-Filtering-Correlation-Id: 1b53d839-b225-4274-143b-08ddbdfd4f5b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|7416014|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Hnp3zPonSvaWC9VvRjmn14DL+DUVYoexYDfZedQzuQypAwzq/KuY2B7YDvUi?= =?us-ascii?Q?UAN8fggjEe5MEl9Khbgk7wLyDvKmwlvC3EcJCfb5NDw+KA0JAmAQxEMFHt4n?= =?us-ascii?Q?ytm4fdaG5Q+TEql1ZVmApk5cJoMcCVQqXeOMxQzi7jkBwEg2MEZgaZieGE+a?= =?us-ascii?Q?eoirh1Z9v+n1aHAb5VNDGcyRbsCxFy3seD96UUof5RmOrzGQcp7jA6XNElBm?= =?us-ascii?Q?VyRl9Tz2s1z0hPleWjCN3uN8f8Ls1LlmpNWadzsU3rOt5Sp49LfLCsF3ztjI?= =?us-ascii?Q?sgYuIGHD3+SrjnZFaMTYolHCqYkrplRcpXKCKaMw2BpmE0TsddE7xohMr7nN?= =?us-ascii?Q?/4UTiRvjKqc/5nZO386znsnv+1LmKlp0VOJ9vtCKGeVnx0FPuY4LcmX0qV0j?= =?us-ascii?Q?Jc8yuzHP9UWsTXOHEVTvqu8noq3ff6zWdBRaiqiuwWqiV2Xrb5WbbkZ9vExf?= =?us-ascii?Q?YnqHds3yuOZ1wujPDhPww3vZJ8qsPXkNhRjqXfoKNN+vFMVngm89/uvXQSNj?= =?us-ascii?Q?UxVoBQKJ3gUDgY8pOqpmSGjHmU7Zdb+4On6Y1tamBue8x5KWCAsBA8V7Afsy?= =?us-ascii?Q?hebFVZVrB1BG32zsJ/SOQQRJc4Mw9F0iHeg43hpPAQRR6QHbXLodB5s2R1xO?= =?us-ascii?Q?XFvrQmIw1LR0TbkKpXaGSy1RnCbw5PagkGatUPrztQtf3G/Fm21zgTgFKuZw?= =?us-ascii?Q?Jq7404aISKE+tfzWOG6X1MUmslxfP88BJXC/EYESQNRogp9A/5efhgRAO39T?= =?us-ascii?Q?cV4LLAXf5kySRMjd84/ChkokvHbUHCJsL9H2goZWCt7Was8NpPt0GuDB8jO4?= =?us-ascii?Q?+EDl2i3+4YjnCVzeFFVazFtY5exKvsYBgwOlT5I1pig0TGtW0mkdyv8n+srP?= =?us-ascii?Q?k79LEM592abKVrh5Cuv7fGSBJiMihSLStbQBoAHirI8Rw3wa0lpLBOs+LdOF?= =?us-ascii?Q?DBWZcv1ZXWWjaGeDq0pIDWUqk8dawep+UY4U+IwIxVWRgCE3nesmT0/RwBgp?= =?us-ascii?Q?psBqrD8SH7N1XuVSbvIqafvi0ggKTILlAW8MJ9sAfdl2GL/g3XqWD9q/TxgZ?= =?us-ascii?Q?5Pxr3xZG5mSUofDvpnCjv93vPN/LpguMzX7vG9gbhQxyu0b3eCfQbpb8gS8P?= =?us-ascii?Q?8Xl6MinJenK8LWVm9cGPOB9kcGnK8zjevOuhDlVzz5kdpcqemcao28GWMd96?= =?us-ascii?Q?VHrUfo1yHH8C8/gutz/9NUbZRIByK+dgTSL0er7RDurisDLvVSCmKhWYSZIU?= =?us-ascii?Q?6ywxAvJtMIXy6W9apE85zCUM6QwB9nYj5FosiJQf+ynm0Peq5wHSRwIamTtI?= =?us-ascii?Q?EVIvQD6IWrx1j+KIVfWum+6m3bYUg29Kdy/zOE4TMAnpQwVSUC8Wk9NW1oYm?= =?us-ascii?Q?svkjxTbWghPhJL5xsc5bkTba4zKWPT7jgqLT1wGDD4WfDB9l/Ta44daOTVm4?= =?us-ascii?Q?hNQqU1YlaB0=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR10MB7329.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(7416014)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?VzS+hAEtmvh0I8uUwjIbxlMvmikiOqiPQ535D9h86UqpK3lUphrX6lFg5u7I?= =?us-ascii?Q?n9Zn48GoWp+u489EPE8IuB798vkN0BGvgGkAP50aTI51/Vvr+aO6VbgCaWvO?= =?us-ascii?Q?wx+Bsv68cft4PUDEdQv+VlRwM5jjVOparmhRYNYclEKI1A0poT2yRbFILn5s?= =?us-ascii?Q?1QOy4+dQnc3zKEvJ9PnPX92IIz2nmuVku/BEBPcjEkY8ttI8KAmPXXZQhaXd?= =?us-ascii?Q?s3gRVxH17aff2kQf+dkluP+H/9G507PYUsxetjdtWVF3M3//G5T/wnc+Fj62?= =?us-ascii?Q?wcIL/e6Rk2NSNFHT8XfNP8qp9B9u/SnHGqhi0vAi6QH4TSXpVH0Y6wN56da/?= =?us-ascii?Q?6UTPnmiTE+Ct02Rkhw7KRuWW/DRadMkKEH3aqfZmHPzjsmlVZ9IoKbYiBYzw?= =?us-ascii?Q?1Gu1P6f7k9dvAFf1LaxIrGTZsXms35j88T5gg6ZuCfj/KoMLws9C/QumVcyf?= =?us-ascii?Q?+psP5vuQgS5Q6I14p42agEKFSCfZ52P5nO5ca0SXAxKhPtvxncrjvhtIQXJL?= =?us-ascii?Q?vl4UTjtEC5djs+FAB3GB0/C4M6MByOlPqIrlsYT+966XqrL+aWiYvi2AqJq0?= =?us-ascii?Q?0vwgkxs6uOq/0i3yJC+tq4nmjLBPOX5XKS99BSsGTr5xyza+5+19oRAdZu3V?= =?us-ascii?Q?jqrXgHPFexw472CDG2PHz/IvmgfjsRfcaj2o6lmF79MMV+6mkmZADMoJ0DHv?= =?us-ascii?Q?aziNawllUQZ/p+ihx0GwonFnN4Ut1AMlNdUNnbYhJkwcl4SHu5wNRYSWtx4v?= =?us-ascii?Q?9hT1YNaT560aVZQa1rCzuq9MPskG62kxK3XX9i6UCIeWVEtUGx8W5jCED1wZ?= =?us-ascii?Q?BNSdtWRYwHmtf6eC0oqlch+PIcb3oIwWP8p+EKJ3RPpxMmbfeg6zKhf4sQAJ?= =?us-ascii?Q?GqM2VnVOOmTKSF0B+L+H8xx7Q43WkJZt2M2oJ9XNg5CAFv0NWYG3fxyYhFY5?= =?us-ascii?Q?MAl7wdLKKO+pbyrW7Kp8yrR7YvSNy4VmSPrrzdC2ZkzL2ziTQzGm/F7wHayX?= =?us-ascii?Q?X1tWRhu447hiNeDVxALfCQZh32UmaZWyqozRKDPl81s6TTS8Kx7WyMWMYe5I?= =?us-ascii?Q?udBXRJHJAeZsK9u16YwRrmLjd8DLGG26c4q2jpN/tNcMMlIuih00Q9UiVFh8?= =?us-ascii?Q?/8VIQo8KWMiGRbcQBLOlRJ3Ge2agd76+7injkzfvAUDRJC5QTN2hdafR95ER?= =?us-ascii?Q?VKFPCiUAbdc8AXuZ3hV0IWj4Ay4e/j1KvPBq+8j3QEnJHBxd1N9KsNqyxNud?= =?us-ascii?Q?JFDbvBgwbFSTh1GgocWaXyI/J+9nSMmq2S4i677woCwusrlHaLOLcJJIzU70?= =?us-ascii?Q?gjlgBySK57tnjgOiwabsrLuSqb8CQKJjBrW5pppCHGqFlDV1y1Et57b8p0Ps?= =?us-ascii?Q?b2BbFbflPYk2sztYCzXdEgDulUv/ccr1+J9Q2ZoZgUr/NR/0icnup8aLEu3D?= =?us-ascii?Q?y3JUJjA4l25Kyi8f6o9pkex+eDaGz9DkkgSTng2GDzRkGsw7SjsVLCi97DiF?= =?us-ascii?Q?8BLLo2WoBuI8OXn80ofILnikwDjdYmZ5yt+NuFgUbv53WZ9cxG8ln9Lw0WTF?= =?us-ascii?Q?NPMQZDwIGiS24ZSDHEUCBi8URvUw0AoxfXt/XtKJ?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 4qSvgT6ycj2lpCcqvGRriWYeIWM6kG6Ex0XwZ+Vg5ypXscNd0dVtqJV771o8KqxmvTYSa+XqdSpplxRjFWnIaty+cp3ggSqgeFP95kvaCFhzb+pIzKH6PqqTMDjxEnSweI1oxCjuqqFYigJF3tJ3NZnvllRoljLpY78b4FnL+RUp5fjsbKT8WJA+Wqhhaz20inKzuw7m+tc68jFTuSuGAdLOnX00m1GIrcrSKxE3OsXhiGX0kxuR/QYffERqt8197ULSuRl0eSY8w88Tneo4x/a1UTg8NSKO+2KWYejBi/hz5ltmfvVNv32zs2AtoKmINkp4RITcrirUhN709GR/lKoaBvTCTs328mZ38wx+IZULo4AoA7hV7458Ykf9TG9OAXCHu3ur191bSjbhhMPdyAJL6XNOfhPrusnGHfeHSNirMx/VEEA7P5nK0U104w2wxButs3+7FPn93a4SacfQik80Eo7qnR/1aJOXCMbxlebnifp6TuB2yLMWTy5+2ZIi2GQg9/PopcnSUGJh94KpyFZI/eZRo/Dp/EzjCzpsoI5Bil1U9V+yq8j9C3cvfn5IBEIQZrSOk1bKA2ISG2d8cFbfmi6z7w1+dmhRZQhoJIE= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1b53d839-b225-4274-143b-08ddbdfd4f5b X-MS-Exchange-CrossTenant-AuthSource: CH3PR10MB7329.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jul 2025 08:56:21.3972 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: AXb6Zoa7NS1n8tNtWETPVblQnPiREyfORRsnxIJNujNCoNCtRwdD9Vf86ERZOoIQUSBjOfOIN6y0/NP85glYUw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR10MB7445 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.7,FMLib:17.12.80.40 definitions=2025-07-08_02,2025-07-07_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 bulkscore=0 malwarescore=0 mlxlogscore=999 spamscore=0 phishscore=0 mlxscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2505160000 definitions=main-2507080072 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzA4MDA3MiBTYWx0ZWRfX6s9mA0ZOt8p/ MU2Pu4rnBj1991Lh1CBM9xg6zx1TwvFFtJRNc4EiRV3NjhjxswmKhkjjYgujhRo9uVbJptsR1Fb bvL63V+SR9jcWw4dPqDt/U4n1saoGsGCa9pT56K16+x7GtGaQ0vFomkfgCNrM3RJBTOCS65JfM0 myk0ynoJwdi4bMY2ditY7HU89oMRqsxbO7Phixsaa3eT1n85ALu9jCg6G3TxNRHL+PHIBFmTKTE OfqJqMn9cFTGgzYnFOucWMxJwIU9kxhXRUDyaBNweFXbyfrKy7hb+cfDJjejICZ0JPk8X0MwcR5 PwPA4RNF7CwQtr3RUzz6oL1NV5IKgDFSn803x9Jq3ZrzsSCi8zf3xS/hzR0Awfs0RdKU6ekRO63 VhpsrWuNwZH/DoRc5jbv0XEVMmt2WvYLqXBp+eZ5r1Gli4E6fOVpw63ykeNFEyQ51NbLQyBC X-Proofpoint-ORIG-GUID: VQfOqse6WG26KOSDLKZFq928gD360iTw X-Authority-Analysis: v=2.4 cv=EIoG00ZC c=1 sm=1 tr=0 ts=686cdd3d cx=c_pps a=XiAAW1AwiKB2Y8Wsi+sD2Q==:117 a=XiAAW1AwiKB2Y8Wsi+sD2Q==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=wKuvFiaSGQ0qltdbU6+NXLB8nM8=:19 a=Ol13hO9ccFRV9qXi2t6ftBPywas=:19 a=xqWC_Br6kY4A:10 a=kj9zAlcOel0A:10 a=Wb1JkmetP80A:10 a=GoEa3M9JfhUA:10 a=-5mEM0AblcKf5qN89p8A:9 a=CjuIK1q_8ugA:10 X-Proofpoint-GUID: VQfOqse6WG26KOSDLKZFq928gD360iTw X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: CA5A4C0015 X-Stat-Signature: o63ji6pipeu16z9nabppbia3maexggfc X-Rspam-User: X-HE-Tag: 1751964998-852420 X-HE-Meta: U2FsdGVkX187dw+hkIS7tzZSoqIEU5yaVDAdKYv0VDHD26YLHUdXzw08cwXGXmVg//D8Aee7nGyfYn67vLMFLdcjKSX5hX4ZBHHu6QEqsi/GnT3u6KdGDFT2k4DSk/fSnNfVvy18nJ+AkCGedlL4VNUApEi2qiOqcTkcx1Q0L3m4cnBpZOKlpqrpHrvFp99bTmqbjntTP+DYmcyLNdsnR/txMAHxwbJjLMlYe5wFLSgJX37hhwDIjioyi0HVzQSvHs61dT68ArlC4ibcNj3Lk+ejxhKDkUB3Wl4Xg9MZS/Yn6ERHPeWszjU/HwiaesdQKwpRxr2xn3TYW7cUVKM62DLNUJfJRC3PJ+UBK1UI2hkYmvmX1dmfJFFmrnqW8VnyoW1q7tiapMkerWNS3U8FF8ufJnnNAXhKZCbnrcVJlNUIVAHhdRL0AGOHj3WUYgdRqI0YEo9T7+rlQvEvaew5HBjtXOmLL3kUxVWmhYVDD8cDVykYVjjHiraN8Hsvm72s7eS/AWGSV6wE3u2FcpNasFySrPBKfysJ3RIkmpWrScbZ7Ghy0v8L9fN6PraXdIlvRVhYnC/vX3gorDY9NhYpiYYjNASQlg8qFnLfxmeBef/IrBtqZVEJA3ZnuB5VRgqDB1xBvC9PuvK7qGua5arrNwa+0VHvUcylhae76VfFbd2HZw50mVKyIsjyZiW17SVDKUIY4PskfkNdG0CwBDaaBiRsQ6W8BHRxWqhOahlM8S7z0+kydet+8WpylS9bGolmu35rMYOpw8Ltor0SqEsVyBaG7XGEd0PGIR/7tE2Om42zpzOZk1tB7KlA3nbgSmF83HRsPMakaoZDZup7jebzeuirkX4UqeMgUXowvZL2OXKQ0Vq172xS68mHHxku0c/GkOQWtoockOhkeLMdGJrsK9iDK4TTGn+ldHGcz2QpjA+GwsgQpXESOGjgsGBNPohFlQVNq87v48RwGRlig6U L7gaw6pG qh12XYErPW0IptcsqAW4loG9X2QavX38k155CofmBRjvmQh1ihf4+Cr0sn8K8HIUIahjZaAzNIzCz1qzoPxv9KH2CR+RTT8RRXbAyBYXZHH1fBWuZynJhhteSDKrfs4vVEgTdZBJp/bmZqwxoEP/tTBrsg7IISIOU1/+yzYiW5OrPqamFklIeJZvimaZvwuTsuE04mZIIiHOgj4OZ5KsFxEc93NYpLF/LMzEN96Wixk/5GWLrqauuuumpAhXkz/l34QtrTp0KiF29Dni3B+Nmu8JuKQ31+vwd6DJu9zhXCedCEqYvuAuaAKHOzRFTq9C/+1EyPrbT7GSncVxxUYc2mvoRZw9IOPpalG/b5sOKqXpHsYg6p2p423j+3U45ylTTnd2/zf8yKyZFYRcu5oM/kR811YKDHtjIzvaRDgGlGfSeBEFoV20Co+HdPg7f/5psqHOSwZG8qUXpziuGXAmBPhvMQEeJwgL2HGmtar5nNpwvtWTFO0kAELSBHZI8tzFkBvlvJiOtaGhCodULXsVM+Pn29U8uEFSiVi+rGro4UANhCytnnKlhKl+pB6f+0QMhJYchD0m+3YlWilks/J+tnEKaq6H/zemxlIb2bz07ShSBaTopnTUjJsVT3LFv5kGQTb/DYNC4JiJyV9rMPrZppZ0dHekiWtrLJHEL7w5LLP8tr6DnpQBGZ2PJdiktZDirQpk2PyLYTYd/xBF9Gqd+J5BzXFg7XXe1rlbPyXa25CMwdQ7KoekxMgTmAA== 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 Tue, Jul 08, 2025 at 10:32:44AM +0200, David Hildenbrand wrote: > On 08.07.25 10:30, Harry Yoo wrote: > > On Tue, Jul 08, 2025 at 10:07:26AM +0200, David Hildenbrand wrote: > > > > if (folio_test_anon(folio)) { > > > > diff --git a/include/linux/page-flags.h b/include/linux/page-flags.h > > > > index 970600d79dac..00ba2c8b221e 100644 > > > > --- a/include/linux/page-flags.h > > > > +++ b/include/linux/page-flags.h > > > > @@ -706,12 +706,15 @@ PAGEFLAG_FALSE(VmemmapSelfHosted, vmemmap_self_hosted) > > > > * address_space which maps the folio from disk; whereas "folio_mapped" > > > > * refers to user virtual address space into which the folio is mapped. > > > > * > > > > - * For slab pages, since slab reuses the bits in struct page to store its > > > > - * internal states, the folio->mapping does not exist as such, nor do > > > > - * these flags below. So in order to avoid testing non-existent bits, > > > > - * please make sure that folio_test_slab(folio) actually evaluates to > > > > - * false before calling the following functions (e.g., folio_test_anon). > > > > - * See mm/slab.h. > > > > + * For certain typed pages like slabs, since they reuse bits in struct page > > > > + * to store internal states, folio->mapping does not point to a valid > > > > + * mapping, nor do these flags exist. To avoid testing non-existent bits, > > > > + * make sure folio_has_mapcount() actually evaluates to true before calling > > > > + * the following functions (e.g., folio_test_anon). > > > > + * > > > > + * The folio_has_mapcount() check can be skipped if the folio is mapped > > > > + * to userspace, since a folio with !folio_has_mapcount() cannot be mapped > > > > + * to userspace at all. > > > > */ > > > > #define FOLIO_MAPPING_ANON 0x1 > > > > #define FOLIO_MAPPING_ANON_KSM 0x2 > > > > @@ -1092,6 +1095,11 @@ static inline bool PageHuge(const struct page *page) > > > > return folio_test_hugetlb(page_folio(page)); > > > > } > > > > +static inline bool folio_has_mapcount(const struct folio *folio) > > > > +{ > > > > + return !page_has_type(&folio->page) || folio_test_hugetlb(folio); > > > > +} > > > > + > > > > > > I don't like the naming. > > > > I don't like it either, but I couldn't come up with a better name :( > > > > > The thing is, in the future only folios will have a mapcount. > > > > Agreed. > > > > > Asking whether a folio has a mapcount is asking the wrong question. > > > > Agreed. > > > > > It's rather, that we want to reject *pages* early, and not cast them to the > > > folio in the first place. > > > > Totally agreed. > > > > But that's the future, and we're not there yet. > > What should we do now? > > Check before converting from page to folio in stable_page_flags() and leave > folio_expected_ref_count() alone. In folio_expected_ref_count() it's a > sanity check that should never happen. TBH it wasn't clear when the page-to-folio conversion should be rejected... (I can't just change page_folio() to reject that, right now) But now I get your point. It shouldn't cast to folio and do folio-specific checks if it can't be a folio. The suggestion makes sense and will do that. Appreciate your comment, David! -- Cheers, Harry / Hyeonggon