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 58B13C54E67 for ; Wed, 27 Mar 2024 22:31:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CB70D6B0092; Wed, 27 Mar 2024 18:31:21 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C67946B0095; Wed, 27 Mar 2024 18:31:21 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B2F416B0096; Wed, 27 Mar 2024 18:31:21 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 95B936B0092 for ; Wed, 27 Mar 2024 18:31:21 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 4E57F80731 for ; Wed, 27 Mar 2024 22:31:21 +0000 (UTC) X-FDA: 81944266362.20.1D72F0A Received: from mail-ej1-f44.google.com (mail-ej1-f44.google.com [209.85.218.44]) by imf14.hostedemail.com (Postfix) with ESMTP id 6BD6510000F for ; Wed, 27 Mar 2024 22:31:19 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=gmLRKXHO; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf14.hostedemail.com: domain of yosryahmed@google.com designates 209.85.218.44 as permitted sender) smtp.mailfrom=yosryahmed@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711578679; 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=fhI2O+U4pkuvafY9z8tvpoCUUisn8MZxFuwrvadh8N8=; b=eHvjAv/vo70XcxHcNbAYQe9+KRoKdm8fEGv0q6oBq1BkgjBTkBf/qZz4fm5uynYmqAoIbv KTweU1yRYHMOYs+Ude1ge6qen9azE3rn/x70po+MWHI2/oFGE+ygipjz3ELjkn+RAmkxWr mAxCuhr7w7X01xOO2WZKQ4+N5APm//Q= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=gmLRKXHO; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf14.hostedemail.com: domain of yosryahmed@google.com designates 209.85.218.44 as permitted sender) smtp.mailfrom=yosryahmed@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711578679; a=rsa-sha256; cv=none; b=QLCnf/ZQqBrxDPyxaClML8y+k+XHbW/PsanwxEP0Ewet3Y9gnsDBrnIG0wE4Dn7VdgTyXd ocsxYfnCKQ+HwSBkcwE/Q41ms43dEMMHwWKsje3Zv97TVwfvva9BXWtaQ1AkCmCy5sTmyj 8brmaRQ2D2A3VakD8n3kF8AYfStRqF0= Received: by mail-ej1-f44.google.com with SMTP id a640c23a62f3a-a466a27d30aso35571966b.1 for ; Wed, 27 Mar 2024 15:31:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1711578678; x=1712183478; 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=fhI2O+U4pkuvafY9z8tvpoCUUisn8MZxFuwrvadh8N8=; b=gmLRKXHO/P43YaUi+9EZQcvYDvrFup5/wS5VSejOlpP5vic8OxQelQ9gA7bnDl1sdY kHdzXpoRjHeO0gCXaawYLvLOKr1kzs2oQDOJoe8eucgfI3dk4XZDCHYK5QoeR5J+k+hL OLdhGVkgzKjcbD42sOmbFtScWvB94RHwYfS1P3LmqhIaj9KMGJNGj/Ifk3kLzOvLq3S+ IJmiMPBkWPGhiVmebyFPWjcG+OtWvxcV78qF7Tg+XFEaleMoT3YiNDwt5dLdRA3ANk9j GhOCntEr+GyHNMkekUYWCBcL52LIn9/Xg7WAp2fRiF4oWkGjT3eKWrwnLvDADNC9jRJ5 mmCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711578678; x=1712183478; 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=fhI2O+U4pkuvafY9z8tvpoCUUisn8MZxFuwrvadh8N8=; b=j90YJ3NWurUrbZucaP5cqqNwkksMpRuBDkocfZ2EGJWaAM44MJQY7c3H+WIwEFZUc5 CiGom/iKlmY/I2fN/YfLTRbhRu/4K8Pc2heXj4cWLP6qruFN9szQl3gB+QExhAz9evNs oflT8BC7H0SvF7U6pqKBJiammO4KyB1dn5YBzPC7l2wwKMl2Px3BmCbFIr7UjdfuTXiS 2wdrJFFaW0Bkv/2uGrl3vlp7ad557ntSOiunvU5j6INQ/NVTKKF5TwvV9R7M4Gkz7AUe 838cHo7zehhdCQzmDn5SuHqKVaScTRqENRfOrAy5pAtCmCgXxKD+ENgtyVAVVGDkKemS d5HA== X-Forwarded-Encrypted: i=1; AJvYcCWjo/Y3ZXo33QDoe//JbaqSRa6RehP7b5AWXtm5meW1BDIZjgfkr93NiUToUktKkpT8066MTSPbyhMdCWfZffk8J+4= X-Gm-Message-State: AOJu0YxUMVMud9l4oIXBVCzY3A/RJhYZIacFqA8TZuH/VJgFcOk+sNLp ced+Nu0ACd4we0VooCh07AgPSN/HhpYhclMOwHzyGOA12aoGqz5oWuPMHuDBK6oFFGabYFsqhxT iY72bq9TVUxUhla2QujgPQv0JLc8Mki5SWcqA X-Google-Smtp-Source: AGHT+IHYdtFZLLM6MLjyjI3PjSwj1qBukHQZ732bf6USNfcPr28xseB+kxpPdK6MA1RL+fL1mZ5N0HQYZ0otnJPmLLM= X-Received: by 2002:a17:906:39c1:b0:a4c:de71:54f7 with SMTP id i1-20020a17090639c100b00a4cde7154f7mr502577eje.27.1711578677866; Wed, 27 Mar 2024 15:31:17 -0700 (PDT) MIME-Version: 1.0 References: <20240325235018.2028408-1-yosryahmed@google.com> <20240325235018.2028408-4-yosryahmed@google.com> <88957a87-fe4c-448c-a22a-9052d65ab643@linux.dev> In-Reply-To: <88957a87-fe4c-448c-a22a-9052d65ab643@linux.dev> From: Yosry Ahmed Date: Wed, 27 Mar 2024 15:30:41 -0700 Message-ID: Subject: Re: [RFC PATCH 3/9] mm: zswap: refactor limit checking from zswap_store() To: Chengming Zhou Cc: Andrew Morton , Johannes Weiner , Nhat Pham , linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 6BD6510000F X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: irtz1ayzabyby65upmo7ep5oxitnnh6j X-HE-Tag: 1711578679-903016 X-HE-Meta: U2FsdGVkX1+u6Ws9URVRz6JW8U2m3cR8NGPyGO7BQvFUJiUx3u6lsleQbPNaJLDHpsmX67/D1V4JOytGCWDtbzI0Nqr6a6rrVElwVC6AyE7o9nC/u7RMfyHCOaJ9gMljjaHmrrh4WK0OiZWVwfWlXVv3Z0Kk72433Hbg85FfZit/egP/Pou8lLsE6jdssRDe4udrpnpP02Xn9vm2qPrdYKqsvM9+Za0iPRQK/xZMno4QYQGAN4+MsxLNMtXezdeG1Bve66dTgQ+K4ln6miwHY2lYCttPj2pvcqGjAqY/xjwnKpznfQMXHNRugPhU0bNNo07tI+JGy/lBoVBRhABxWJHL1mCjnEPCg+q9CHjOLcJ87j2h8JVifnI8dB8yE0UgF93Udm84u3V4mEEtnbBmnb1hl12dygwmjyuG+f5dqq2kYRQpfVYvxeKNtK0m8IxRXgTufDcQPrPu0wvEGDH5dc5/c3yL20Rj+vl7+8hIFKgp9Y2ClIj9sNLV43qAGQ3IQdNRVegIgFU/8+HeRhx/X6yR2qioQACa7MqRBoYGrmTHnME8BY0gdgkruH0Iaj0gP5lwA6HK20gfnJqQMuGVPwvemSinkGtTppQIaeEd4glYlKRCQyOSIHowEkvHdl5aflYLcGI4JdJtY6JX5JcAhARAYDDCzyUsaB6hdGhUvGV2YDSFdA58n+KksTC5ScEbxksLqz2L0owTgtTQqvEUolanE4grIdY+9HCSQwzbkJPYT4eJOTgFWd6m6YiQnysTD5AVrrQn/5QMfFf9yyyHP9Yk4VNSs9abMXqS9vwi+v11jSYVfpErG8y3+t5kP285wH6IfoTIdn1gvIw1ITlr6gZkmlCSgEFuqJiwDo2M4EyyCclH1pp1F/OdzgtQdNz9YaXXdJinIUinKG8anDUx6sFchzQ4OV8x/oz1XfVMKXTeN+A+DD3XmBIAgtPp75BXgOdGm15NN3Mx0LM81Yo 0rOUcULp a1BOGyyEFZMB0zw4YK47bIHyR6/67UwYQYtoFRhYbNTE+uZQtgyYBzL3f6jC0vA39JI48uohLnl+oXVQXzaV9rHl5insJdtasUoPwGzx+xKWNLeqb9c5GP3YDatWtWx0mwLuJtAu31aePVJ/rCRVcFrLV/R9PlTYV+SKQwMYoPtKvkOy8O6oqJNK6cSvAhSWsdnwMHGwpqM8A25lVuVq6fSUjOyN77SMg6CydhI4/CrkecwAQ8MrER51JCj4WbUcc6eM0Av9ckzJu0x56vj2hma8oeCAHZWWPdtfB 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 Tue, Mar 26, 2024 at 7:42=E2=80=AFPM Chengming Zhou wrote: > > On 2024/3/26 07:50, Yosry Ahmed wrote: > > Refactor limit and acceptance threshold checking outside of > > zswap_store(). This code will be moved around in a following patch, so > > it would be cleaner to move a function call around. > > > > Signed-off-by: Yosry Ahmed > > --- > > mm/zswap.c | 32 ++++++++++++++++---------------- > > 1 file changed, 16 insertions(+), 16 deletions(-) > > > > diff --git a/mm/zswap.c b/mm/zswap.c > > index ff1975afb7e3d..6b890c8590ef7 100644 > > --- a/mm/zswap.c > > +++ b/mm/zswap.c > > @@ -1415,6 +1415,21 @@ static void zswap_fill_page(void *ptr, unsigned = long value) > > memset_l(page, value, PAGE_SIZE / sizeof(unsigned long)); > > } > > > > +static bool zswap_check_limit(void) > > +{ > > + unsigned long cur_pages =3D zswap_total_pages(); > > + unsigned long thr =3D zswap_accept_thr_pages(); > > + unsigned long max_pages =3D zswap_max_pages(); > > + > > + if (cur_pages >=3D max_pages) { > > + zswap_pool_limit_hit++; > > + zswap_pool_reached_full =3D true; > > + } else if (zswap_pool_reached_full && cur_pages <=3D thr) { > > + zswap_pool_reached_full =3D false; > > + } > > + return !zswap_pool_reached_full; > > nit: Then we use "!zswap_check_limit()" below, double negation looks comp= lex, > should we change to zswap_should_reject() or something? Good point. Will rename it in the next version. Thanks!