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 00FBCC0218B for ; Thu, 23 Jan 2025 04:20:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5CF606B0088; Wed, 22 Jan 2025 23:20:13 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 57F4C6B0089; Wed, 22 Jan 2025 23:20:13 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4463E6B008A; Wed, 22 Jan 2025 23:20:13 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 2797A6B0088 for ; Wed, 22 Jan 2025 23:20:13 -0500 (EST) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 8E9EF120B49 for ; Thu, 23 Jan 2025 04:20:12 +0000 (UTC) X-FDA: 83037414264.25.08BD33F Received: from shelob.surriel.com (shelob.surriel.com [96.67.55.147]) by imf09.hostedemail.com (Postfix) with ESMTP id E160A14000B for ; Thu, 23 Jan 2025 04:20:10 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=none; spf=pass (imf09.hostedemail.com: domain of riel@shelob.surriel.com designates 96.67.55.147 as permitted sender) smtp.mailfrom=riel@shelob.surriel.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1737606011; h=from:from:sender: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; bh=7r11heG8vhUJFR/tFe6AR9ElPsCtDsmMeeaPFjswcFI=; b=bPqf6u90tcLIxRz55WozEUFF0juCE+g6wOHbUKFbxtVjF5UTr66ljONNIQz0ZVJ3k4j5Ce MyOoK+M1j/uT+2nPAY9lfxCaIFpLxtA33o9j7d33cHQg3Kv5smA7WWr9rPomdreSS39mqw LZZN/7FzXGUTun6+weeP3JIInxYhVCk= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=none; spf=pass (imf09.hostedemail.com: domain of riel@shelob.surriel.com designates 96.67.55.147 as permitted sender) smtp.mailfrom=riel@shelob.surriel.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1737606011; a=rsa-sha256; cv=none; b=NpO+nKleHCFWy08ZT3cHBPzR1VV8/HYLxqWtAtAXfV0P5qD32gVsOWPG1YdJhaYX+s01SP N4oLVWsP15g1Wo0VWw1/I/M/uOMVGmMa06zKlAu/OuqI/afIoR/93sL0mxhpJDwJEUnCDO vwS9PyKLWAgIDnABSYS3Nl/uVgE1HsI= Received: from fangorn.home.surriel.com ([10.0.13.7]) by shelob.surriel.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.97.1) (envelope-from ) id 1taoee-000000005pw-0m5h; Wed, 22 Jan 2025 23:17:20 -0500 Message-ID: <135b6d6fad6083bfd11a9dc98fad69756b51c59d.camel@surriel.com> Subject: Re: [PATCH] mm: Optimize TLB flushes during page reclaim From: Rik van Riel To: Vinay Banakar , linux-mm@kvack.org, linux-kernel@vger.kernel.org Cc: akpm@linux-foundation.org, willy@infradead.org, mgorman@suse.de, Wei Xu , Greg Thelen Date: Wed, 22 Jan 2025 23:17:20 -0500 In-Reply-To: References: Autocrypt: addr=riel@surriel.com; prefer-encrypt=mutual; keydata=mQENBFIt3aUBCADCK0LicyCYyMa0E1lodCDUBf6G+6C5UXKG1jEYwQu49cc/gUBTTk33A eo2hjn4JinVaPF3zfZprnKMEGGv4dHvEOCPWiNhlz5RtqH3SKJllq2dpeMS9RqbMvDA36rlJIIo47 Z/nl6IA8MDhSqyqdnTY8z7LnQHqq16jAqwo7Ll9qALXz4yG1ZdSCmo80VPetBZZPw7WMjo+1hByv/ lvdFnLfiQ52tayuuC1r9x2qZ/SYWd2M4p/f5CLmvG9UcnkbYFsKWz8bwOBWKg1PQcaYHLx06sHGdY dIDaeVvkIfMFwAprSo5EFU+aes2VB2ZjugOTbkkW2aPSWTRsBhPHhV6dABEBAAG0HlJpayB2YW4gU mllbCA8cmllbEByZWRoYXQuY29tPokBHwQwAQIACQUCW5LcVgIdIAAKCRDOed6ShMTeg05SB/986o gEgdq4byrtaBQKFg5LWfd8e+h+QzLOg/T8mSS3dJzFXe5JBOfvYg7Bj47xXi9I5sM+I9Lu9+1XVb/ r2rGJrU1DwA09TnmyFtK76bgMF0sBEh1ECILYNQTEIemzNFwOWLZZlEhZFRJsZyX+mtEp/WQIygHV WjwuP69VJw+fPQvLOGn4j8W9QXuvhha7u1QJ7mYx4dLGHrZlHdwDsqpvWsW+3rsIqs1BBe5/Itz9o 6y9gLNtQzwmSDioV8KhF85VmYInslhv5tUtMEppfdTLyX4SUKh8ftNIVmH9mXyRCZclSoa6IMd635 Jq1Pj2/Lp64tOzSvN5Y9zaiCc5FucXtB9SaWsgdmFuIFJpZWwgPHJpZWxAc3VycmllbC5jb20+iQE +BBMBAgAoBQJSLd2lAhsjBQkSzAMABgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRDOed6ShMTe g4PpB/0ZivKYFt0LaB22ssWUrBoeNWCP1NY/lkq2QbPhR3agLB7ZXI97PF2z/5QD9Fuy/FD/jddPx KRTvFCtHcEzTOcFjBmf52uqgt3U40H9GM++0IM0yHusd9EzlaWsbp09vsAV2DwdqS69x9RPbvE/Ne fO5subhocH76okcF/aQiQ+oj2j6LJZGBJBVigOHg+4zyzdDgKM+jp0bvDI51KQ4XfxV593OhvkS3z 3FPx0CE7l62WhWrieHyBblqvkTYgJ6dq4bsYpqxxGJOkQ47WpEUx6onH+rImWmPJbSYGhwBzTo0Mm G1Nb1qGPG+mTrSmJjDRxrwf1zjmYqQreWVSFEt26tBpSaWsgdmFuIFJpZWwgPHJpZWxAZmIuY29tP okBPgQTAQIAKAUCW5LbiAIbIwUJEswDAAYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AACgkQznneko TE3oOUEQgAsrGxjTC1bGtZyuvyQPcXclap11Ogib6rQywGYu6/Mnkbd6hbyY3wpdyQii/cas2S44N cQj8HkGv91JLVE24/Wt0gITPCH3rLVJJDGQxprHTVDs1t1RAbsbp0XTksZPCNWDGYIBo2aHDwErhI omYQ0Xluo1WBtH/UmHgirHvclsou1Ks9jyTxiPyUKRfae7GNOFiX99+ZlB27P3t8CjtSO831Ij0Ip QrfooZ21YVlUKw0Wy6Ll8EyefyrEYSh8KTm8dQj4O7xxvdg865TLeLpho5PwDRF+/mR3qi8CdGbkE c4pYZQO8UDXUN4S+pe0aTeTqlYw8rRHWF9TnvtpcNzZw== Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.54.1 (3.54.1-1.fc41) MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: E160A14000B X-Stat-Signature: wtkjb9xmb7wc88x33yyhcxmqo91rpxk9 X-HE-Tag: 1737606010-106993 X-HE-Meta: U2FsdGVkX1/oNfyzxXm6XXNQDAzKvp+ObSBsjkacmaV2sSFuWnZB0j9jeQzgT2eaiUGyiiAX7JmJbl3+OEUdIkrdUF5ZFHt3OsCOWEAaAik35WoPzRdBLUUYwuY5SKEZDXBNwBvDlYZXeOMuQebHNT4PYZtHphoM1jsyccKqh0b7FfZgjX3gEojX1aO+3dAprm+FHrEv/XFY/+hQcd4m82KfwUE92WUQliUI2Y2HY8MSSwcJbBYqi3LlyrHDZJU8g5HKchYmS7+lKB1OFeU5Sx0RYZmfeQWapYjD5LIdNIaBTg5L8bksbePJuUKEOIS56EOFDDZAw4PEg/67KUWOOB4aqqleEVnXtY3SGRDocQroePc36a+F7MBeTJKOBGs845tT9Vz9HNMPX8qIVQtANl9xp1vF7pm2C5T7IvH2DuU9bnGhp1qBzQUaXF9CgmHuDvhqwoFW03WU/tW7zWCJFy5k3PyW2GzO0XKDYkaG4Qgj47Mw+tj//aoaweSZUjxRn6LBzx39qZ67Wq5O84fdIeilyu4Y9O7wpoV/zxJNh6as+uJmfEgaIc+N0I9U6gKDlWupz4zmgmE4mLZ9gszUog2d2x0/OpDhtpPz2N8sYIiCPy9sGBOVACe2wCFfpXqeVJtSJLvQAl1lB665uRTfU7P388dGXFTxwSJ9Nqs4nUlXzpziHMzLh7khNrb1AS2J41RVPk6/LVvP1lt77+ziUI8PI4e/+qDg5FjBvGZAnc7K7HZx1qD24PozKnpFG+7b0TS8t8AmH04kvDqrCu9TvfLk4Zr9+6+VeQ4+4wsRgXzeinubUdnKqYjXj+6UxYqs+aMoST5BBava3FGPEB9us9jLjADGbKSJ/evYSxgVJTUVXHlwhke2LPzUznGSn4B549TV03nUeAbY83Ebe7r/SeQNwXZR5DN9Ag+9aYd+SKKX6XHpB4JVIPAfODrU1bcUXRCpQW2uB1wHC4dlMWh R0x5zAaC qQ6jMJB7++BNwgIniG0QaB41WJt7AzyzW443BvvL5ejuZRCY4RLH8+iaYrRusoIvN0dmQFXgxHbaTRe5/RsqsN3JAbnPDgC+0IUTesg4m6WD9U7uQfga9asYZ9/MQKVFAGf9bMXkaIGkCs7e6qq5p1eVsnrjmgbYk+kT+8X1FhfNiRkJBC3E3PWBk6iguVtfUwt8NM4stbxKUzYc0zAB2V/FFxCW7xXKsF7e/wbtqwEStYc0R09hAuMHHEzQXsVG0GRqdPfCLsODUG+s= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000002, 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, 2025-01-20 at 16:47 -0600, Vinay Banakar wrote: >=20 > This patch instead optimizes the process by batching operations, > issuing one IPI per PMD instead of per page. This reduces interrupts > by a factor of 512 and enables batching page submissions to BIO. The > new approach: > 1. Collect dirty pages that need to be written back > 2. Issue a single TLB flush for all dirty pages in the batch > 3. Process the collected pages for writebacks (submit to BIO) >=20 I see how moving the arch_tlbbatch_flush to between unmapping the pages, and issuing the IO could reduce TLB flushing operations significantly. However, how does that lead to PMD level operations? I don't see any code in your patch that gathers things at the PMD level. The code simply operates on whatever folio size is on the list that is being passed to shrink_folio_list() Is the PMD level thing some MGLRU specific feature? >=20 > I'd appreciate your feedback on this approach, especially on the > correctness of batched BIO submissions. Looking forward to your > comments. >=20 Maybe the filesystem people have more comments on this aspect, but from a VM perspective I suspect that doing that batch flush in one spot, and then iterating over the pages should be fine. My main quibble is with the changelog, and the comment that refers to "PMD level" operations, when the code does not appear to be doing any PMD level coalescing. --=20 All Rights Reversed.