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 67FA9E77180 for ; Fri, 13 Dec 2024 02:26:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D9F826B0088; Thu, 12 Dec 2024 21:26:34 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id D28136B0089; Thu, 12 Dec 2024 21:26:34 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B53816B008A; Thu, 12 Dec 2024 21:26:34 -0500 (EST) 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 92F7C6B0088 for ; Thu, 12 Dec 2024 21:26:34 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 181B58099A for ; Fri, 13 Dec 2024 02:26:34 +0000 (UTC) X-FDA: 82888346142.13.9E91453 Received: from SEYPR02CU001.outbound.protection.outlook.com (mail-koreacentralazon11013026.outbound.protection.outlook.com [40.107.44.26]) by imf06.hostedemail.com (Postfix) with ESMTP id A3320180002 for ; Fri, 13 Dec 2024 02:26:12 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=oppo.com header.s=selector1 header.b=LHgT+XZ1; dmarc=pass (policy=quarantine) header.from=oppo.com; spf=pass (imf06.hostedemail.com: domain of hailong.liu@oppo.com designates 40.107.44.26 as permitted sender) smtp.mailfrom=hailong.liu@oppo.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1734056767; a=rsa-sha256; cv=pass; b=aFZIqBjr001H2hMsuLHC4+IHogmf/slHYhtHTm7xUzuxJwf2bYk2XmcRmnJoXLiwuu7MkR zrVm2LYykuEu2z2mZjEBp6i2mR2p825jdmp6pkcgjNtVwZuFyg/I3SMUrVL/JPASmCPlv/ 8+6Ny6a0cpK35Nub0ru4yVP4FcdP0g0= ARC-Authentication-Results: i=2; imf06.hostedemail.com; dkim=pass header.d=oppo.com header.s=selector1 header.b=LHgT+XZ1; dmarc=pass (policy=quarantine) header.from=oppo.com; spf=pass (imf06.hostedemail.com: domain of hailong.liu@oppo.com designates 40.107.44.26 as permitted sender) smtp.mailfrom=hailong.liu@oppo.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=1734056767; 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:in-reply-to:references:references:dkim-signature; bh=FdLF0XcnNbbUmEzY9Rjbos+Db3BmJ3MMCmnAN44mNNQ=; b=4ttnYrgOh0BkMKsoq5LefQo3FVI8LoaSIxYIXl9Gnu82VscScBvQO+3Tw/58jzUlIEGW6R 9isxxOcSqGM+mQFbUbqmUXqcpTQxtdanJDfx/y7WCAzc6BgCugUrEztwZgtmswoI+Ftjm9 XxZ3qEUyTQhh1F357HpNmVFFeYpa1yM= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=k43rKrPy+00Iod6RKW1YWFLrLapFXtch98Zu+ENxRjKM7aLoC+/iRwJQrVYhbZ9yWt4xGHQs20z80CQbpqbkzttOpg2eKV6WMN+a7DPREVYhwXk/e4XdWnwbdmAbjJ2Du8RgCE8oaKEdAPGPWji27c/O1w41aS/aqgotgY2ci1+Lnv6k4XslRMCJjgkRmjprqN+xjsgEkdZ42dttgnm+DIdjoc333tZx3ZGSDR3V337qj7IR7LDPYsHCeFHUHX4BV9n+2FtSFIknff1+tLCbe4nTb+uzI3i04dpXFyWBdjsIJDV6gpkrE6k/7bVjighwahBe7Q/XNQD/wBPDHefzVw== 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=FdLF0XcnNbbUmEzY9Rjbos+Db3BmJ3MMCmnAN44mNNQ=; b=y3Y4kuows9+BXhScfDoo9XMTYYkMOg3U9IVDKFzHO2vK6Qtel2yNjI0wB+bK8kLhzSc+874LEFEF5BvBKn6aeyyvblVbmQjWYdC1Uxj/AwgLHYC/hZ624SmyLN0JV+VURJmbyh9vF5NC44NJ/Jeuv3zv87glnvNShWreWwEW2tcL8YQjhqSMAj3rvpkOW+dSJxtfOnN8xserqqWt4JatNruaI5Z7fC9u+kWuEKo6r5ecazAPdQjkbkSMNBeP7crkf9y5D3i92lWTo8YkOfkI7LTX7ACCFt91jArCbgTDLy3pIqYYp9BBBlzpvnV85uSN+jNogGsD7y6GXQnJb86yFQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 58.252.5.68) smtp.rcpttodomain=google.com smtp.mailfrom=oppo.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=oppo.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oppo.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=FdLF0XcnNbbUmEzY9Rjbos+Db3BmJ3MMCmnAN44mNNQ=; b=LHgT+XZ1eDl8Ja7hvyBDpb8Mj16/i1PndxMsvfZ9Qt2Vj3J+2sm+erK+Pm6DrDZZyrtUdxzfVIZXU0yViNTaYL66bMSnmHxc05o86/sPZEXbP/JaDpoFocoK6WUaALRBluPgbE8zBqZGRqttRAxlA5bu6EdtXmD+hAeWp6ldqv0= Received: from SI2P153CA0034.APCP153.PROD.OUTLOOK.COM (2603:1096:4:190::17) by TYSPR02MB7417.apcprd02.prod.outlook.com (2603:1096:405:34::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8251.16; Fri, 13 Dec 2024 02:26:21 +0000 Received: from SG1PEPF000082E3.apcprd02.prod.outlook.com (2603:1096:4:190:cafe::de) by SI2P153CA0034.outlook.office365.com (2603:1096:4:190::17) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8272.6 via Frontend Transport; Fri, 13 Dec 2024 02:26:20 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 58.252.5.68) smtp.mailfrom=oppo.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=oppo.com; Received-SPF: Pass (protection.outlook.com: domain of oppo.com designates 58.252.5.68 as permitted sender) receiver=protection.outlook.com; client-ip=58.252.5.68; helo=mail.oppo.com; pr=C Received: from mail.oppo.com (58.252.5.68) by SG1PEPF000082E3.mail.protection.outlook.com (10.167.240.6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8251.15 via Frontend Transport; Fri, 13 Dec 2024 02:26:20 +0000 Received: from oppo.com (172.16.40.118) by mailappw31.adc.com (172.16.56.198) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Fri, 13 Dec 2024 10:26:19 +0800 Date: Fri, 13 Dec 2024 10:26:19 +0800 From: hailong To: "T.J. Mercier" CC: , , , , <21cnbao@gmail.com> Subject: Re: [RFC PATCH] mm/mglru: keep the root_memcg reclaim behavior the same as memcg reclaim Message-ID: <20241213022619.ph22z2mxxyh3u3tw@oppo.com> References: <20241212095646.16164-1-hailong.liu@oppo.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Originating-IP: [172.16.40.118] X-ClientProxiedBy: mailappw30.adc.com (172.16.56.197) To mailappw31.adc.com (172.16.56.198) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SG1PEPF000082E3:EE_|TYSPR02MB7417:EE_ X-MS-Office365-Filtering-Correlation-Id: 1a70d210-2f3e-435e-d601-08dd1b1d880d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|82310400026|376014|36860700013; X-Microsoft-Antispam-Message-Info: =?utf-8?B?Z3E2Ynp2K2k2YW1pRnZQb0ZUNnM2ZTQySFlMZ3hWVUFEK05rdGJOUnpzdE55?= =?utf-8?B?MjRJMmxQWWFhNnBrb3dXRkRBUmdHakRmUFdodHBtNEJTUVNvWENidDZqVU9w?= =?utf-8?B?dElROU0wdm5jRlYzUG9qK2VDOUpMZW8zTFNUNzMxelNPazVvQlNOR1NNMitj?= =?utf-8?B?RGFmbnVnWGhXWHhqOUlHcVNJYVQ2WXp4eE0wc2VkbXpJOVBJMnR0NU85ZkdS?= =?utf-8?B?RjRMMzdOSlVRNE1uV0pjNGlrRDZEQ0JoVDNrTXFNUWVxS1ptcVVMSGNFRXVU?= =?utf-8?B?b2tFSG1scmtuTHQyNVBzVkVrUlFMUTRoYUhINndaNmpRbGdBYS8reTNsVWNO?= =?utf-8?B?bUlKQ1FiUk1IcWJQNVM4Z0FIakVPR1VrbHJ4dUQ0WlRkcG02UXJNUjUxMC9N?= =?utf-8?B?V3ltRlAzQlZJS3pmaWhTNEZHcHkySXlyVXBpTk5kWGVWcnZ2TnRtdWVsU3Fk?= =?utf-8?B?UHFYd0J5emN3Ykxja05tRC9nVGZqWVFFZHkxZ2ZrVEFRNS9wTnYxVEVUdzhR?= =?utf-8?B?QzZhLzkzYkcxUW9ucTZ2eERnSldDVHNseFV4dDNhaHlLbmpnQm1DQ1hMbmEv?= =?utf-8?B?VGh4dUtYcTdPQkczSHoyZ0NBWFpPN0lXT3pjeW1rMWEzZkJGcnJub00vY3ZY?= =?utf-8?B?NEcrREUrb3lTYno0TGZGVDNxZFJqVlE3YXNtMWhrK002QVk1UGFVZU1IRi9B?= =?utf-8?B?MCtkbXBMYVJSNHdsYjFHd2hwSmdQemx1MVVPZW5yZTN4N2lpNGIxTkdSQTZo?= =?utf-8?B?cU92bUtFejB4L2VNSGJQZnQwTTZ3ay90aSttZ2V2Q0J0b3gySEd0enBPMDJQ?= =?utf-8?B?Y0RsYk9ZVm9MUGhncUtwQk44VmltM0JKeEJyNDR6SmtQLzdUeXF3bUsvN3dp?= =?utf-8?B?VUdwWmpQQ1h4RU4vUm9xZGpod29zaUx0TGh1MDA2Z2xIRm9lQ05tMnRmak5K?= =?utf-8?B?QXZTZUJJczdLL016ZEo0RkZoOFNXcnFMRWxnV0tkZ0VSRTFvYjFwdzA4ekFU?= =?utf-8?B?Sk5TaVc4bVVlc1hRTWhTME5nWTRRb1pzQ1ludkpYQ2V2MmhQV1pUWFI4ZFBF?= =?utf-8?B?bm9Ebm1sYlN4ci9ScjI5V01WVzJXZmZmdmhJZFVKUW9pYlVhUjRmUmRzYlF1?= =?utf-8?B?YzFpU2xEUkJjQXRkbGF6N3ZzSUI3MzFQb3dIR1lqQjlaUXpIbm9JbUJKdWNa?= =?utf-8?B?SkovWk1yZjZnK1NnSy9jQUNqdGhRcnlEL05JY1VNUFZhcWU3eXNwQVBZcGll?= =?utf-8?B?Mnp1Umo0UlV5M2NzSXMwb2gxbVZrNW81SWhrS1FhaEdYRTB0UXVoazBYcFZ3?= =?utf-8?B?enU2eE5LaVdRUFVuM3AvV1lkcmhrOVpIWWl3V0FDS3lQSGhxSWxVczRRbjli?= =?utf-8?B?NDRuMnNFRjdaRXE5dGJhZnRKTWpHd04vcjZtMnlYMkRxVkY4VXViaFI4bDI4?= =?utf-8?B?SElSTHZFM29PUVh5aUJWMENIOE5ZZWg4YXpTbkJmWU1LWmwyVnkzeUNJbXZU?= =?utf-8?B?bEFUa0RhSzI1c2RNMEFpRThURWRoeGtZVk9qODd3b0lTanNZS3RxUjNSTXVr?= =?utf-8?B?bXZaZUVIMGI4RW5jeE0zQnYvM2RwV25FRTVZMDNLZjdQRkQ4b3U1Zm1teVpD?= =?utf-8?B?djlxV2lROUZOOFo3Uk5EelVRQVJZYml0K2J2dmp5eGZnY2ZvRld0NTVQalgw?= =?utf-8?B?SGlqeTlVajFaUU8xSDRORGp1UUNyT0kzTHVVQ2N2WjdPRXJIZi9aV1FNSStC?= =?utf-8?B?bW43OW83Tm1UL3dERkh0S2ZFYVlzMUs3QUdYSU5XV1prazVEL1M3TStlL256?= =?utf-8?B?NnZCVitZR2k1emxzMGpHQVZKaGpWaHpDVWVEdDEvVnVFbk1qcER4R25PYTFy?= =?utf-8?B?ckpjUnBrdXBEalU2ajIyMXRIWENsUkxnbVR0blJvZVlrallNQURoYVF5K2lX?= =?utf-8?Q?WkKwIvUASTQrMGgj1un1aeVwZvLUXeH3?= X-Forefront-Antispam-Report: CIP:58.252.5.68;CTRY:CN;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.oppo.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(1800799024)(82310400026)(376014)(36860700013);DIR:OUT;SFP:1101; X-OriginatorOrg: oppo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Dec 2024 02:26:20.5838 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1a70d210-2f3e-435e-d601-08dd1b1d880d X-MS-Exchange-CrossTenant-Id: f1905eb1-c353-41c5-9516-62b4a54b5ee6 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f1905eb1-c353-41c5-9516-62b4a54b5ee6;Ip=[58.252.5.68];Helo=[mail.oppo.com] X-MS-Exchange-CrossTenant-AuthSource: SG1PEPF000082E3.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYSPR02MB7417 X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: A3320180002 X-Stat-Signature: 54fm9wcisyi48gcbgbsqcomg5isoh5u6 X-Rspam-User: X-HE-Tag: 1734056772-392583 X-HE-Meta: U2FsdGVkX18LiiqtHjWXtgKXv9EAlk/fOsExEkZ2aQ1/wwT6CviLIQxP7h7AiKZ1oMDmvDoXGK2n3OSQb5cYlWma4BsAVK/HnT5treNG8AUWbz80rJ2TPO88m7UC94t425J1aDJKB/x7uHm3bowYOFq1iizMlXkH1MP/l/SoFG4xXFg53/06/o4IFkq1jiUpjLubS7ch/qwKSvV1qL2jQqCVTichiaLtHSqG66qkHc2ziEbN9k6cgzqIopHi6KbRLwFu3NBEFzHup+kXU1OiizJuX/e6fNhdl6haDCido7NHH3EAHZ9+vBmyvG6TRA3MCS3cIl79m4CJiamEGZotJLrMsFybmHKbLW1er7cG/0bhCsgsAM7mtxH/u7si5pKFpocEibdDCVgGOSCjDQYqtGjbV0iPfdIVBfjnB1nGOiv4aCb2dGY8AZ0TpfuSldKJMfRW4RhsQB/p2gwv5lHLW7ocBu7s//wWqTaA6AcSqhI3TQecLPdexk0YkWeyZ4/3vJvvxJ7+FqOGyVk6a5rFG/16p4VqOqnbiIjiod4NdZlB4HLgpV0o0V/Mp1etIQlm8oSUxL9RDGpdGm1q2Vx57R+dyy3bnbxIa/QeQA4wEg/rJac8xaxqELxpU0kBIEPeWYWgG3VCUDoeODySrVujE437TX1jXQF7PUMUn0gOMb+bHYzPNKAU3klid+ET1BAtCgP9uI3Q9sX1eF4ZHU9/cucFYJgRA4Tx4l9rAsnIGE2OwcA4XQ9rWPi4iTbsUWiAQkSsxlXVjnLUAnat9nzjo0We4LNY0U02r4nfkCzAE4vyfA9GS4VcySg/2xetm3MaJBppCjn15oMUdESMuKVy5awyDUqfBgLsouJ4xpSRA3jwAPhK8M0B+gE8VCnplxrQTG2FTWt/1YYSohPPiwQi7UscOwXliLPjMVSoQVIlb65EQLZSYRGfUOfph0kzyItTV/JuG179tBz0JCtuI0X ayVJykEe 6ZpZzJWTEUs58UDU2nnD3r9qKzf6T6nvw0EIu7h8CMAY+EtaTpZDX7bbh45L4EbK1WzHToJDmdytFLSEXAnsdBVsVDgTyYAYmCQQi3G/CTaOX7LziHOFkFStGhQFnhsO3fJ2nUV99QDCoi4vyRITKZuMcYEKtrwebx31leVc8rRuVmLuSdMFD7HwgLv7W7boAN1r7WJAHbEvnYZxhRl+KMjRevogh5bgXWJydb1T8n9b5p5oXSJLaJFzN5EOWsQ3fqWVCcWosWWhs1dvrk59tlcnxLLrpaVKZHvKbzlmt86BhRuV39vBwWw56RhMeACZoggcQ4ddR55Mp0KOmxqVXGqasfo1Voq22Z5bAcxu1R4z5d/nc6ZLliS5akMr4xWslw9g8K6cy3ork0iP+W8K+pe7kZq4MHpsj/W9FaDHPPU2tYo9fs9IgR2NfearYRTqDMhY/jmNIz0TW4VhzFcbJOH7f/Fj/05GWmpvE40p3fTSYcEYrIYmIKh49f7EzvT8dFbTD6SdXciK0eVcFoWVFao29VX6IFmnw5SxGSjWGVJI1cDG5KF7om4W3SmCEyAOr/xVt0xRK3mx/VKgp6zqzlP1qfae8GK0NI3mvtuK98j8P6KCZ+4/nvrgt3uMk+7wrF8Pm9OVSr4d493+Xg5VlALo0qM2aUy1GyUjd/Z7NaycQ8MY= 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 Thu, 12. Dec 10:22, T.J. Mercier wrote: > On Thu, Dec 12, 2024 at 1:57 AM hailong wrote: > > > > From: Hailong Liu > > > > commit a579086c99ed ("mm: multi-gen LRU: remove eviction fairness safeguard") said > > Note that memcg LRU only applies to global reclaim. For memcg reclaim, > > the eviction will continue, even if it is overshooting. This becomes > > unconditional due to code simplification. > > > > Howeven, if we reclaim a root memcg by sysfs (memory.reclaim), the behavior acts > > as a kswapd or direct reclaim. > > Hi Hailong, > > Why do you think this is a problem? > > > Fix this by remove the condition of mem_cgroup_is_root in > > root_reclaim(). > > Signed-off-by: Hailong Liu > > --- > > mm/vmscan.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/mm/vmscan.c b/mm/vmscan.c > > index 76378bc257e3..1f74f3ba0999 100644 > > --- a/mm/vmscan.c > > +++ b/mm/vmscan.c > > @@ -216,7 +216,7 @@ static bool cgroup_reclaim(struct scan_control *sc) > > */ > > static bool root_reclaim(struct scan_control *sc) > > { > > - return !sc->target_mem_cgroup || mem_cgroup_is_root(sc->target_mem_cgroup); > > + return !sc->target_mem_cgroup; > > } > > > > /** > > -- > > Actually we switch to mglru on kernel-6.1 and see different behavior on > > root_mem_cgroup reclaim. so is there any background fot this? > > Reclaim behavior differs with MGLRU. > https://lore.kernel.org/lkml/20221201223923.873696-1-yuzhao@google.com/ > > On even more recent kernels, regular LRU reclaim has also changed. > https://lore.kernel.org/lkml/20240514202641.2821494-1-hannes@cmpxchg.org/ Thanks for the details. Take this as a example. root / | \ / | \ a b c | \ | \ d e IIUC, the mglru can resolve the direct reclaim latency due to the sharding. However, for the proactive reclaim, if we want to reclaim b, b->d->e, however, if reclaiming the root, the reclaim path is uncertain. The call stack is as follows: lru_gen_shrink_node()->shrink_many()->hlist_nulls_for_each_entry_rcu()->shrink_one() So, for the proactive reclaim of root_memcg, whether it is mglru or regular lru, calling shrink_node_memcgs() makes the behavior certain and reasonable for me. -- Help you, Help me, Hailong.