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 972D4C54E5D for ; Mon, 18 Mar 2024 10:00:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1ADFE6B0088; Mon, 18 Mar 2024 06:00:37 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 15DE46B0089; Mon, 18 Mar 2024 06:00:37 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F1A426B008A; Mon, 18 Mar 2024 06:00:36 -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 DF54D6B0088 for ; Mon, 18 Mar 2024 06:00:36 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 4F1DD120E57 for ; Mon, 18 Mar 2024 10:00:36 +0000 (UTC) X-FDA: 81909715272.04.F87E5EB Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.17]) by imf15.hostedemail.com (Postfix) with ESMTP id DA4F6A0036 for ; Mon, 18 Mar 2024 10:00:31 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=UT5ItYO6; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf15.hostedemail.com: domain of fengwei.yin@intel.com designates 192.198.163.17 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710756032; 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=Jh6EqESY8gSM30oPwOmyOJCxWZycTaH4WNTchQVkriY=; b=kcnQp+jhG5106T+maly4oqRc04UI364FveI282iJ8mcg7rzvoVu7KCESPvh0Fl/la0Asa3 Lo+Rpu07cEkqqjpPIug1uldbC3XJPiKzB81AaOT8LvWurT5KXffsitk4dZay6EHP01ZXV4 eNdC//uMsaXKjsilU05mVbOEaVGPDPM= ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1710756032; a=rsa-sha256; cv=fail; b=n0goSqsS6fqlq7vIqApGE8ur9angn7+F68o4CSx3smma0SFhiQNKYAmihw+hz/MtxzsCri JYzGvRLH+VjpUYskAfQVB31jNlIhJUAx/XPJ0oMf2dsnsGv0fAB2SabNnyYT567n0uEnJr S3+I9N0ZwXdqqgFIFPipAZ8Sl+nMuLY= ARC-Authentication-Results: i=2; imf15.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=UT5ItYO6; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf15.hostedemail.com: domain of fengwei.yin@intel.com designates 192.198.163.17 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com; dmarc=pass (policy=none) header.from=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1710756032; x=1742292032; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=qGr8T2xIdoBkIQ/IeHZ0GjJc7L/jKKIf8ylN4FnQDos=; b=UT5ItYO6fcsup9xaxTe6pdVPoh/CpK8tG9g/MZU2Npz5u7DAcb/TpuMb fKsKmkt6cUlzjcupPZSW6fQUrsjvNoF+c4pncMmz8t9MhNs7cQXc12Jab V8bAQkprBkkrTyn2TkWF+O/dnZXNS6lWMaf8AuI4rTSPd99yt5/AuD/xX w+kdaJnq9stmaCkKN9eHdgwkcDf7vVCveGZyWEOHJO4/ehoE1KDpe9eqg 1Sq+cqIXputBm1y16zB6ScXptr2kjnzk0MkYGQ/c2z5PXu5a6B4HXU2Ay vWbdXsvG8RY1kh17m/NLE9mHTtUvQCzi8h1RwwTRFDqdFVDLfVzibSeiL g==; X-IronPort-AV: E=McAfee;i="6600,9927,11016"; a="5418502" X-IronPort-AV: E=Sophos;i="6.07,134,1708416000"; d="scan'208";a="5418502" Received: from orviesa008.jf.intel.com ([10.64.159.148]) by fmvoesa111.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Mar 2024 03:00:30 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,134,1708416000"; d="scan'208";a="14057740" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orviesa008.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 18 Mar 2024 03:00:30 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Mon, 18 Mar 2024 03:00:28 -0700 Received: from fmsmsx602.amr.corp.intel.com (10.18.126.82) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Mon, 18 Mar 2024 03:00:27 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Mon, 18 Mar 2024 03:00:27 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.169) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Mon, 18 Mar 2024 03:00:27 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BKDxW0MteC5KfGUqOTsrEQeLRxtfaitNg2fhGifVTJzYmUGxCPMANbVZ9Ic2wjgacyOsQLfp2KRWYmjME9rQSF99io9fgysJF0Oc0ushn+uIILgbehditR8/qGfZnYZFVsn3kUG7q31vAUxiE9THveDEQl96oN/VXM/r06aNJVxqn+bSmU8kFdGyl9xMos59CK0a47+mI1ZcqYwT9AiBys41Ka4goQlLBXFbJsmKVsInnynQ8S/xtJZryvtVR1UYDqaLwsSNkBY12mKxwHAoEdD7f6vNCEnhTfrbTdYNeGkh0GpbCvE3zu10NYy7OJTT8mqJJQzU7Ev3+583cIc5ew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=Jh6EqESY8gSM30oPwOmyOJCxWZycTaH4WNTchQVkriY=; b=foKV+jmx1DqJo/jvPQhNKk//EWB2mWBAS2H5bGg9fz95R/oqp1NNQ5zxpts5kr28Z6aq06fHpVvc3oTtB+f6OBGVWeBkuttqQuxiWbp88ZmuI1Lc0IdWBooFczv3jU9RH0by6dWLBBqw36H9RwGAZLMLgg18QTEpAnAsNb1Iyzce3TiVVpFu1HQa71+da33oqCs+FcO5vFocUAMz1ywGiBO9AxzPjbs+j6sU0b7HqLJyyGcDefaGLljMZkY36qX3kozFvgAi3P+bQL+0NMz4Vp1MBjY5+Mgb82ylkUbqnFnohENTBCV2eeRLHkdQHEdK9arr3TUH+CASh/EnE4mkkw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from CO1PR11MB4820.namprd11.prod.outlook.com (2603:10b6:303:6f::8) by MW3PR11MB4618.namprd11.prod.outlook.com (2603:10b6:303:5f::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.12; Mon, 18 Mar 2024 10:00:25 +0000 Received: from CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::65ce:9835:2c02:b61b]) by CO1PR11MB4820.namprd11.prod.outlook.com ([fe80::65ce:9835:2c02:b61b%7]) with mapi id 15.20.7386.016; Mon, 18 Mar 2024 10:00:25 +0000 Message-ID: Date: Mon, 18 Mar 2024 18:00:19 +0800 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v4 5/6] mm: vmscan: Avoid split during shrink_folio_list() To: "Huang, Ying" , Ryan Roberts CC: David Hildenbrand , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , Andrew Morton , Matthew Wilcox , Gao Xiang , Yu Zhao , Yang Shi , Michal Hocko , Kefeng Wang , Barry Song <21cnbao@gmail.com>, Chris Li References: <20240311150058.1122862-1-ryan.roberts@arm.com> <20240311150058.1122862-6-ryan.roberts@arm.com> <1db242d3-5ff1-4ef5-b20a-578a317fa859@arm.com> <5cc147fa-492e-46c3-963d-2f6e6680dce9@arm.com> <878r2gwahg.fsf@yhuang6-desk2.ccr.corp.intel.com> Content-Language: en-US From: "Yin, Fengwei" In-Reply-To: <878r2gwahg.fsf@yhuang6-desk2.ccr.corp.intel.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: TYCP286CA0002.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:26c::6) To CO1PR11MB4820.namprd11.prod.outlook.com (2603:10b6:303:6f::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CO1PR11MB4820:EE_|MW3PR11MB4618:EE_ X-MS-Office365-Filtering-Correlation-Id: 7e3694da-91db-47b4-bf17-08dc47323bbc X-LD-Processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: XIxfMRsh2QRN/dhHf/8pd+Ac8WSGq7ZdXk8Y8IN7kwTWmlvz3uzlqWfLBY1Vwah3QByZ1lsTtRWQTn1BJPHMbFkz8Y8p8y/IQ0R1TIqVU7zXvajlnhL/YX4Y578hY+GZZaFjIjzuFBpj4ExZquuGL0SY7PnxnziqpUEeGzrn+jsbtRTTCf8mIh33EeMZZ+oGLuDP0KS3IsgfF3yATGjICFPYlF/px2NMaCilDhEavrz5q2B8MD+kmXQaMahN/YSDOwP0RPqGeF8ZJHHKwGEGjYm9i/YQ4CmZr6SMgMBzMi7jupU087m3NJBE72SvH45jr5x68BOtZf0JKbGZLbZIMQum0DbRGeE9kieElVo5WFyd2Fs285sjHJ9vtmaJUg1hQTt4A+zpw8WDsBPcrULSsbDt5fWQo6DOJCtMYHl71jzfzQKiaL4HdYUWJT9mX8qzb1CW2bFmSpiw5CmXkf0swyc0l98KXOIEfqMRuyNiLYqJwAlsqj4z4SGwJlyRDJF3hxkMdQrS4IEh3Vw5pmQ0cRiTtLF9bx7PjiYDEMNoo7+lrn8bv2Y92m7uwq4fRY0H7CiW7dNkhVPNXiOqnDddkrjP6qx0MVBrsy2s+qJ7rAo= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4820.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(1800799015)(7416005)(366007)(376005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?QXhjUnloSS8xeGZWcHhjaDlsSlBGU0paYy9LZW9BUVB2aUFPOFpsRVV6ZU9E?= =?utf-8?B?ZU9ESjE0S2k0N05oZWhzODdQejFjVG5ZWXc2UFNOQjhzZG1QOHVBMjJaZURt?= =?utf-8?B?UW1nZ09Nay9Mck5vd1NVYmR2Q2dkdVVKWVRtc1VaTWptYTRXM0Zsa2pZUDlv?= =?utf-8?B?bEpDT3hMRmRFSG9JMHk0RTl0MWt3UG0vUWxJNG5Vd1UyYmtZMGVjamYyVEtH?= =?utf-8?B?SHc4YWFmN1NjR3hTTVpjOFBqS3hxTzdsb0s4ZnpNVE1tdnErVGVkMUxhTGEx?= =?utf-8?B?RmJ0YW9NNFFUaFQxV1Y1OGhqL1lCVTlxT1BaMEYwK29qd3ZFd25VMUQvalJp?= =?utf-8?B?L3ZucnZBb3dUUjFpSHFaZWtTWDg3dFRCVGJPVENNL1BiSENGMjZiWHhuSzNo?= =?utf-8?B?bVZZNFZ1a1pkbnRIVmZ0bGJjQzhUREVGSEFnN256MjdnNXp6VUkvdFVTV0Qx?= =?utf-8?B?U2daRE5idnJDcGlsVHNocTRZVU1xZy9kVldKQ05jTFNOY1RycmJueElsZVNy?= =?utf-8?B?RXNmQmhTc2tLOU8wVVNFSGE1dEVJSVZXSVFVUmJXSWlISFZwSGk5TTE2YXZ2?= =?utf-8?B?aEFPNFZBN0Y3cXFxVGhBek1UV1Z6M0I2bnpGTTdIOHdjbG9TOExxUjFMUGU4?= =?utf-8?B?NEhobWV5Wmx2UGVuWnRSSkJ2b1JnT3dzMVEwMmpyQ0o1QTR1anYrbGh0UmJQ?= =?utf-8?B?QWZ6dUNVNjJ2WjdJVGhPQUZXS2d4Rkh6djlyeUFBRHE3Y2l3NmZ1VGU2MGtE?= =?utf-8?B?eHVvcjFycExhSUNuc215ZExMYWRkN0ptd1BIUitFejZKaUJBSFI1UmhKNita?= =?utf-8?B?cEdBWHJCcy9kcHlROFJHZjY3NzdPWU5HK045MXV3RGlVck50WW9XYTFUZzM5?= =?utf-8?B?TnZrRzlsT3R2b0M3amFENXF4c1FDWUsraEpnazBDakdTTkszTkZKZ2NIQkFE?= =?utf-8?B?MWUxeERiVGNQVm84cXBJM2g2bHRLWml2d1dxV3BJMjZETTFVU0d5bnA1bURS?= =?utf-8?B?R1hWQzk0Q0lHd0lWTDFWb2VlNUwvdGpSSUZjblR4bFpRV25PMDRLQnFKeXBn?= =?utf-8?B?T0hrd2JvbW5ySmkzMkxqVzJCUDNzWmJJQjI4c01TUUE2S3Z2b1p0eGtrR28w?= =?utf-8?B?RjB2SmlrNVFkUW04b2tQSzNCbXdRSUgxUXIxWkJXTVZQVXExUS91bkNiRHVU?= =?utf-8?B?LytnWU1PV2kwL1hpZTYrd25wM1FnNEZOOW4vbGNtMG9SaVlwMjJyOXJHNHpw?= =?utf-8?B?aWs1b1NRZDREalFoRkpNeHFqeENPSlMzRWdxWFE1dXZPTmpxQ0M3eGpDZGM5?= =?utf-8?B?d2U0L0dtdXNTMm50VVZNRVh1ZWlYRmozb2NRL1g1L3RVaUFKMGJyUFdmVkFK?= =?utf-8?B?UnM0V3dKQlN6aUhBY2VCeGFwbU1EaVVYbHdKZW1WWHkrSFJvdXdhVks0ZFRa?= =?utf-8?B?bXlERWIyUytvclNXMURBMy95azFoTmZmQW1ZSTlEZFB6dEs1OTgxcW5yelJy?= =?utf-8?B?NGRCMUljTnVYL0ZvRUhFZGExSGF1bk9PdlpVTC8veHd1MGhkamFHRG5idkpD?= =?utf-8?B?SUJ6bG00T2RPMndTMWFzYSs1VDBJMkNrUU5mYlphSGJicFhGYjdKcWJ3SVZH?= =?utf-8?B?OFE0UVFjZ1VWWVBOOGFKVmVmM0RmZUEweGc5dGRYbVBiNlQ1K3pyK1dqMHdN?= =?utf-8?B?K1kwekFnN0lLM3VHdjAycGJ4MEZhRTllWk83WEtnRWc0TFhCTGs0Tkh2WXJH?= =?utf-8?B?MEhRNDNROUZDdnl5WXF5WEtWVkQ4YmpCLzNsR2FQYU9oakVJTTNtbWlZYUd1?= =?utf-8?B?VE90Ty8vZ05UVGpMM0RHdEdnVHdQVHI4Z3pnTS82TnZjR25kQ0UrajE5NjZs?= =?utf-8?B?MHFEVE1qZXozb1FpSE5lN0E5UTVFVVdBQ2tUWlltVTZwb2pFWjRYVUk3YTQy?= =?utf-8?B?ZmE3bm5hZzlvcGVrOVd2RVZCdHdZQmpwNldRbE01RmxySExiTDAzc0FrOXcw?= =?utf-8?B?cFVTYVBuUGpzUVBSOW5tbFFabUc1RWVTN2ExUFRQVUx6Y3lmZDNWd1VOVVlG?= =?utf-8?B?bXJiajZHd0hPcXJWdTVSM1Z6ajc3aHVGcmlSL1QvVzhlVXdjcG93WDJtbXRU?= =?utf-8?Q?xEUew2Li6ivanTmJUIz1GYfAS?= X-MS-Exchange-CrossTenant-Network-Message-Id: 7e3694da-91db-47b4-bf17-08dc47323bbc X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4820.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Mar 2024 10:00:25.7883 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ecT1A38vLe6pCAKPfiRiDjqsUDUnPGDJlp5qW8PN7gUdNyL2gjESNZmNcBmkEQyxc+MsbAkw3hDloRdnEuAsaQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR11MB4618 X-OriginatorOrg: intel.com X-Stat-Signature: 1yayy13irrysoq4bbwgfiicmrdw8yoca X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: DA4F6A0036 X-Rspam-User: X-HE-Tag: 1710756031-110443 X-HE-Meta: U2FsdGVkX19tuZz4CXzLazVOPugx4uutgNo+Z790CHcxaZHPhwvYRPnEzkh5GFUZ50wUqdMZWkjqf3Nb9eSvceOu7fnTObCho5FsahaSToCdAVuD/V9nQTEkog7xgi+mG2DqMcUDOBHqKXbuOR1oBrRe7FCW4EEGAKRnuqUDnC/RvYhc17buFmxzMc8E4HlN8MHA81z9cMQ3JhVRcqqO9dzzRuyJMm6uo6zdBmMB+DNKD0EbR6aUBQB/Ra/Lf93I0Xt5y7Umr3uQNUH8sZ5BNrvbsIrBgq/9fTcb/jzvhKdQimxxZ3V4FhlxnNz65Ki8MS2IWU5LXmC4Rajz8v8TgznNdiUVgzEqZ/EnkUM75pmg9iRlprQJnGBljTVivxkHgrd61r5AgFsjoOVlDyu5nhV7/Hb0dHjNeZtzDea4/SFOH2/HV3MkUstJp0T9VqhEBiSdvShtYlkg0CiWT858K/uuY3wWI420DBnW+Ba9EzEXIuHMu6VpuFo4Ti5MOTK69OqwrL1NlhbqRFOJW4jlVlAyZj4Robmb2dOHNUsUbR744Vr56zeFbXinlO7rjt1go8bibabDy4FgFTpODSHcpjfta5Muvnf9r0yFLgTVNDQ2YvlmJWkElel74A6Hd7kk0r+TfuMNQMx1iM9j06WIX1erzqJgR/yqXKMNsZA6l8AxsFkTbrLZZGduortCWgXt3NGW9Ug2wqv8/9VRJ1LJOsszH2q4U/Fa4CwWE1XWHfGMd7ch7dR+5TIxFXUYa9hnGZuLasKr7E/2IpIuqbSN+CuMrRXz0TzA/hAwu8nDZN8y4PaGQfZj3HXjbn1T0L3YCNlv5yDPvCEGD9l1KVODL2g5qc1Jat19FvtuJMj55y1tvqGXuawZNRZIo48Tufk/ApxL5Tng8tH4LdqYnsmduf0qgoHbf5ZRTXK7R2vjuo6lNlyUZj0b1Ewouw3892sp9uZZqBW3onKp/kxQEx4 T8X07k/Y 0p+J8Putl4opRNHleqf8iYletb8T2KSqopH2SYM6fpbL9gM3pIBUJkfcGjQDlXilnb5iRhxcVwZk86whVjyUgq3O87sbojTfqTIV3vLYq0my4aGEhyVWpW5M5W94hsTHIv41EBRqbBSt6mCt1aHuMgcspv+E1027eKL0duzCQ9xsulhY6xiiVw9QginytuvcMEjyncQK7z/SiOHlHYnCPkMknQN01jGPqwrIB/ooEVgL6mwkGUdwURojxCsUnqeT/vxIi9+pRChOmilfCAyGshWKtzx8KpkL2LpWnLzpihSTGPUjpDe5dyWRgz/RAD6PphPzM12tu6d2MWn+abqsoF0UoJyvDLwJLh0gsM/BDWwycPbkU3J6k+FHv5LOIOHRTG+QPqIL7GRuseHTxcHSzKLH3aZQhzRhQi78Ogsk4qJ663vU6ylm7O1lm3D6hAc+tt7BwTZHKkdIHgzYnfe7Qx1Mq01YRIhgzctE0I869xshmEFOiTF9jvPx+kLavq/Tyl4ly1aquAAHoo/Arn+8pxJsDqUEncwiglhSbqR80Qy1rDEjubXGH/4Mbf+zsftf/Dbps 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 3/18/2024 10:16 AM, Huang, Ying wrote: > Ryan Roberts writes: > >> Hi Yin Fengwei, >> >> On 15/03/2024 11:12, David Hildenbrand wrote: >>> On 15.03.24 11:49, Ryan Roberts wrote: >>>> On 15/03/2024 10:43, David Hildenbrand wrote: >>>>> On 11.03.24 16:00, Ryan Roberts wrote: >>>>>> Now that swap supports storing all mTHP sizes, avoid splitting large >>>>>> folios before swap-out. This benefits performance of the swap-out path >>>>>> by eliding split_folio_to_list(), which is expensive, and also sets us >>>>>> up for swapping in large folios in a future series. >>>>>> >>>>>> If the folio is partially mapped, we continue to split it since we want >>>>>> to avoid the extra IO overhead and storage of writing out pages >>>>>> uneccessarily. >>>>>> >>>>>> Signed-off-by: Ryan Roberts >>>>>> --- >>>>>>    mm/vmscan.c | 9 +++++---- >>>>>>    1 file changed, 5 insertions(+), 4 deletions(-) >>>>>> >>>>>> diff --git a/mm/vmscan.c b/mm/vmscan.c >>>>>> index cf7d4cf47f1a..0ebec99e04c6 100644 >>>>>> --- a/mm/vmscan.c >>>>>> +++ b/mm/vmscan.c >>>>>> @@ -1222,11 +1222,12 @@ static unsigned int shrink_folio_list(struct list_head >>>>>> *folio_list, >>>>>>                        if (!can_split_folio(folio, NULL)) >>>>>>                            goto activate_locked; >>>>>>                        /* >>>>>> -                     * Split folios without a PMD map right >>>>>> -                     * away. Chances are some or all of the >>>>>> -                     * tail pages can be freed without IO. >>>>>> +                     * Split partially mapped folios map >>>>>> +                     * right away. Chances are some or all >>>>>> +                     * of the tail pages can be freed >>>>>> +                     * without IO. >>>>>>                         */ >>>>>> -                    if (!folio_entire_mapcount(folio) && >>>>>> +                    if (!list_empty(&folio->_deferred_list) && >>>>>>                            split_folio_to_list(folio, >>>>>>                                    folio_list)) >>>>>>                            goto activate_locked; >>>>> >>>>> Not sure if we might have to annotate that with data_race(). >>>> >>>> I asked that exact question to Matthew in another context bt didn't get a >>>> response. There are examples of checking if the deferred list is empty with and >>>> without data_race() in the code base. But list_empty() is implemented like this: >>>> >>>> static inline int list_empty(const struct list_head *head) >>>> { >>>>     return READ_ONCE(head->next) == head; >>>> } >>>> >>>> So I assumed the READ_ONCE() makes everything safe without a lock? Perhaps not >>>> sufficient for KCSAN? I don't think READ_ONCE() can replace the lock. >>> >>> Yeah, there is only one use of data_race with that list. >>> >>> It was added in f3ebdf042df4 ("THP: avoid lock when check whether THP is in >>> deferred list"). >>> >>> Looks like that was added right in v1 of that change [1], so my best guess is >>> that it is not actually required. >>> >>> If not required, likely we should just cleanup the single user. >>> >>> [1] >>> https://lore.kernel.org/linux-mm/20230417075643.3287513-2-fengwei.yin@intel.com/ >> >> Do you have any recollection of why you added the data_race() markup? > > Per my understanding, this is used to mark that the code accesses > folio->_deferred_list without lock intentionally, while > folio->_deferred_list may be changed in parallel. IIUC, this is what > data_race() is used for. Or, my understanding is wrong? Yes. This is my understanding also. Regards Yin, Fengwei > > -- > Best Regards, > Huang, Ying