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 DE9F8C25B78 for ; Tue, 28 May 2024 04:34:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4B0736B007B; Tue, 28 May 2024 00:34:42 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 469F06B0082; Tue, 28 May 2024 00:34:42 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 327886B0083; Tue, 28 May 2024 00:34:42 -0400 (EDT) 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 17B3F6B007B for ; Tue, 28 May 2024 00:34:42 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id C5E1314161D for ; Tue, 28 May 2024 04:34:41 +0000 (UTC) X-FDA: 82166538762.27.9D80A17 Received: from mail-pf1-f172.google.com (mail-pf1-f172.google.com [209.85.210.172]) by imf10.hostedemail.com (Postfix) with ESMTP id 16884C0023 for ; Tue, 28 May 2024 04:34:39 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=H26+wJpc; spf=pass (imf10.hostedemail.com: domain of flintglass@gmail.com designates 209.85.210.172 as permitted sender) smtp.mailfrom=flintglass@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=1716870880; 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:references:dkim-signature; bh=KWUjtdr3n787r/jcZJXOANKHrObcYlm050O4MGl6CXg=; b=Kjj8vDUiZqum1yT77VnqeCpy0Pklbw3W+HX03d9CUAwz0cEdQtsRUVn+OdZ9tn0ouzsmiL NEduxg8h2NxQ3+Ym4+x+XOl5GLLeQ3y9QXBOlHSEyAkd/zW0lXob1eSD6jyFP50lJ8LElK YIIDRCwa1D5IhumpOBneXi1GO4pZIfU= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=H26+wJpc; spf=pass (imf10.hostedemail.com: domain of flintglass@gmail.com designates 209.85.210.172 as permitted sender) smtp.mailfrom=flintglass@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1716870880; a=rsa-sha256; cv=none; b=wxdrxuo8Uu/NcGYaaKHo1ZytudDu1fHdY8j+ctobR481DcqtQ5dggvAuF7euEKas/ib8Em y4BLqvXHPT+yxGhsHnomxH40oF92RqzzZCyNO1GPW+r/6NRJewmGoz3xqkTPYeFKkGGriE cbz4C2Dm77iKi/CcfoQ8bTHxHHc7wnQ= Received: by mail-pf1-f172.google.com with SMTP id d2e1a72fcca58-6f8e98760fcso295059b3a.1 for ; Mon, 27 May 2024 21:34:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1716870879; x=1717475679; darn=kvack.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=KWUjtdr3n787r/jcZJXOANKHrObcYlm050O4MGl6CXg=; b=H26+wJpcmzgw0J3/3VZvIZXLQu/JwEqNofKnlVrbTGPgXUddo3BdYlWKIJDXUDQf5m WyR5OpCUqV5/T/zPy30jjcja7e9rPkVs3NqCybNR9QFP2P6PUNz2/g4DIXPRVoqr2P9A oAMHQ2EfN0SpOyyXRcRBqYRJ58Iiq+L4CvXvnCB1PZK0NIp2dd/qUDl4Hmmpdt4rJnLY 3gwbMOlzAodNjPd/yI2+I2XyiO37sA1OP902z3DVbys2hsSuvdL2Bc5BTIMTmW5Uspgx V1uwsiKr+oY0LfwHOomhz0iKIRFWi9bOwRALHpzoLC4MO0hSq0q0z+kunDIzZHzNW4ZR F7zg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716870879; x=1717475679; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=KWUjtdr3n787r/jcZJXOANKHrObcYlm050O4MGl6CXg=; b=VFaPYdpQeP4GYOJUi8vDqMnG5nt/l+P9Gj2YNuwvb4Kjue8z5BNQAQuQsf5odqzfSi etfrd8GDerjl1yNHvqMnFEna+whA4AkQpJ+yaRqpaI8tUKFpoHf4hzdiNl9tZGDxvlFB +WcejtATtqRvsipqNBBLlS6oZQ1XrmWu/qpe5SEVp0GJchXL7Z1m0TtIu8yKP2pcvHUR G/rFxuyIK3jFeHAzbmS3NKVxr/N1qtUfHkOXEi8jL3Lrqcn0iD+Mj4Kr2UuK9Ni5hOtI i//8bFH5MQolV6QNEvfIdy4IU7JRWC9i0i8wBgFQxgAs+OiXLoGfZU37LwNHUGVu/OMA QA1A== X-Gm-Message-State: AOJu0YzMPX+7YrRYE21yJeMVOsgoKBO/K2yYg14wARwsOZLwT2vu8oV7 wkVO3ITqfv0RjV+9uVUAT/sPWJcJK8n5Kmw0fa/Knd7UscVKHAQz X-Google-Smtp-Source: AGHT+IGuRS4sS/MTKScuE9idRBh3tQ29cfiL0aCBeleXVPFhg3GGey75h3G+uhN/Tif/VBMPt97PYA== X-Received: by 2002:a05:6a20:324d:b0:1aa:92b3:acd0 with SMTP id adf61e73a8af0-1b212d09de2mr13080168637.25.1716870878867; Mon, 27 May 2024 21:34:38 -0700 (PDT) Received: from cbuild.srv.usb0.net (uw2.srv.usb0.net. [185.197.30.200]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-6f8fd4d57b9sm5620036b3a.193.2024.05.27.21.34.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 May 2024 21:34:38 -0700 (PDT) From: Takero Funaki To: flintglass@gmail.com, Johannes Weiner , Yosry Ahmed , Nhat Pham , Chengming Zhou , Jonathan Corbet , Andrew Morton , Domenico Cerasuolo Cc: linux-mm@kvack.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 0/3] mm: zswap: global shrinker fix and proactive shrink Date: Tue, 28 May 2024 04:34:01 +0000 Message-ID: <20240528043404.39327-2-flintglass@gmail.com> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Stat-Signature: 8u84ubgcoeoj8yodir86h1xqrqrqbzn4 X-Rspamd-Queue-Id: 16884C0023 X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1716870879-585828 X-HE-Meta: U2FsdGVkX18Ef/1ZRD8XLAVF3THuhIQLAXbiAZtlfkPHNovIcOLUBwN8UFL6v9Nf05QU64Qu388gPImZmyanZNeSEyR4EiVEYzqgaHjs7dZ2TyagCiM4SCnNeEgqvfyEMluMUPNMCzr4bhmHH7dU+kmdVEgl6uvaSCuBeokHBpDEhKM2ORW/uSjsvYQTp9FzC4FWjUbepV1KAGQ1asQteQovTPTmlymKVtae63foiCtrBJOW2edN3vmr2hVjjUCwM2las4h5ce+BgO85Kupw0IJ04VwUMaIq4bELFywO+A9FhruRCtbXJbj0zTFhzM0B8Fi6xsw5zx++TzYyCDL/WLQ5XfR5v8g4oUc9uCKaRpLEzdmYEnX+UoyXuU8OUhem4Na4KNTEg+l+76xX/f/MYVZUaIvTsLmAdjOH5dk2CPw8lkq8Xfmq1IVoGtn9icJWqdWGucybWSmUatMuPWbKDCSeX03YGQI4qkbHBzgJ3IETN1zcjAjmIVzpJTdZn3XYUYFJIJ5VfTm0nvovvBrBkUI0SpX3yhfEV3zKgd9Apwg5Iyp7NMpKc3U00Trrd/CN2KBtPKgQJBmgSDcnrwMFaBUFOHjUFbIqLHE8905/i8uX3bialSM0cUXLpN30uyPhSbVufBkVSccvVZt19m9N3VWOw0fXcTlY6L3pMINOJItSLxklbO3QkDJuCnDTZszMZ7fKi9jQdHnKt93AFcWMGsC+57cXqU/G5NrebC6b/2Q+Umfs7sDiMkDDxQ5PfzNi8zCINzFM5P5ioZ+5GxTdiHClrUdM7AGHe6yAOV0JYOWQPttpi9nS8dd8t/ZRjsfp1x9gG2r6PTS3fA7XyFkl5RYZCiAZKl0edFqCCfR27E5mu6axrJEPBR4JGiikkJMLgfN+nztBUeW6zDfjtfnFakCGaioKdX3pmo6UH694NMWzKqb+jg/uegc/QVbPn6z4DadA+/hg2HxPOWa/Txq GxDKAgdB 8J/RmuJkjAKbgRI/YXdhUrjWzjY358mloRR/07Zccc4+2iO/Kk+lvyMkR9UXE020MCv4yI+DGD2nmpf7iR7SH4wWwgNcM1h0GRXltPxCxk87Z0lEJnSsYBnz9nwyQEfVoatWO76YuF+9r6ryC3pQ/wb4RE6Czz7ywb0RT3oCDY08+4TJBThz4WvYN9AG7e461AyTO/zp8I4bO3rrPaOyNZIPYmO+RxX9uHJwHRHP0l4VZa426VrigCIFCAzDhDbtV2yRSs5SsV7hUTOxft5m/arCZ4htO+V1XsK+arnI9B7sF+15ca0wCmo3n8zcWBV/ITCwHXccgP8z38SyQIi35bIKcSE7kaYKRyjSmN8pDVq7oSDkhbcwcK5867DZ3WR00/TIkWjphnPnF5Ms2deHUmj9Vmj7rzyo6PowbLJ1rKXeDUBIC7g4uMqEDtJ3Qh8jZXu9z 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: Hello, This series addresses two issues and introduces a minor improvement in the zswap global shrinker: 1. Fix the memcg iteration logic that breaks iteration on offline memcgs. 2. Fix the error path that aborts on expected error codes. 3. Add proactive shrinking at 95% full, for 90% accept threshold. These patches need to be applied in this order to avoid potential loops caused by the first issue. Patch 3 can be applied independently, but the two issues must be resolved to ensure the shrinker can evict pages. With this series applied, the shrinker will continue to evict pages until accept_threshold_percent proactively as documented in patch 3. As a side effect of changes in the hysteresis logic, zswap will no longer reject pages under the max pool limit. Regards, Takero Funaki Takero Funaki (3): mm: zswap: fix global shrinker memcg iteration mm: zswap: fix global shrinker error handling logic mm: zswap: proactive shrinking before pool size limit is hit Documentation/admin-guide/mm/zswap.rst | 17 ++- mm/zswap.c | 156 ++++++++++++++++++------- 2 files changed, 119 insertions(+), 54 deletions(-) -- 2.43.0