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 76067C28B2E for ; Thu, 13 Mar 2025 12:09:41 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0ABBA28000A; Thu, 13 Mar 2025 08:09:35 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B5C26280004; Thu, 13 Mar 2025 08:09:34 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7B34C280009; Thu, 13 Mar 2025 08:09:34 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 38EA7280006 for ; Thu, 13 Mar 2025 08:09:34 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 48BD6121FCD for ; Thu, 13 Mar 2025 12:09:34 +0000 (UTC) X-FDA: 83216408268.01.A0081F1 Received: from dggsgout12.his.huawei.com (dggsgout12.his.huawei.com [45.249.212.56]) by imf18.hostedemail.com (Postfix) with ESMTP id 0CAFB1C0023 for ; Thu, 13 Mar 2025 12:09:30 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf18.hostedemail.com: domain of shikemeng@huaweicloud.com designates 45.249.212.56 as permitted sender) smtp.mailfrom=shikemeng@huaweicloud.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741867772; a=rsa-sha256; cv=none; b=LY2dEmmuRbyTOEPeMU5a7UdeF79FOTJINbaKOF6yJPpVeGF+BvUkL8i+/iUNvns624HzKS F6m4dKDJzUSisgg2LTixvjp7phC7WMxlvNCOK22h3G+jZMLEeGuSoF6XOHy5Cw7kDItYfW 1r9ByWUpKrgcG6e+o5elVDNnRMBVXsE= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf18.hostedemail.com: domain of shikemeng@huaweicloud.com designates 45.249.212.56 as permitted sender) smtp.mailfrom=shikemeng@huaweicloud.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741867772; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=8UW2oPGILsVY3hxInLRYz3AZXxLhkJ0g3HKUaw4jVTg=; b=Eg/GySkE48/qTfip45dDpbSP5snUT5QHyCdr953DbRyM9b81nwxQw0GTyutF7wIc+5cGyr OfPG7wv5mqQWJSiEQTQ/PbHXGHpem5Wsd511UZDF9FJ9oNxLwwjOcRHu2TejTBCU8KCKNy xZvwjy7OIrdlV+1Be4ugMWtkaMqYj+I= Received: from mail.maildlp.com (unknown [172.19.163.235]) by dggsgout12.his.huawei.com (SkyGuard) with ESMTP id 4ZD5rc0YtTz4f3js3 for ; Thu, 13 Mar 2025 20:09:04 +0800 (CST) Received: from mail02.huawei.com (unknown [10.116.40.75]) by mail.maildlp.com (Postfix) with ESMTP id 7FB6C1A06DC for ; Thu, 13 Mar 2025 20:09:26 +0800 (CST) Received: from huaweicloud.com (unknown [10.175.101.6]) by APP2 (Coremail) with SMTP id Syh0CgCnsGPyytJnTaZeGQ--.9643S11; Thu, 13 Mar 2025 20:09:26 +0800 (CST) From: Kemeng Shi To: akpm@linux-foundation.org Cc: kasong@tencent.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH 9/9] mm: swap: replace cluster_swap_free_nr() with swap_entries_put_[map/cache]() Date: Fri, 14 Mar 2025 05:05:15 +0800 Message-Id: <20250313210515.9920-10-shikemeng@huaweicloud.com> X-Mailer: git-send-email 2.30.0 In-Reply-To: <20250313210515.9920-1-shikemeng@huaweicloud.com> References: <20250313210515.9920-1-shikemeng@huaweicloud.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:Syh0CgCnsGPyytJnTaZeGQ--.9643S11 X-Coremail-Antispam: 1UD129KBjvJXoW7KFy7Wr47tryrJryDJr1rtFb_yoW8Aw18pF 93Wr1DKr4fJr1fKw4Ivw4DZrWav3ykGw1UJF9rWr1Fy3Z7tryIgF1vkrWxu345Gr95urZI kanrt3srWrs8tr7anT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUB2b4IE77IF4wAFF20E14v26rWj6s0DM7CY07I20VC2zVCF04k2 6cxKx2IYs7xG6rWj6s0DM7CIcVAFz4kK6r1j6r18M280x2IEY4vEnII2IxkI6r1a6r45M2 8IrcIa0xkI8VA2jI8067AKxVWUAVCq3wA2048vs2IY020Ec7CjxVAFwI0_Xr0E3s1l8cAv FVAK0II2c7xJM28CjxkF64kEwVA0rcxSw2x7M28EF7xvwVC0I7IYx2IY67AKxVW7JVWDJw A2z4x0Y4vE2Ix0cI8IcVCY1x0267AKxVW8Jr0_Cr1UM28EF7xvwVC2z280aVAFwI0_GcCE 3s1l84ACjcxK6I8E87Iv6xkF7I0E14v26rxl6s0DM2AIxVAIcxkEcVAq07x20xvEncxIr2 1l5I8CrVACY4xI64kE6c02F40Ex7xfMcIj6xIIjxv20xvE14v26r1j6r18McIj6I8E87Iv 67AKxVWUJVW8JwAm72CE4IkC6x0Yz7v_Jr0_Gr1lF7xvr2IYc2Ij64vIr41l42xK82IYc2 Ij64vIr41l4I8I3I0E4IkC6x0Yz7v_Jr0_Gr1lx2IqxVAqx4xG67AKxVWUJVWUGwC20s02 6x8GjcxK67AKxVWUGVWUWwC2zVAF1VAY17CE14v26r126r1DMIIYrxkI7VAKI48JMIIF0x vE2Ix0cI8IcVAFwI0_JFI_Gr1lIxAIcVC0I7IYx2IY6xkF7I0E14v26r4j6F4UMIIF0xvE 42xK8VAvwI8IcIk0rVWUJVWUCwCI42IY6I8E87Iv67AKxVWUJVW8JwCI42IY6I8E87Iv6x kF7I0E14v26r4j6r4UJbIYCTnIWIevJa73UjIFyTuYvjxUIL05UUUUU X-CM-SenderInfo: 5vklyvpphqwq5kxd4v5lfo033gof0z/ X-Stat-Signature: wrbtsaqbcphmw4d5oo9f7rtew1juf4b9 X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 0CAFB1C0023 X-Rspam-User: X-HE-Tag: 1741867770-413588 X-HE-Meta: U2FsdGVkX1+qpPnCAqlOzWKVbSK6HIDzTk+fwSC2DoUdfWEZ+t1qRKUA/qRo3f11ZmbCxRcK7ZCtgUZQt9YahGQvwOgtxh7J4S+uTgoN4sM40cNcmPtM59KiUWtogyEAMvJ+i4NZU+pBv5oklzq0gQCbvV8+WWq3IVE1qrZCrn6+4vcK68sFs1xjGYtleZpNp2TiZpZpjDVduaUVSDj6R2qd2skD/sX3qhkfY75l0JsSwY/wDV40uvdUoLB2GjGTLRjxo3NbCxjyBcdBGeFQakhqTuRF/OS2xKLyqrJUoM/nP3mC6WYAg0TfpKwZszJYurONFbaHscxZsXP/TC+vFpHlrGs7dlgSLBnZL8n4NSxKNG6h87BaLZxxoClsttnBAh99/CcalfNkorw3Q958vbhRZVpkWgGdzKcmxHn0oFICiheriB9hLaJJBmBjvd6fPwisAQgSxhx/ifpZbtTLwiygJ5GR+Op+Dg3DhPl/2wJOHzL6fRduFcwmcLLvUdq3iAG6JEalgVINJe3sRPltB6Kvgb3UoCZzG9bAxiLLbIJMcWHtwlH4vZtQc+SqUvAr3/PovU4BPhY7NuAHE1veDRNJIo97g8d6muFzVB/VYCHKAXsuX7m4mLR/wGgiKBEpmoav2DtaJ5mpwyqHgxBjBp9WPvQdCmNsYUGvrkwzWgbYilzTkNkbwB8WRTdmQOkfG+X6uLTqTA9O6lpYOxZo7CyEBV11DD/BXuEx6ZKLHA3FdE7gxNHcrvKI2R25jC3aOgcEJsYUmzu2XycUj8Pw0km6ktGJk6knWSNSUUsBf0OLoSqp+bXtVZrK7bqhrYFBYSUyKXbb15dE1uqjbOUf5zrg9Sd8rRO43cOotKA2eCfvjRt87USghFt/nR/RpSHDp1U1TKHzokciwbZhm7OMIuhmfuo+jpo4o4lDDKlaRhv5LUIRpfgbb+CsBszScA9gJ2n/fDQkgRkmBCTdkYO JbOTo5Di +zQ7qquU1ZwYif0mG5RxB0qtsxVZm9mQLeFFO3AkOwRK2A9zQ+3f2idOcW/5cUfzt914AkFACir1AShVyNTk9NmHxIqiH75Qk7fdruZuD+jlfRU9U7kgCFh5BNFu/Y5rdtVSTufTDFgyAGDUwuGIQJJ4FhnooAUzH7DZrPKCI8D+6qsjFD8gAAneBhy1fHlkifikXw1vil18xldpIfxSbTDnNgw== 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: Replace cluster_swap_free_nr() with swap_entries_put_[map/cache]() to remove repeat code and leverage batch-remove for entries with last flag. Signed-off-by: Kemeng Shi --- mm/swapfile.c | 21 ++------------------- 1 file changed, 2 insertions(+), 19 deletions(-) diff --git a/mm/swapfile.c b/mm/swapfile.c index 343b34eb2a81..c27cf09d84a6 100644 --- a/mm/swapfile.c +++ b/mm/swapfile.c @@ -1570,21 +1570,6 @@ static void swap_entries_free(struct swap_info_struct *si, __swap_entries_free(si, ci, entry, nr_pages); } -static void cluster_swap_free_nr(struct swap_info_struct *si, - unsigned long offset, int nr_pages, - unsigned char usage) -{ - struct swap_cluster_info *ci; - unsigned long end = offset + nr_pages; - - ci = lock_cluster(si, offset); - do { - swap_entry_put_locked(si, ci, swp_entry(si->type, offset), - usage); - } while (++offset < end); - unlock_cluster(ci); -} - /* * Caller has made sure that the swap device corresponding to entry * is still around or has not been recycled. @@ -1601,7 +1586,7 @@ void swap_free_nr(swp_entry_t entry, int nr_pages) while (nr_pages) { nr = min_t(int, nr_pages, SWAPFILE_CLUSTER - offset % SWAPFILE_CLUSTER); - cluster_swap_free_nr(sis, offset, nr, 1); + swap_entries_put_map(sis, swp_entry(sis->type, offset), nr); offset += nr; nr_pages -= nr; } @@ -3632,9 +3617,7 @@ int swapcache_prepare(swp_entry_t entry, int nr) void swapcache_clear(struct swap_info_struct *si, swp_entry_t entry, int nr) { - unsigned long offset = swp_offset(entry); - - cluster_swap_free_nr(si, offset, nr, SWAP_HAS_CACHE); + swap_entries_put_cache(si, entry, nr); } struct swap_info_struct *swp_swap_info(swp_entry_t entry) -- 2.30.0