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 D00B6C3DA4A for ; Fri, 2 Aug 2024 22:52:07 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CBFD56B007B; Fri, 2 Aug 2024 18:52:06 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C70C76B0083; Fri, 2 Aug 2024 18:52:06 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B36F26B0085; Fri, 2 Aug 2024 18:52:06 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 964866B007B for ; Fri, 2 Aug 2024 18:52:06 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 1088C1A0FCF for ; Fri, 2 Aug 2024 22:52:06 +0000 (UTC) X-FDA: 82408805052.10.47C8C67 Received: from mail-qv1-f54.google.com (mail-qv1-f54.google.com [209.85.219.54]) by imf06.hostedemail.com (Postfix) with ESMTP id 4B68918001E for ; Fri, 2 Aug 2024 22:52:04 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=fPn4yVfW; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf06.hostedemail.com: domain of nphamcs@gmail.com designates 209.85.219.54 as permitted sender) smtp.mailfrom=nphamcs@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1722639118; a=rsa-sha256; cv=none; b=zZB9rwsW+1OvijtQ6wdIgiSdUXoSd9mq8xRhVr28qdsO7yLyhxJCNWBdKZ9bASXRFVaHzu twM7WkJ6mg1wv6y5kgaatw44WwWN5sICxJGulqDSf40jaL7K2g2HJmgxqCuleAtniaeP2g Q3QVb0X3un1V9aCWKmIQlsgnooQ1Ofc= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=fPn4yVfW; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf06.hostedemail.com: domain of nphamcs@gmail.com designates 209.85.219.54 as permitted sender) smtp.mailfrom=nphamcs@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1722639118; 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=2NBdn5pSEVPLl8whCwb4HIQAFvHGTvWYzEKGS2RhF/M=; b=fclCmEZ/BjZGZ5HeTjZfzBjch+sQ+nfDdOaKA/eA042oFfnXHwDWe3W+UqadWF64N0+xoy 97VK5ZC5PDU75L8uPIhSil9XziyeVTn+aqsx1gbn4z/BGpdXiRvAVjMlnFqUS4YOwV2M+Z DUoGxHMWc/zTeAYCrz0cFfS5iHC31h0= Received: by mail-qv1-f54.google.com with SMTP id 6a1803df08f44-6bb687c3cceso31095606d6.0 for ; Fri, 02 Aug 2024 15:52:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1722639123; x=1723243923; 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=2NBdn5pSEVPLl8whCwb4HIQAFvHGTvWYzEKGS2RhF/M=; b=fPn4yVfWxcv8ZceFhXLhMnCHCNt2tdOVXaiQy2huXSl9xNxWl83DuQqx6tXJmkMYj1 xcyfbSEUEoTgIOiTfUFFLAZQ4Yl4Frh4oIt92GR3VJdBhqHM+EBIjmVkP7dD+QZXfl5r gcsZmekItXYjNDxrUup9ym9UxcbMsnMkGsXDLJBNHcTV4dz1LoGfKjql9qFnzMM/iWCS ENqN2GlCNE5gzby6giC5cX9P2xIuHSoB0rP/xqdFMc8HZeikJfpUMuwkpTWeJCsg0kH3 qKnWrFlj8d6ouonGvnro4hW/8mCaqGwdvT3bF5yFNpA7koTOV0C0f3umALpp81cwIZs2 PByQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1722639123; x=1723243923; 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=2NBdn5pSEVPLl8whCwb4HIQAFvHGTvWYzEKGS2RhF/M=; b=awFWrqYmCVKqThx1WyZeMV8DHRbCcGNgP1JwEtWI/9PZX43dFE+caBD7LwUnIz7Uln lI6Oi1fzVcyUAysaKzpfplrhZ2o1CdvEhnGciKGP782akXGWHYAZnI8k7HosnsYQFEB0 ANRPnfDOwSFHJaqPIDt7UwARRZZXWmRvHXbQkbOXg5gg/ujdPllR6m7wx+jR5Kjv/tcU IlS43B4FlKFwDcczNRFMXzIeCzqfXrw5k75WwFJl+blnM0uTySi9/q4AxnNpCcKXvkvw YGKaXKXJ9OzExIv4h3TJmbcH1VH0Ty1NexXpm1DqroT6ddEeNZqhFxeIOLBIST2IVZvC V+uQ== X-Forwarded-Encrypted: i=1; AJvYcCU9d8DTAEo+duk5BP2BgAcvg/K5ESuiH7NGPh///e3WllL2mh14f8JpQzE+3m9Vfluh9c4z9J7yzw==@kvack.org X-Gm-Message-State: AOJu0Yw6fl8fxb+Dn/8V9hM04G3fCBXmXGvAC7/uhXX6rHhz2MBqy4sm 14CqbuIYE0GaR6MTnadDSX5NnvdPO9pchJt00+RSfZYy0HsDZP38d/oXCdWxeJFrZrZDiJxnqty F81u7pkCf1jKc1KAl+592JL2s2tg= X-Google-Smtp-Source: AGHT+IECWlxoCooUq8nGSJK+sXxBkj4eVNyHzPkv0rXnnrwTlCOx0Ov3InBy1LOl6nRWg0K/BzycJzDIjy+RCicSV/o= X-Received: by 2002:a05:6214:5f02:b0:6b7:a182:4130 with SMTP id 6a1803df08f44-6bb9848bb8cmr52851226d6.49.1722639123278; Fri, 02 Aug 2024 15:52:03 -0700 (PDT) MIME-Version: 1.0 References: <20240731004918.33182-1-flintglass@gmail.com> <20240731004918.33182-3-flintglass@gmail.com> In-Reply-To: <20240731004918.33182-3-flintglass@gmail.com> From: Nhat Pham Date: Fri, 2 Aug 2024 15:51:52 -0700 Message-ID: Subject: Re: [PATCH v5 2/2] mm: zswap: fix global shrinker error handling logic To: Takero Funaki Cc: Johannes Weiner , Yosry Ahmed , Chengming Zhou , Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Queue-Id: 4B68918001E X-Rspamd-Server: rspam01 X-Stat-Signature: cqn7n3gcex6yjxfu6kn676gpjhoh46az X-HE-Tag: 1722639124-59809 X-HE-Meta: U2FsdGVkX18v6ZZ4LI34ZZNrmvw0vlrOpqZfObGvigHXxFZleSatz/tI4rmuLjWymEGvNMVHD41eKOeW/oLfj9M+CIJ5iBZXv0INrlMgINLCJR0X08xaSz1r/rw9Lt0Tt66moMIKKR7CxcTFpaCVm6TlosPNPh7nmPoZrdWSFj9nMn9axrJFc4ufUpf/uNpc2/qA9KHHNejxn2b8/5rxJQqW+BVEWrX+kavUZxFC6vZL7TsSaqTyCP0+PgfplOdAN6/OoFXF7IKP1lpba4lSrKaUw6ZJD8pLw8c8W5IOX6Y9NUYsAaDVfJNmBpEs1oRujQEm8TOlWijtMLE/8yrIFpW1ar6cXeIR5dIZBzuOTkGsaAsxydliobu38uiqDVD51zqH4bCOF3AcRe6R3YewZtxV1KkvdAyDb36hFj0r6K90ATNzFwaonYvNa0EyZiqg9VF2fCl6BDjSfj1QNAdJAP6bFUZMNVVxIHG+oxJGeQElOgJ6EA1OZFDw4D3N/CvS0OTz00Rh8u/lRlg1P2LkpbomuQlhfR4P/TWjg/l/+RPBSrrCl2wVSZ2bovrJLKcVmRHje/9UXT0IGP5yvwNP/edu8p5dNK0rM7vO6Kh2vvNXCh5rGJKzfnI8PZMVqBSJNDFcpdBbOBGSQ1c7Zzd59A9cZ74W+Zd3CFnKA3xuG18fnV4MKBQ7aM9NUL13mbXNB1OAJS3fL7m5VlTp/L3kQG9mJrYoWoEKBFc0nrpOaRvpjIPs/b+BR6oqIHatY2U2jcvVuimCxX4ZCsEO9kNQQXZfyXSj8wmxd5b31uNPvQ+Z6XBVIG69txh6pXUdGlv+aZjf3S/Nc4XxobhxvcT8lH/o7CCf6R4EGGYa2bh8CsuzA8Svg7aNoMYclrj9yG/943mtalmfQtqpOsGdd8MFTyPX7wqjgf4bX8UGpgZORR8Fm9bhltCxJo22VF7B6Mj6fdvHQR6jDQL1JVRXaIj +SYLYKKn p2OjSEBVfgD7a8tQOzqn9WkDY5UI6qjYGyVPs/EQtHGdKEpsG4qc3PZBVPMnQYxVaEK457t+wZ1D3ZcnXfMfkCPwLKzHNJafhp3p1KyCe6Vhtuw7kO7HNcOt1QsLCoG4c/s51AUNA0BFzPWJg3+r3iHMg3l3ny9nvigK5OilBKg6IejOem5e5WzJDehiEVZMlfs+vwYZXB/XGHPz/0OH+aIwAdsWOHx0YdZ5rCUYvLlLkRygsdJ7YHIrKl1EgS6QLWLi4G0rvqNMuTkPma78tnU9X4A== X-Bogosity: Ham, tests=bogofilter, spamicity=0.018765, 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, Jul 30, 2024 at 5:49=E2=80=AFPM Takero Funaki wrote: > > This patch fixes the zswap global shrinker, which did not shrink the > zpool as expected. > > The issue addressed is that shrink_worker() did not distinguish between > unexpected errors and expected errors, such as failed writeback from an > empty memcg. The shrinker would stop shrinking after iterating through > the memcg tree 16 times, even if there was only one empty memcg. > > With this patch, the shrinker no longer considers encountering an empty > memcg, encountering a memcg with writeback disabled, or reaching the end > of a memcg tree walk as a failure, as long as there are memcgs that are > candidates for writeback. Systems with one or more empty memcgs will now > observe significantly higher zswap writeback activity after the zswap > pool limit is hit. > > To avoid an infinite loop when there are no writeback candidates, this > patch tracks writeback attempts during memcg tree walks and limits > reties if no writeback candidates are found. > > To handle the empty memcg case, the helper function shrink_memcg() is > modified to check if the memcg is empty and then return -ENOENT. > > Fixes: a65b0e7607cc ("zswap: make shrinking memcg-aware") > Signed-off-by: Takero Funaki Nice! LGTM FWIW. Reviewed-by: Nhat Pham Thank you so much for working on this, Takero! I look forward to your other global shrinker fixes :)