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 ED0D5C282EC for ; Thu, 13 Mar 2025 17:01:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5F68E280007; Thu, 13 Mar 2025 13:01:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5A405280001; Thu, 13 Mar 2025 13:01:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 41F09280007; Thu, 13 Mar 2025 13:01:30 -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 1DC81280001 for ; Thu, 13 Mar 2025 13:01:30 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 853A980363 for ; Thu, 13 Mar 2025 17:01:31 +0000 (UTC) X-FDA: 83217143982.03.2E781DF Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) by imf26.hostedemail.com (Postfix) with ESMTP id 5B02A140043 for ; Thu, 13 Mar 2025 17:01:27 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=DdbmxnrD; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf26.hostedemail.com: domain of ryncsn@gmail.com designates 209.85.214.174 as permitted sender) smtp.mailfrom=ryncsn@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741885288; a=rsa-sha256; cv=none; b=MxL+4HjKaGU+m32XUfOZg0d720DQSiM0rJ2AsG4WbznkE/tlrdCHf/MyBx9EU/uz7oMITi mBS+HxqAj9YDZdr98flUX3b9C3kDqZ8W8eCDRVeVyoyJ39a2VF7X9endphPSGQZOFnBB3m 1IOgEHl/trSOqYfRn5YMM82RrhjcOzU= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=DdbmxnrD; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf26.hostedemail.com: domain of ryncsn@gmail.com designates 209.85.214.174 as permitted sender) smtp.mailfrom=ryncsn@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741885288; h=from:from:sender:reply-to: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:dkim-signature; bh=CBQw+jqSF0UF2k99azwHt4J3S+nAnROIiT87OqHHQ/M=; b=UNGSxCudz+6evgr/+N6w3nUuAUt0u97q6yxdWkdGkZI0xTWAXTsKHi7RpjhWcmRAddIMa/ N9mu0GeqKnLRvetMi+RSf4IgqSnmzHo9AjXM4RSQkHG4NT4ZyJ1hitA0/ajSrGLPTUsd2q OL6qN2rxVzFD1T98A+t65Z6mVtZPRes= Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-219f8263ae0so23567165ad.0 for ; Thu, 13 Mar 2025 10:01:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1741885285; x=1742490085; darn=kvack.org; h=content-transfer-encoding:mime-version:reply-to:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to; bh=CBQw+jqSF0UF2k99azwHt4J3S+nAnROIiT87OqHHQ/M=; b=DdbmxnrDZOPgoJ7f3lbHW/2xZLsFZ/+/BIGhhBvfHMnrYLNNPqW6z8ulsqQMOmfmFt oz17JWp6nP9qbc+GK4+L9bsE0Qkc1mgzZC3Xxapj3CsEFV48Mj/JwRKfGhUNlN+cxzeS zBp13aDBVEPhnle9aYNcGqOJQ3DjDlpEzyVOSk8Y9D2k6q7NAM34qc7Far77j3uNWBVK WlntcDeoDzFNPNvXPGMHGGh24CqjQEEJqPph2qpw8Oq8k/HohMXBCvdLW8GOdeqBRGgp rdoGsYRVUOJVVNDhhN9YxCH06NsYYVx9GZ7ooIFDSCAVgtq9PlDS0bKxP9vSNxhoLbHD AWCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741885285; x=1742490085; h=content-transfer-encoding:mime-version:reply-to:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=CBQw+jqSF0UF2k99azwHt4J3S+nAnROIiT87OqHHQ/M=; b=hweld1Xf7U7s94MsFY5MbmMqZEgHw4H5FOBm1YF1aIeNOdwDW1qo0X8dVmoc2R9MxB oFYqs3qSqO1TohS7uUIvbVzueRuyS/b0qLorgoM63BrcuZjPem1yyZNee5kKlDu7uh96 WucURD95qGc5A+favcyhNf1fUrgAmpQYtpBiBWekxmVq/aX5l1paIrCd9jNjfEpuVyiZ L6SukexMambgRakXWW+3QOJxyVAyYdXRZl5QELM2VytRa8KP7iulJobiZJwGwhenkt0W fLRGoLBaMg4NrckVE8wQrq+eMwPvc3dI2Xh3ii9r90p8qorqYEOPRGVIBARwFpXJSJ53 8oRw== X-Gm-Message-State: AOJu0YysMFt2vOpVj3T+weqmCJJyeRAqWiQKIkL2E2b0UDhEaxG88Suq OU3Y9ZyHQtAWJH5byCmiBzTzeo+VPUsUMluNY/WDGg4gBK7xJFX90nPHe9/la0w= X-Gm-Gg: ASbGncvMpVvE7+UNTDblrAueMhZ4MUkkd3ypXOSuTeJBxWdfFeC8NqCEY08ZwwlCkAX D/ZEB6gjz3lqLqUxMo7VGFPw1qq6ocGQk0+JP1W6algryRzERygACOD7Mp0MThv/EpkSGnOF7YI MZqJQ6dQGo83UX+5M+YQJYOt7HpCs4Y2sinWxIcinOXz2TuKofpLrqPgni4EZNAsVJi8LGDss6W PKp+/x9fqbbHyAO9BsWOcoEO0suMp4VAjC3WLoPZkYemak9Wv5XqLAZY9jw8EutAbJLwJUXSIvV EQuOkoMm3nAbeEimtpnYe4jjGosykGd2t+YpRRJUBVm3FafbBcJENuJ4l3fsZVdtFVExebhOv8C P X-Google-Smtp-Source: AGHT+IGt3mQfnAVqFY2K3f10aCR6eUv3elLxAx9cwot21o1/wrOdRjDlzZvktfS1qoxjfYK8Kmbx8g== X-Received: by 2002:a05:6a00:88f:b0:736:ab48:5b0 with SMTP id d2e1a72fcca58-736eb7b2f97mr15996283b3a.2.1741885284743; Thu, 13 Mar 2025 10:01:24 -0700 (PDT) Received: from KASONG-MC4.tencent.com ([106.37.123.220]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7371167df0esm1613529b3a.93.2025.03.13.10.01.19 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 13 Mar 2025 10:01:24 -0700 (PDT) From: Kairui Song To: linux-mm@kvack.org Cc: Andrew Morton , Chris Li , Barry Song , Hugh Dickins , Yosry Ahmed , "Huang, Ying" , Baoquan He , Nhat Pham , Johannes Weiner , Baolin Wang , Kalesh Singh , Matthew Wilcox , linux-kernel@vger.kernel.org, Kairui Song Subject: [PATCH v3 2/7] mm, swap: drop the flag TTRS_DIRECT Date: Fri, 14 Mar 2025 00:59:30 +0800 Message-ID: <20250313165935.63303-3-ryncsn@gmail.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250313165935.63303-1-ryncsn@gmail.com> References: <20250313165935.63303-1-ryncsn@gmail.com> Reply-To: Kairui Song MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam07 X-Rspam-User: X-Stat-Signature: mcntfyibuu3xcpr4b4icchsypyhtywja X-Rspamd-Queue-Id: 5B02A140043 X-HE-Tag: 1741885287-956907 X-HE-Meta: U2FsdGVkX188jjoBm6yxtygmSGKwCUOsB5zjWhL7M0tbfhZ3hMvhHWRDZuR5bcEX+fsHQ/NTDU63PEn66imrcfmW8Js5hS79PAchn7DFfVc5vCnExKnrlG9baPmtOfXsPSLXCN6FAB4Haj0LhPHEoCR6F61X8izERCZWp9+PlVunyOLSFASd+PHulYe6GJu36pwqecqI+kPkrILgnprknXsN2schGM+m7gSDEepTEopx3DVPPW4CCI9P48TL1ThvKwmvarZcstrXukV4Rpi2xy4WbjWAwznYkNRH/bKicDnbliCzGU5pLa1oHe1Ju6JcSF6AuLLXG2di1hYOIq8e6JH727a51ho19n1mAlCtHbwDXtny+KrNiS4w4Z2ZMDI9tuekq0PieNTlF3PdrNSvOq/IFEbznmkf+6+KqnRy3a/MBG9uogopkPGY6j//tyMMI46DWOE0IzTaYEQKJTXqk1w5sysC4yIivz9XmZTTfRp5B/HcLtDKo/BcWc23NnLv/NMotxwmoLViD3QF2W9+tlg3btnbT+eeDjKsogGm7BHFoiUv3o946yg7dmKzdi2H98ijjlkT2lPd8gUza5GjDuyZKMlJlqpc3sb2O1DN28EZnkcDY7TuWXNT/VTsZPlh8Xh5NZoLP5NNfORT5O4MdHmZlBJPwOeWswnAhFRbIuqyexgB9nsC3Te0QLeotGJ7uMyqhYlVFzXiOvZPwBvtREVpNMqWz/p2rve8LwtFJXYWT8qw+PKI3XiXhk69NGHhHFhQTjECoiS99Txz8VI2Th5X0ldJtcvIkxSlBmoDjl8hURKWTeOafkF3O74mRUEe0cVkqeYMuTWRAyWG1Pgv8rC9X5xxAz1v8JPofUlm3ZfHr8AKBovU+P79tJKK8lpe4dUVRSsVcEw3NXwu0N3gAK32zhvuiM5pMlELbX+r8v0QuYgQN2lsilYfCclyoHRh4siWvsR3d66U4BFTvi3 sdG4kQTJ Jd2FrKyJWEHuYNct2A6k6YMbipWEJSgijeRFDZZUlE6/Sz3VJmcuQHd4MZWhLx+TQM0/lcBFrWS5zVwI94foVIRrWKSIA/cGfqt3N9lXm0l82QC3gVN+ITMkji7hSXwJpCZ5DtadjXA+TlQSugyhDrr0JTsCLJARl5tmeS6z9nW3dxU7Y9iyRcqpm8PxgCIyZOpRsrSQBr3Xbs3cQqotweNKl8GP8yCqf5EXP3vp2jTPwfJ68VpLsv9JdQze1bgqZxeXbpHmLA754x+uslhb/7bbdd4wITGNgWbSTLmPSsFEXB/2zGecX5bVCynUBolPfx6hTrQISyFUDXIXh9pWowh3UZmu8EtUFYUudqLiYNDdPU11D0OljuXbkEYBpTWWy/QH5rfLsy3k2ZtL0WrRtu4BvEJkjXYNyz4l/zCLfyy6hKlUeQKvd/EuqRgKFpYv6Y9iJGHrzAN/B/iF083ObzUxfpRlmnxf57h4GuPiLOW2BMJUTDG3PnUUidSQQvEbK+cIEA0UaIE5iulrN1lwKrn+3XS++Z8sLnuAn5As2bn9bzDN51JPmfalkkYGl4MyxXUT4/S30srg/XtIj7Omu3nVBiEfgzoWdhG4VWBFl32VSerOMcblVH0Xj5uPJKSgp03wqGCcUCzl4QyQ= 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: From: Kairui Song This flag exists temporarily to allow the allocator to bypass the slot cache during freeing, so reclaiming one slot will free the slot immediately. But now we have already removed slot cache usage on freeing, so this flag has no effect now. Signed-off-by: Kairui Song Reviewed-by: Baoquan He --- mm/swapfile.c | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/mm/swapfile.c b/mm/swapfile.c index 5618cd1c4b03..6f2de59c6355 100644 --- a/mm/swapfile.c +++ b/mm/swapfile.c @@ -158,8 +158,6 @@ static long swap_usage_in_pages(struct swap_info_struct *si) #define TTRS_UNMAPPED 0x2 /* Reclaim the swap entry if swap is getting full */ #define TTRS_FULL 0x4 -/* Reclaim directly, bypass the slot cache and don't touch device lock */ -#define TTRS_DIRECT 0x8 static bool swap_only_has_cache(struct swap_info_struct *si, unsigned long offset, int nr_pages) @@ -257,23 +255,8 @@ static int __try_to_reclaim_swap(struct swap_info_struct *si, if (!need_reclaim) goto out_unlock; - if (!(flags & TTRS_DIRECT)) { - /* Free through slot cache */ - delete_from_swap_cache(folio); - folio_set_dirty(folio); - ret = nr_pages; - goto out_unlock; - } - - xa_lock_irq(&address_space->i_pages); - __delete_from_swap_cache(folio, entry, NULL); - xa_unlock_irq(&address_space->i_pages); - folio_ref_sub(folio, nr_pages); + delete_from_swap_cache(folio); folio_set_dirty(folio); - - ci = lock_cluster(si, offset); - swap_entry_range_free(si, ci, entry, nr_pages); - unlock_cluster(ci); ret = nr_pages; out_unlock: folio_unlock(folio); @@ -697,7 +680,7 @@ static bool cluster_reclaim_range(struct swap_info_struct *si, offset++; break; case SWAP_HAS_CACHE: - nr_reclaim = __try_to_reclaim_swap(si, offset, TTRS_ANYWAY | TTRS_DIRECT); + nr_reclaim = __try_to_reclaim_swap(si, offset, TTRS_ANYWAY); if (nr_reclaim > 0) offset += nr_reclaim; else @@ -849,7 +832,7 @@ static void swap_reclaim_full_clusters(struct swap_info_struct *si, bool force) if (READ_ONCE(map[offset]) == SWAP_HAS_CACHE) { spin_unlock(&ci->lock); nr_reclaim = __try_to_reclaim_swap(si, offset, - TTRS_ANYWAY | TTRS_DIRECT); + TTRS_ANYWAY); spin_lock(&ci->lock); if (nr_reclaim) { offset += abs(nr_reclaim); -- 2.48.1