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 D2DB0C5B543 for ; Tue, 10 Jun 2025 12:39:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 59BC86B009A; Tue, 10 Jun 2025 08:39:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 570636B009B; Tue, 10 Jun 2025 08:39:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 45FE96B009C; Tue, 10 Jun 2025 08:39:07 -0400 (EDT) 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 21B356B009A for ; Tue, 10 Jun 2025 08:39:07 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id BED1B1A0211 for ; Tue, 10 Jun 2025 12:39:06 +0000 (UTC) X-FDA: 83539445892.06.D080FA9 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf24.hostedemail.com (Postfix) with ESMTP id 2681D180018 for ; Tue, 10 Jun 2025 12:39:02 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=qRldkQJa; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=v30BXMQd; spf=pass (imf24.hostedemail.com: domain of harry.yoo@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=harry.yoo@oracle.com; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749559143; 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=VnNqFI67PemGnpONqinBptYzF1geLfSyluXzCKkPdq8=; b=mYKxgaXL+RTcQHiV3pmUSyvzOhj6uWNPCYs1JZ7yp4367WT/rsA30FEH69nZ4Qjlz8mrnN NMJCQEWMLzhkGpS0Udakc5LsfEprDangs9h/LfhcC0LHf0R79fJk+Ftpb8fta/hTt+snNH XD195GJGFnw/HOj3rur1zCBHZifyYTY= ARC-Authentication-Results: i=2; imf24.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2025-04-25 header.b=qRldkQJa; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=v30BXMQd; spf=pass (imf24.hostedemail.com: domain of harry.yoo@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=harry.yoo@oracle.com; dmarc=pass (policy=reject) header.from=oracle.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1749559143; a=rsa-sha256; cv=pass; b=7KLry71XR4mMRBu5I0s+Zyorr6++7zvuB1+yuBWqoaj/yvsjOxIsMw5+kmSKVZE5NBxxif CsuLxGex2O0PGdvXde1ThlwLvAEbjlXbNBX+lyi15su0Iuh6bLF5wro5od1zIs5BNxA0TI 40PmVzSBZsgwh04ZRdJgd3VUxJjaaD0= Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 55A2fl9Y021665; Tue, 10 Jun 2025 12:38:40 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=VnNqFI67PemGnpONqi nBptYzF1geLfSyluXzCKkPdq8=; b=qRldkQJa18QH0+qgohIMVenJZmD+XURRAx jep6/3oQQp2NUQyeiQXyUUxh8oOdO+QqDfCVFJAajwFgqXrSjSvyEH0X9YeSfTnj RxMn1d0godHGpodWtl9ZEDIwmRyCAqkMGgAKF7nqNCf7hqLjOA8DqZUEcfG3AOAU 6O84Sv+SenZ7C2Kqno0HnHXyxaUj4jWSaQ1MhjhRuwCp04SEnsqmrqNI5pO7oCHi X3WE8AKOVrdL095rlYGLkBV8izs8wgwz0vVwpAPWJKbDWiC0P0LOQ9ZwtyunZtWu DHOypdMJRzaIApVbfX6hYx2dZFpNN3Nw5wd/KF0+9ShYi36TA2YQ== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 4752xjugm6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 10 Jun 2025 12:38:40 +0000 (GMT) Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 55ABqLxG020712; Tue, 10 Jun 2025 12:38:39 GMT Received: from bn8pr05cu002.outbound.protection.outlook.com (mail-eastus2azon11011048.outbound.protection.outlook.com [52.101.57.48]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 474bv9d3yc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 10 Jun 2025 12:38:39 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=BVYzHn3xz+c40hssM7POyf4HSWBnM4E+XxlczohQVf+T37R/Rer9X4kXZnfbhl06wUn7jZTDi+Q89gWy7uCRmUb5sEgZaEeBRzxh2FD1fYlD1Q0s9qWL2YeHodfseMQU9GQI6+y+g55OeLo7ojfR9/ksT79e1HldEXcRHUD7VJinccQGhVTiq6QTcDu9MhkIojyMNZUkB2SCCc902FwdsjHqaWUrxOfFqwJbQO8qeNe2GfuuFzpehOQZPsVTexOP+VhjmW5PbdIjvIG1uUekCi0FQ+k4SwoEN215lClCf7PHG/Cs//YhKzubJHCEbH+OicpWwTvtAo7aYq22kAAIvw== 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=VnNqFI67PemGnpONqinBptYzF1geLfSyluXzCKkPdq8=; b=ZaUO+7dFNsdaVQPyr73T159iMO2j5XrpxTmb//CtNdXQFGbTICeaaRCC4aLDJugMDTsOlGIwYopbnX9SYBz6gEGSe6RL9c5JLA/wZlCW0AjiLiXIlf4PqlggENrFzqiM8EW13vF/SXe7fevsuIZiCJEEwOMpkqol87oFDdTQUQ4Q7vW9asExAFp9wXQMWIM64wnfLgntVKTm1S0rJERRLPnuJh9lSQ1uCB7jrOefYJru+TaOtcecWiY/Dn6+l/tPVMF8umqysK/qWqyYOo0iFZCO0gazbBd6LBslIPFHfz+mRKs/9oYOH4zq1B8yv9/aaE6E0o2L9GkyjUFPxhdVUA== 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=VnNqFI67PemGnpONqinBptYzF1geLfSyluXzCKkPdq8=; b=v30BXMQd6MxybnGNeMRNex6BTof6i4azPGZELCRWHNnzf6R3ZKS9KfKYmlkM9tE3EkRIOLsSUrbL0acl3lW9E7b1sj7zBxlVOIPRsHzqW7OkYLohUKHgyeTKfEWllB/hi3oyRFJXjgznnbgstV/jLhrENi4MaFnaQsTbuySaPpI= Received: from CH3PR10MB7329.namprd10.prod.outlook.com (2603:10b6:610:12c::16) by IA0PR10MB7301.namprd10.prod.outlook.com (2603:10b6:208:404::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8835.19; Tue, 10 Jun 2025 12:38:28 +0000 Received: from CH3PR10MB7329.namprd10.prod.outlook.com ([fe80::f238:6143:104c:da23]) by CH3PR10MB7329.namprd10.prod.outlook.com ([fe80::f238:6143:104c:da23%4]) with mapi id 15.20.8813.022; Tue, 10 Jun 2025 12:38:28 +0000 Date: Tue, 10 Jun 2025 21:38:08 +0900 From: Harry Yoo To: Vlastimil Babka Cc: rientjes@google.com, cl@gentwo.org, akpm@linux-foundation.org, roman.gushchin@linux.dev, willy@infradead.org, linux-mm@kvack.org Subject: Re: [PATCH] mm/slab: fix folio_test_{anon,ksm}() false positive on slabs Message-ID: References: <20250609132723.13118-1-harry.yoo@oracle.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: SL2P216CA0088.KORP216.PROD.OUTLOOK.COM (2603:1096:101:2::21) To CH3PR10MB7329.namprd10.prod.outlook.com (2603:10b6:610:12c::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH3PR10MB7329:EE_|IA0PR10MB7301:EE_ X-MS-Office365-Filtering-Correlation-Id: a5dc3b08-ca5f-4d65-d25d-08dda81bb31c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?tNBOsofkCmxS3YmQnKlckHQev7ynjkpLc1fd3JS5kutAQNCUy0u1WW09Tp6E?= =?us-ascii?Q?MosV5xbTuJ/iwxiQLj2y7qNJ/8feqGMGGUQCCt+yHUgevua3TZqWn8zbaki3?= =?us-ascii?Q?xiGFsrfYBpQwoC/R9yuIqFcEWPvE+0ad9mj37PWuaNw/OqN6y8c6HZrkRa7C?= =?us-ascii?Q?lwUuIr210i3JnnhWYNfM5S5i40IBP1zaEaIUFSU7y6pliNkr/E+Q3oYBoOgO?= =?us-ascii?Q?FDawLwGqFcDCc0/MlPuYB14UDySjPPT2v5AFK8P0OGnppEqmqEb8b+hosYKd?= =?us-ascii?Q?K8JiftMlhDlW/IwoeIKfsfmqbJlEpYi+SiacJZaImJIIlIXru+43ShHx8NZP?= =?us-ascii?Q?vPpU/FqrCBIW+88BTHGfOBM8mDBMQXvg8GvLDqaAFS9lHvTU2YWileERRvrP?= =?us-ascii?Q?T6MoLBbnjun+HT4ZvNv1LC3g2KUbbkbLvGiA4Q1FPzgaczoKigKJv08pK6xs?= =?us-ascii?Q?zcEABKpENKLdIA8Zhfw4I/SVk6XQTHiQ3m29rk6LMgfU/BeVfJiOO5Ekcf12?= =?us-ascii?Q?A6jDJ7Pc4tKPzuypx3KfbHzF5I1p3VWYlG/eTQdMk6rXRDzYljXN55JB8E4/?= =?us-ascii?Q?12MdVt0faqTA3xxSDEptAu0sREe9DJMD/cwEDxKobsTlQBxzGfQkIRJo2HuV?= =?us-ascii?Q?x8dkdKCkMVqECZ2+bBSjANJVuwFK6S3qG6paISAD/Ozhtnc2mES2nc4QEEsO?= =?us-ascii?Q?V8ynFXZJD+/6tUwsrNLPuBM9y62mMRNB6Z5e0kZ0lsuoCQsB1qd7Gnv6FcWM?= =?us-ascii?Q?c5+oynNzy3M3aAVHQwBLfRPtGeFHHdumGzWJeQ453v8itoxepgkkAKUCU5Sv?= =?us-ascii?Q?oa5JD3XGFye9YBgFpt0Uah24Oik28XWdhNdX38ZlzON/wP9NQl4mTQPW42c8?= =?us-ascii?Q?ztvp3TFli3yY8NQaCKiwPZHJ7xQJtpYYb4VjMibY6komjLQ1Uq6/8FS5oN9u?= =?us-ascii?Q?rxitiCb0A/+mptnyGrgagzC1X9dBubn/m9aMP+PmKVDxin3yVv8TxaRxuGf1?= =?us-ascii?Q?1ssuRoH3YREXHQsaJViXGk7/K+F+My/Sq57HO9UCxsPCGEK2wsvmFaQ1+fpT?= =?us-ascii?Q?92yGIygun9U+e+S7ikALGWCTG3DTaKG612J+jPE46TG9nKY6JMQqlZhjz+Jg?= =?us-ascii?Q?gHE7qjMaUWQUu9ONJ20R0C3Od5GvA4C++BOOLyNLbjtFGOmsEgZmkkUuYycr?= =?us-ascii?Q?Eawpj6vTHPnTQv+HUxMGkzzgR+rGzgeDWIqWXUIghXQt9FBTZHGSxSCDRjYV?= =?us-ascii?Q?6CMduEN8SsQ/cvqdxXYQg0kcti2FAnJ/ceLuIEFGqKbY7NoY0jw7+jgyh5k7?= =?us-ascii?Q?H5UhNtvDxZxGOBeb/+US4ItNDASsIV68Zep4jibxuaRQcrLHNSvIuTsrxO2s?= =?us-ascii?Q?l3EVUwypeFma+8cT/u2BG16G0GdfFoKkI/GZKwkq5Jzx7uHj/dgvW5+khFfo?= =?us-ascii?Q?d8FykMcoKno=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)(376014)(366016)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?jlYlXmCr+GtKYntqguaVOaCvK3J1rL0zS4JxCjbOWRSWjQWceNWrNrVnFQNz?= =?us-ascii?Q?aSOxNcBb0yswpaOxNYAnUjoPWDVmizRJ51U44M0G+8jMQlhusPnBopihgRgY?= =?us-ascii?Q?fmD8AOTBH6VKL/OoZVzySOamhX4N2PKrNI5Ce4Ftr7yDSkTsKM5VJAx415/T?= =?us-ascii?Q?CJfLo/1Pud8/hOymYvNFBJaekK2wOBlFlRYCeHDjMsBcNxCFbooN14MPL/6v?= =?us-ascii?Q?f9dfFpDoMMfzuVR2sVtWaMizlzsFpa3d0Vr0+v5FQlFxzqlxan+xPxJmCdJ/?= =?us-ascii?Q?wLVd+NvlHEdFvAtpCsq4kQExyHT/nFeG5GHfw4/7Q80SF7tGD+P3kCDlasVr?= =?us-ascii?Q?IDcbJCbEyYF9Ok40UuNZ6uiHVTwEY/kTCRZ1URBh7GtySsL4GEhgVDApgvI6?= =?us-ascii?Q?2F6K1Vc6NGoPbwvYdVK8gIiHdXmVPqBEhm3AV5Rjut6ifltcvCKBIyYlfjDU?= =?us-ascii?Q?npad8C8dD0U6eCExB8eXDE1oWTzBQhPzBrZ+FXKa0mJ348Ml72z/nFLsKUTJ?= =?us-ascii?Q?Um0G4gfQSotc+QR63/lm92MpP2wpmNrOXLwy+ERhRYE5hmtqdPP8WdtORwKC?= =?us-ascii?Q?Jw5rVRR2yaZpcKTtXi8/YGOwJSD4riRqz973kvsOGxtsML7hJXTecIbJYKTN?= =?us-ascii?Q?uWnjMsKG1r3NMFkAc9KwnLSsAdFHH8b/GIdPA6ajczFH+MjnSJvmtpfDVrkC?= =?us-ascii?Q?pxjlFO//m3g6ro1fWL66cFYUl5Hr/Uh0H+MiaugJ1iulf0q8L5FfxqJoH6sm?= =?us-ascii?Q?rGsH8lPzcfmVM/IWANX6SmmS2OVU4Geb3KOmZLhOukYiUfA4ZsNL8F6wkNF7?= =?us-ascii?Q?SDwea2PyZLW9zzaGAmqiyzfjMGwfUlXEDNc3v0nqLs9fWTTKPq/N5cOb8tZ6?= =?us-ascii?Q?cQxxyu+ltdpA+Zz+dpoRzGux089xOlrfIk0V4hngJJU+mc5QlcSqjdMfBUHG?= =?us-ascii?Q?vqJ/k6GvQQdmTAUelYPqCJrkao62+kIcqFvqU6CBsutoF1IxQpgDu0KsQgvB?= =?us-ascii?Q?dnm19xeaHTW81JzmnHGX5yCrNEwTHL9LmGWwR5Uqw9Cu0HU83WZ1uzs7vG/O?= =?us-ascii?Q?rKtOTdQ/1CKWCrI1T3zYdG1JJhIxMHASAiVc0tFJfjrrHS821MdTLMaiqEL0?= =?us-ascii?Q?Ebsl5yf202a6SYp4PraN/yKaRFsuEHyb1Cup/dfPY96q7INZVKf4HgiGEDuO?= =?us-ascii?Q?HHFolzhj+LCifCbPTtRINaz1WHjgVZXxTTA8iWQg3Iac1KZ4L8X+6jll74aw?= =?us-ascii?Q?6FlNGCx7X51fyV9F0sZ9o14SO0dOXyWDn0MzpThK6nIH/vKKth33YH010oQv?= =?us-ascii?Q?gykMViuflHgaocvY+NdVs5gCWJ8nzzca8av81gT3HrE+VVRQQjG726FzPiDU?= =?us-ascii?Q?LFc6jCEDv/IcRiSWY8MPoyRrDYmyhOgwx5WhEQ33g537SmXKyXiB4zu8e0lr?= =?us-ascii?Q?VupKxOYu7EYe7OHYTnK9c3TBuV22wtlZlPMga6h4x9SxHodgxPHL+9dzzqQU?= =?us-ascii?Q?+OzBDQ4LsYntm4QnkUjr/xZV028KBVUv/ujxjLxcvLRBhmAulEX+4IWnQzuc?= =?us-ascii?Q?Kqh6khk4yob7FBSsRNnM0rNBIsO61dzqC0vCidCS?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: rV43YPLEJBS21yO6v6UNzYqW5D5uo905ALlLhLhV4Lrl0lPjPQCK4OZZe4PZOQS8o3EZM+M7pz780j1oTfsL3nnXFm8QvUPvOID/QbVXRZU3GFDHElCVRGROoTaJDZUDtr8j8yVbEYlmLpU1ybXLNF8kKVXfYb60dULpjCkfS+d1u/M/s2zEeUtMtJ/VAZyLIpNeEzlAvHqP0T1RPc25UnQFWY4w8fsWEhTKZPEj/OoWx/FvXd1tIBSInLn5RM9KiOf0onQh/p6rUnkX3/wjoybx13aBijRzx1gD8Jdt368e+cC/ibAAEfplQr45yW4y3nKI3PrGGI/0ALxELmintEtAqcGL2pkY08a8lLE2mbhKHFmGNJvEOkGWsH1uNWKYT4yW6nmwGsKYm9u0oEhI6YoD99ARMBudbWEXcJCsYrq81u3tkCsoijsgXSfflw8xLUDhR9P9GfTEYg4RBi4cAAZw5+iQn5m7T1juL0qXzYwHqmVauuNIhWVTN1QYUhg+6dPk0oArdng7u8Kql+FmcOQLKy9KqnQIpZoeWoWMs/q+vX7sBCsKjK8qcmktNsGvxtGXPIvlGMiv+VhgKEFjlcOxz2xFbDWFC2HUm8iMGWM= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: a5dc3b08-ca5f-4d65-d25d-08dda81bb31c X-MS-Exchange-CrossTenant-AuthSource: CH3PR10MB7329.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jun 2025 12:38:28.2434 (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: FOoLfUbcw+GjmkPTd0Vz6QhfUge9/3zXS4cecxijSOQC4qL01Gj4V6h03p285tPkXaw2f1nPqoV5NvU9R5z6pQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR10MB7301 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.0.736,FMLib:17.12.80.40 definitions=2025-06-10_05,2025-06-10_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 mlxlogscore=999 bulkscore=0 malwarescore=0 suspectscore=0 spamscore=0 phishscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2505160000 definitions=main-2506100099 X-Authority-Analysis: v=2.4 cv=K4AiHzWI c=1 sm=1 tr=0 ts=68482750 b=1 cx=c_pps a=zPCbziy225d3KhSqZt3L1A==:117 a=zPCbziy225d3KhSqZt3L1A==:17 a=6eWqkTHjU83fiwn7nKZWdM+Sl24=:19 a=lCpzRmAYbLLaTzLvsPZ7Mbvzbb8=:19 a=wKuvFiaSGQ0qltdbU6+NXLB8nM8=:19 a=Ol13hO9ccFRV9qXi2t6ftBPywas=:19 a=xqWC_Br6kY4A:10 a=kj9zAlcOel0A:10 a=6IFa9wvqVegA:10 a=GoEa3M9JfhUA:10 a=yPCof4ZbAAAA:8 a=J27Zw7EO5sH2jAGhYSwA:9 a=CjuIK1q_8ugA:10 cc=ntf awl=host:13206 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNjEwMDA5OSBTYWx0ZWRfX89k3glQ/69xO s8zg/qI/hRbALc+3pZvCegclHToWDnNzEl2Ld/deaucR1/Ep42YTRQ3WSJnh1BJYxYcr3KEzEs+ MihXyjq7uKjsy6lnHJYgHsfrGKve/0Koc7CXpMsW42P3toBiiB1lHiBXhEf9lYC8rWfsL+Atnbt RHGaz8g18RlN00wJZlDSEVhSZN45+ogyeAZumy4fHelfmKNX7CDBbNtjuE/OlPnfiLbTbX8lKrR bwOcJ08YRETy2CGMJiIdVPVPdFS4drvIluXRwKvx/bNWtsVvBH0MUzP5MI218IyYNuADnhnihq9 CKWF42LoqZ0quVx3HfnQHrgem30W1LpdaoIaxhHS4ZDo6NYKm4bobpVOBfi4GqpqF8tNopyB64f 0xwwGKbsDaPbr6h0m0u/3or0vgCyLU0C2VGrCUYqoahSE20uVW9VfrToor4VJcnpcVg0MWuO X-Proofpoint-ORIG-GUID: 3UG2Am-taCKZ8cbPgbeYON1qUViLKtHe X-Proofpoint-GUID: 3UG2Am-taCKZ8cbPgbeYON1qUViLKtHe X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 2681D180018 X-Stat-Signature: xg89u531s1i53oi7t3yxqoc7qztc35kc X-Rspam-User: X-HE-Tag: 1749559142-360239 X-HE-Meta: U2FsdGVkX1+PTu+YHcMxtOpgsqSb+1+j1pWB25mtB9AOOE0xJJs2RU+r0qU7DDLT5kjgYuCtyXuFZHxjNS7AOPi9jiwI9faDp8eO7eHJL/IX5VCPRcitpmlmNslPynb0iCjCD8bqAdq/YnqJ7V7ncfZOUS/3i8aN4dyh8V8MX1TFZnAMwcUW6pdiRzpH6Cs1pwh6qe4ELc23wcIhjyVxG3/8wP8IB3YY9C9S2ahSs5L7do7QJGqDXm16mLoTj8B2UWN0Lo/IDbku6b5wZnHglcFfgGY1aJPljBiv9kNcaIFJbJmCBcubsa8DASkxckFyyc6Ad/keYqq1H3EUGxyUu3sCKKTDEKZmgWm2byLhibpXCHNAqJl+BAuYBMglsx6l2wwCXN2B7EFoAyv4aEeS79LZODEi57yw1Ahyqbf8mgNuvV6075+mw1tYMJ69pPmxmGQX66ZYRvIus4mzLpTgfPqZMF/Mr6B2wl3kWDqyAPEXz+eCoGTt2pIiTN1XS72zjQUn7OFMas6H+11ujNxKA5U73sbJmST7SZRSru9kWHygAOEy0Ikk9RtsiXNTIEe1Rb4mO6PBHtkObFdp2PLvcTkeb4nb6qKMCueBKwIIaN0neWSFc9lyG+4mPs3rB/Wcr0P95Dzfx6rcmUfzh7hCDL8kz/WJvk3cuK/5MYhHOeYwGW0QBPueuHVjCSNNoZ2oQqjZV//qxQLNHPg8B7Z4ifhwSdbi+cMs+dREpuJeEh8ft+bJ07R1Bz6ydTmMMcD7ryU6zlMiI8C61ICJHv/QgOaivQAbCe61KHumD/A3ZT+joZIn451mjF4tRbfViVZYnh8/249onnY5XF3oH+Lb98PI6CkPcnr8XdYgJtkrPRpTCMt+KquMg0KtavGaavVYdkd2wGTug8dnTNJ620qVEyc9chbRjY9q623ZfYZ54QYXyVMPE4NMbM2kgeLdLttCCouXEbNIKeG9Ttl9e3F eovNOzDp t6Bf8OjXMtoTYFt6G7MHWRcDRfthoP5uZqJA+nPXYACG1fEjmgmWbFrD5abFUMhuCxOTK2hmdTgt99FhShUDaQKEHTzCbvCbEQkpK8d71jeeQ1XG09KNTCBInh8lZHFbg5wH6tkNmqZrDSy/K/CADx1BC5zYzgysveOjNSdlVYTEdOENh7ZOjCFqR7Yl/0hVTqH02bYMZ+U10bVxHl7me0nyJxx1VawbojStAd1/L/Jzt/t63LoFB8QAfpTUTQ8hHY/i81IVbnUHrsd4/gBB+Y6k8W30FEaLdjXC4skc+I6oJSK3ypVgIFK8nZClEII/Zn/x38idTbwdhxw81nv4e8p2qgsR0uIXLVwCaPWYNCKkWpLmcyL+8BnVJ8/drF73j9MkeYkc1sYNR8sQIZJtVV3Tt6q9cWGljtp1Oa5TxCGgdwAIAdg4p9tCzepO3Y24pcq7BYrjCxifKeCfdeDBcOmyffnHTUH4sbh/DJNiURNrxZDWtDwWuM7kCi+4dyilT330ExxcbZ34hQj+aFkgbJedG8/3gkhYtTIfVjXhGFCykkmyWu5UZKkcxigAcS79scVsXg3L8RgI4JabaOJNRU3gbPX2EDzFE0C2KrhX0MmkDyc1pvdOCg8FtZdZBTvC+TOuLP+VbLu0/HaejOEbTCtVmHDIiOt9XkkSOTVG5x4NinNqFzlfNZhlH3EVpWKA8tLJP9725fnUXq9X5y9iNOb/niJGWp9j+yK1o2sF6TLCJQyFrAj1Lw8hriEMhnLgRtZSCNa2UG8HrWNubKAYAJO7reTBLve023K32 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 Mon, Jun 09, 2025 at 04:22:01PM +0200, Vlastimil Babka wrote: > On 6/9/25 15:27, Harry Yoo wrote: > > When running tools/mm/page-types (with flags, page-counts, MB omitted), > > it reports that some slabs have KPF_ANON and KPF_KSM set: > > > > $ sudo ./page-types | grep slab > > _______S___________________________________ slab > > _______S____a________x_____________________ slab,anonymous,ksm > > > > This is unexpected, as slab memory should never be treated as anonymous > > memory. This is because slab->slabs shares the same offset as > > page->mapping and setting the lower two bits of ->slabs field means > > folio_test_anon() and folio_test_ksm() will return true on the slab: > > > > [ field ] [ offset ] [ size ] > > page->mapping 24 8 > > page->lru 8 16 > > > > slab->next 16 8 > > slab->slabs 24 4 > > > > Reorder ->slabs and ->next, so that the layout will be: > > > > slab->slabs 16 4 > > slab->next 24 8 > > > > After reordering, slab->slabs shares its offset with page->lru.prev, > > which is not a problem. slab->next now shares the offset with > > page->mapping, but that's fine, as a slab is double-word aligned. > > I think the double-word alignment doesn't even need to be mentioned, these > mapping flags are fine with just natural pointer's alignment that means the > lowest two bits are 0? Ok. that's fine. > > With the change, the nonsense slab pages disappear: > > > > $ sudo ./page-types | grep slab > > _______S___________________________________ slab > > > > Fixes: 130d4df57390 ("mm/sl[au]b: rearrange struct slab fields to allow larger rcu_head") > > Signed-off-by: Harry Yoo > > --- > > > > No Cc: stable because we don't usually check folio_test_anon() on slabs. > > Hmm maybe we could just make the code generating /proc/kpageflags stop > testing/reporting those "flags" for slab pages? > > It could be even more future proof code for when struct slab is separated. Not sure if I follow. When struct slab is separated, checking if a memdesc refers to slab or not will not have false positives, and thus no need for "must check folio_test_slab() before checking folio_test_anon()" rule? Of course, to fix false positive completely, I think we need to add something like: __aligned(4) or __aligned(CONFIG_FUNCTION_ALIGNMENT) (whichever alignment is bigger) to rcu_free_slab(). > I mean there's even a comment above PAGE_MAPPING_ANON: > > * 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. That comment was added because it was a hard lesson learned from false positive. -- Cheers, Harry / Hyeonggon > Otherwise the change seems safe but maybe we're missing some other corner > case :) Willy what do you think? > > > mm/slab.h | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/mm/slab.h b/mm/slab.h > > index 05a21dc796e0..2e7064f7709e 100644 > > --- a/mm/slab.h > > +++ b/mm/slab.h > > @@ -59,8 +59,8 @@ struct slab { > > struct list_head slab_list; > > #ifdef CONFIG_SLUB_CPU_PARTIAL > > struct { > > - struct slab *next; > > int slabs; /* Nr of slabs left */ > > + struct slab *next; > > }; > > #endif > > };