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 7CF9DC5478C for ; Mon, 26 Feb 2024 19:44:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C4D726B0115; Mon, 26 Feb 2024 14:44:58 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B88686B0113; Mon, 26 Feb 2024 14:44:58 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A026D6B010B; Mon, 26 Feb 2024 14:44:58 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 824796B00FE for ; Mon, 26 Feb 2024 14:44:58 -0500 (EST) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 50B9C4094F for ; Mon, 26 Feb 2024 19:44:58 +0000 (UTC) X-FDA: 81834983076.06.8C659C7 Received: from mail-yb1-f177.google.com (mail-yb1-f177.google.com [209.85.219.177]) by imf02.hostedemail.com (Postfix) with ESMTP id 73E2F8001B for ; Mon, 26 Feb 2024 19:44:56 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=OcQuOajg; spf=pass (imf02.hostedemail.com: domain of ppbuk5246@gmail.com designates 209.85.219.177 as permitted sender) smtp.mailfrom=ppbuk5246@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1708976696; 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=+IjMAUifD0K8aIclGse5kDD6h96+1W53kM3fR1+WoI4=; b=gx3FAENjhkBhnoP+LD1RN6M6jWwOrPZWRfh1+cHP9t8zQUYj+y2tNFTGFZ7Ukh66//2COw M9kGZmdpmtLdGtr77eszJ+wELrS/irOfmBEtUADNA/Pe7m9hDYRgEzjFgrh0sGSsjSt2Au 5CHyYszSVIChDaWhGTwUUBI0YivNUJI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1708976696; a=rsa-sha256; cv=none; b=UYPqNJFZyN9uIN6jXddfIJc8h/9X1le7W63pliVj1BO2Tfm2VjjGWWq11HxdCaJLR3UJvF 7FYXQsHe2wZPg1Ls0IXYxpGvzCiqwzXBKyLtj3Xhj/XkgtgybTl/pCQ4d9cYek7OCpP9p4 Nw0qTlnXfmjgrot6QX/DSgm9WcHYb7s= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=OcQuOajg; spf=pass (imf02.hostedemail.com: domain of ppbuk5246@gmail.com designates 209.85.219.177 as permitted sender) smtp.mailfrom=ppbuk5246@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-yb1-f177.google.com with SMTP id 3f1490d57ef6-dcbc00f6c04so3523888276.3 for ; Mon, 26 Feb 2024 11:44:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1708976695; x=1709581495; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=+IjMAUifD0K8aIclGse5kDD6h96+1W53kM3fR1+WoI4=; b=OcQuOajg6TLw2jVD9h1LvTCLFowInD8TlRPHDRoBaNUH+fiMhLYQmdFJ2yqj47pKRQ dkYAUkmrWXAMwCaHWCdVtjhXzsHeVAa4gRkDSRuCYfaR5f18UXaFBg3n99Zh5ns46hYm 3M0Ch5YmSXJDWZfHxhHjX/9pzJURxnXsJDPptJC0Qlh+It4DB8hzpGEz1oeB+ihq04v3 Iu5AEkVH8OmDylfI/8ftawhXeFL7vPJUSlKpi6ASGeHAdvmDK2ktUqFfYzoQD2kKB/Zn Ow9Xqj58okviT5ypWP4nAUKenO7vZdn9PvDN+vNRH+/jPZpOe9DscsqCe7RPRPFO8xCA zhZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1708976695; x=1709581495; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+IjMAUifD0K8aIclGse5kDD6h96+1W53kM3fR1+WoI4=; b=vewBiYlX99KiROj1C/+hKurLgHjIrXReEFUTmzr/6rgGDDHrIhWDbgRiKzZdTzerAy pPVU/Kub0tBC3WQ2eXu1EXA4Ca+VeWR1QatKjEabNQcEYYh071jxLJM9dWWGO9qQrJ/h G9Wkj8aFciBSuW4ZfvJeN8FoIhW/uNYhcxim/sMauRUaAjAj0o4E6npZvuOm2j2jS1fP 2vWZHOkd6mo/KEGQknGkIvnwegltsxLa7gYCpoOrwntOVW7jQPKePZSGPjE906jl2Fyd PHEQXJiQM6nGhGzxmteTEE+8lg2BNedUusDWwn2vCeIB60aRDFfxnCP15+yPfoly/AMW xzVg== X-Gm-Message-State: AOJu0YxlIvtMq0uNkYKkHrYDAj/3y4ZESd/TAkyM7+8BMdEB1wOdfl+x CIlu974uVDURxxZ5XXQNU//f58F67TPPKFQ22lgxqXkgEQG38BbSxZeLfK2GIUL14tTkcgRbmhl FJRjMagogn6afCLEioOdI277tsFM= X-Google-Smtp-Source: AGHT+IHylF+ijSiigZhn1xaCZmadJQwYIVFkZaPIc42DFOKEpXgNS2JWVjqE4kipuCfMcPHpGREAv7pI++pZxQF/Yns= X-Received: by 2002:a25:6b0d:0:b0:dc6:bbbd:d4f4 with SMTP id g13-20020a256b0d000000b00dc6bbbdd4f4mr174043ybc.33.1708976695465; Mon, 26 Feb 2024 11:44:55 -0800 (PST) MIME-Version: 1.0 References: <20240126152556.58791-1-ppbuk5246@gmail.com> In-Reply-To: <20240126152556.58791-1-ppbuk5246@gmail.com> From: Yun Levi Date: Mon, 26 Feb 2024 19:44:44 +0000 Message-ID: Subject: Re: [PATCH] kswapd: Replace try_to_freeze to kthread_freezable_should_stop. To: akpm@linux-foundation.org Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: 4cumqjn17j9pumrhg7hqdtxzm3iohmkt X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 73E2F8001B X-Rspam-User: X-HE-Tag: 1708976696-318800 X-HE-Meta: U2FsdGVkX1+PwsODmfLgDyZ2MZ7t7i3SlI8ks11iDL3SdCFh0WEAP/Nhpj5WJOKlCNpK29r+xl1BqAgi0qASYjGedR3V99oXjXOz0cZKNEf0AAywAangjG8lL/mZ1Kx+PXJfgRYEk7S/fBFcfTQ7ktYhOyXh6O8mEAjl2lVzyjQs8Gp6NrpvWrv1LWp7NyOQFwcfxDflBNGP5fZxBRXg2V9zNcoqFSeP0ro+Ui/a465UuN52lR8tiAIRr2eXhZZtgcFaJZ2OROfV/ZjPz1mJe8MuxnR8bvqOjnEw3wYdY4Nc8awZCoQYK0elEG3tyB3y6ZxaEz9gityEILV6VKjDdrv3T1JukoIhv+n4REsViCspC0EVcBmc20a1WuFTalwo2hoAU01qhPfCj8zU1ZXVG1Af6cmoPWFI3Bergwip1/P2Jo+DYvuty74enOHc28ohS6bb9DRPl+l49Z33iDvwhtERxX7HJx1vzh+NbutStj2nh15ABbFvs1dmtOFtmixDmuQ/I470a1X5jfKQtiVQ7rEYYsw2+yljVKCS4J6Z3hwspM9ww0f1JJk8IBbwzL0XTiXv0G8i48jWO+PB0r8JYpnm4rwFz7W4ZNnRuLmDF1YrRuyNZfMq7zxWV2hvqDiDTSo/0Fc7h5Czf3AE9LVFguOBV38tTFwBfvChYn9rNTxs9cQHHG4ux+pdG+EiDcP2YIbaJYRlDrk6L0yrxnZOiP6t0WzEnx2UaiBFvDIolEY7MXnmG4zlaZvCuP+XE9WlXoyR/IN350HQ/f/5OH8djtth9S3zRSndVZ09HRkggSebgFttIzou7lFN1hXf53Bwedgq98H5+oWLvundIfjwqbMFFI8CBMih41vVsTCKxYnp5IZrfSb6LHj/+nPKdN99XrYWKrBZ8m/sBr0j4HK3PCTz99sBnuYqS1fssn52mfy415nTiOFMATjVuONkexhkKCcsvjal4evbZXzJPMi EpxWlbQz cPSjKnbqPZvf7aqMG2vyygGdpAFDaq53UPJwMqlnMVRgjumzvX3PVqBq3ZXmtCd53BvsIXvzJgAnnaRo= X-Bogosity: Ham, tests=bogofilter, spamicity=0.291607, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Gentle ping. On Fri, Jan 26, 2024 at 3:26=E2=80=AFPM Levi Yun wrot= e: > > Instead of using try_to_freeze, use kthread_freezable_should_stop in > kswapd. > By this, we can avoid unnecessary freezing when kswapd should stop. > > Signed-off-by: Levi Yun > --- > mm/vmscan.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/mm/vmscan.c b/mm/vmscan.c > index 4f9c854ce6cc..1f139830b26f 100644 > --- a/mm/vmscan.c > +++ b/mm/vmscan.c > @@ -6796,6 +6796,7 @@ static int balance_pgdat(pg_data_t *pgdat, int orde= r, int highest_zoneidx) > bool raise_priority =3D true; > bool balanced; > bool ret; > + bool was_frozen; > > sc.reclaim_idx =3D highest_zoneidx; > > @@ -6894,9 +6895,9 @@ static int balance_pgdat(pg_data_t *pgdat, int orde= r, int highest_zoneidx) > > /* Check if kswapd should be suspending */ > __fs_reclaim_release(_THIS_IP_); > - ret =3D try_to_freeze(); > + ret =3D kthread_freezable_should_stop(&was_frozen); > __fs_reclaim_acquire(_THIS_IP_); > - if (ret || kthread_should_stop()) > + if (was_frozen || ret) > break; > > /* > @@ -7102,7 +7103,7 @@ static int kswapd(void *p) > WRITE_ONCE(pgdat->kswapd_highest_zoneidx, MAX_NR_ZONES); > atomic_set(&pgdat->nr_writeback_throttled, 0); > for ( ; ; ) { > - bool ret; > + bool was_frozen; > > alloc_order =3D reclaim_order =3D READ_ONCE(pgdat->kswapd= _order); > highest_zoneidx =3D kswapd_highest_zoneidx(pgdat, > @@ -7119,15 +7120,14 @@ static int kswapd(void *p) > WRITE_ONCE(pgdat->kswapd_order, 0); > WRITE_ONCE(pgdat->kswapd_highest_zoneidx, MAX_NR_ZONES); > > - ret =3D try_to_freeze(); > - if (kthread_should_stop()) > + if (kthread_freezable_should_stop(&was_frozen)) > break; > > /* > * We can speed up thawing tasks if we don't call balance= _pgdat > * after returning from the refrigerator > */ > - if (ret) > + if (was_frozen) > continue; > > /* > -- > 2.39.2