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 B33A6C27C6E for ; Thu, 13 Jun 2024 15:22:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 338806B009C; Thu, 13 Jun 2024 11:22:44 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2E8D26B009E; Thu, 13 Jun 2024 11:22:44 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1B0ED6B00A0; Thu, 13 Jun 2024 11:22:44 -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 EC3136B009C for ; Thu, 13 Jun 2024 11:22:43 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 6413BA103B for ; Thu, 13 Jun 2024 15:22:43 +0000 (UTC) X-FDA: 82226232606.24.6D1768D Received: from mail-qt1-f175.google.com (mail-qt1-f175.google.com [209.85.160.175]) by imf28.hostedemail.com (Postfix) with ESMTP id 7ADFDC0012 for ; Thu, 13 Jun 2024 15:22:41 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="B+a/qc+4"; spf=pass (imf28.hostedemail.com: domain of nphamcs@gmail.com designates 209.85.160.175 as permitted sender) smtp.mailfrom=nphamcs@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=1718292161; 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=CEBQAjiRo/TKvvFGnyTMJIOZsXYkblZxmpcpwTGBhXA=; b=Hwc3PhWn83lM5kt+uMjupJsE+Fi7CqipW+aEArN6lYV0sp0urcctWnS8aI2T/earGcTH3R w/EoNNcRruXNVixbo9xx637+eCGu9q6M8eR2Zkuw6EfB7t2494yO2L7NOnYe/T1tDMOihL bpndUh2soicI1Je9X1Hy1f266tBJQz4= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="B+a/qc+4"; spf=pass (imf28.hostedemail.com: domain of nphamcs@gmail.com designates 209.85.160.175 as permitted sender) smtp.mailfrom=nphamcs@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1718292161; a=rsa-sha256; cv=none; b=R2VNZu35AfcF1yqrs+jSVHQP3ajRDELXH0xlg/SSCIzs7Ao+gVZA6J//K30zUHb5j8co/X 4VDO9it/61C5k/ayfuCa2d4p8N5GEY/4PQOLIWYH6JdF2TvZfBW5kPy6mfpBYFBvtIQdPN Z7KgKfV4WhYa8+DL56in7VRudHLeMyU= Received: by mail-qt1-f175.google.com with SMTP id d75a77b69052e-441567d352bso7418451cf.1 for ; Thu, 13 Jun 2024 08:22:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1718292160; x=1718896960; 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=CEBQAjiRo/TKvvFGnyTMJIOZsXYkblZxmpcpwTGBhXA=; b=B+a/qc+4Dk6k1vOP0gxJZVU62XS5MDTSpF+E5sfTAJpKo992jSQQdoeHFBJfbBD5L7 R85E9hC/agDqXlRPW86U8vIZhAuKTCLHRCI6EjazgTh9gddyctdx+26kPx0pMZSKkZbk gf7f8k4qaC8eiUyc1fUvleH04MLVogGVS+Qn/8htkQCXPkpTGuVRp2Xz2hDUXYHi1GzC VSQ59MWvz2+dQpzZRedr3Sl4xOmQGYaN+a79D6LEGqiji/K3EmxPLdOSdVSiwkizeyYN 8AHfGk1fXoLhIBI5seRVAhajF8dHAnMkGUkhPo6NRJHFp1RosoPIuI8g6s2aVQWAbTFK qSrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718292160; x=1718896960; 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=CEBQAjiRo/TKvvFGnyTMJIOZsXYkblZxmpcpwTGBhXA=; b=Sj8nNVfu9im1MErug1caMByoZEPbDb/o9NMIktix5kxmlrdQMqeyHRiZSrEjxraVvV OItt/mDBR6qPLyjp+jS9owgTnFjDuNUGghlfzoaLWrPlnF88zSJEdQ3ll9BNlwTMRWh4 jGaHjSRzQctS4TkItUkn+y7tePyJ0Wk6G2Kkd753SHqAKOOL/wxeWuq6pzCh/pvxFbKh Gncw6cYZGRCcjcfK92qDBhgkqE41C0M597tZ1B5ksdYV+/LeCk8pxYby156AJHf00xKO S8WG/rvqJ5QnacOETnazUh2m7Swj8aUlKKwdbhkknapiaJQsSfqHiNdF+j4ysSbFXXMV 9uqQ== X-Forwarded-Encrypted: i=1; AJvYcCVUFKt3e7zTU5EfesaSqvnunkE94h/VMNpPLBuZySMX7tXzgAIR6cizZBL2jaFFGoGvFjzw9L8sJZWpc7OEIYuFyjA= X-Gm-Message-State: AOJu0Yz28X8MjL2L2RdXtYv9mG3RbqppGZhMPaLsXZ9anV3zlfM7UoO5 hlYQ6JxCMMfmBaYqQK3XY2ZVksPzqUlfLm0ofEVJJI37bZ32iRrPKmIS785BNO8Z83hBe6PLVrG 16tqLB2qs2wXWxUET06Ny29+FR+Wd20tq X-Google-Smtp-Source: AGHT+IE/ygyf7skvdyjkp6u4fVTWMS18X5hrk9EBnRVC2RpU6E2VcfVM8UNh2Vt8DEvottgUjiUNHsyu6mKzeEDUlsM= X-Received: by 2002:a05:6214:320f:b0:6b0:82cc:5e7a with SMTP id 6a1803df08f44-6b192028b71mr52266956d6.21.1718292160516; Thu, 13 Jun 2024 08:22:40 -0700 (PDT) MIME-Version: 1.0 References: <20240608155316.451600-1-flintglass@gmail.com> In-Reply-To: <20240608155316.451600-1-flintglass@gmail.com> From: Nhat Pham Date: Thu, 13 Jun 2024 08:22:29 -0700 Message-ID: Subject: Re: [PATCH v1 0/3] mm: zswap: global shrinker fix and proactive shrink To: Takero Funaki Cc: Johannes Weiner , Yosry Ahmed , Chengming Zhou , Jonathan Corbet , Andrew Morton , Domenico Cerasuolo , linux-mm@kvack.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam03 X-Rspam-User: X-Rspamd-Queue-Id: 7ADFDC0012 X-Stat-Signature: m6oztkkax7gm11tand5jrxeifpzbs9op X-HE-Tag: 1718292161-95889 X-HE-Meta: U2FsdGVkX182EXQAO20TCuKrHmzf8A7sMHvDtTAj1vpxvpFxiWAoA5iqDOufJeV5+hC8CMTzhnYiU0EnkhVZLfi772zBaLwA32IXkw9eGEUEJbDv/9v+C8tC+BEis/ZQPwHN6QBPvYAinKQiXkdr6lrpZcNAnNbYpWLrUSj/Y7kDlSbLF1C06eO1EZ4WwlUOKpzIlGXv73oRscaMgOJ6XXnRxzzXIC8HtD5l0fbDpn+TRCDHEMte2lSYqI0+8ImW5GIxBNk+qVrwqziV+t3Orb1E5spfst6Ez6jxb+W8X5OHzutX7Rbv8lEklbscT9gvuhM1n5UjWYYMOIEH82hiMVNGD2emtNVEIFkj9QMWy5wrEZPnjWAtyeXUpUtFQkqgX9NPw1p+jdsOw2yyCCRCS6Yp5q5VLWPo4+19DdiGVl40aWmN23T2/+bY0caWVYko80MZZT+1gC2qJVBXox/HTnPkgNdFII13ojWvcMJHTql7GhPb/GEgof17xT92jDwA55amYyggN57W3EH8EYOSQvwqG7NYHx6u6lc9paS9iaazmcFg4m/0fc6Tvrcveke2GEym/0rNDmPJcez1NsYxXLDIkBl1/SZ2mop8IHfeuyi4UK00XlJ0kzaXZHfeHH59g1x0A/RusF71z5Uf7cT2Lt82PGZOD2cQBdRS82jxSIRkaE3DVlBmTeB0P/IVl0edQGKDdczGVzZjf4fHEwBV1FDolD7CBh33wa9u2RZVjHXcOkrgcTFstyAhKzK8aNT0JDuBCCtFR3eYiww09h2T5rm+yxZWmKTw5IrjAhPpYGtFdn+A7Tfblzemone1d5drIcYvzEh6thT5SPxO1Byh9t2vBNaZ5Av1lSW3mlYQ2/4YqoxsLvH8WYVhNR/cWoYiENMHkJGm3GuwpTI/e7YgsnwjeLkQsjpCa3Ockjkn66WKILuIptBk72cCusGsUNToCCoyPiRDR+eikcp7kh4 q6xOin/O mI0iKC1jxa7YPIgFkEcMIdpM7kbE6oBWTVcPEAqkxfzdVKswAixoha3mtk+pWPksnvlHD9mmDVWrtYmJHJh40Uf3BlkYZ8WoRxpqX+XEk+hX9nv2YRcnuFfSNkTpIXtWXnTPKKLBJ2XYpPWL2CoZq/0nhwgfRTjDK/P7Uml5oX+ncGqtOY/Du5mXooLYfnIThH6NhP+Tn+kmGS4ItwN48ge9io8Yr6m9XK+PY2rKtDJrfnIooFXrRZs0GgPfBXv0oQSC7Rm819nsQBeg9T8Zupkj76QVz/Snp3UZTEE3SqlkJ9scad7k1wDy78XVA34jJYf/Z X-Bogosity: Ham, tests=bogofilter, spamicity=0.085815, 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 Sat, Jun 8, 2024 at 8:53=E2=80=AFAM Takero Funaki = wrote: > > This series addresses two issues and introduces a minor improvement in > 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 91% full, for 90% accept threshold. > Taking a step back from the correctness conversation, could you include in the changelog of the patches and cover letter a realistic scenario, along with user space-visible metrics that show (ideally all 4, but at least some of the following): 1. A user problem (that affects performance, or usability, etc.) is happeni= ng. 2. The root cause is what we are trying to fix (for e.g in patch 1, we are skipping over memcgs unnecessarily in the global shrinker loop). 3. The fix alleviates the root cause in b) 4. The userspace-visible problem goes away or is less serious. I have already hinted in a previous response, but global shrinker is rarely triggered in production. There are lots of factors that would prevent this from triggering: 1. Max zswap pool size 20% of memory by default, which is a lot. 2. Swapfile size also limits the size of the amount of data storable in the zswap pool. 3. Other cgroup constraints (memory.max, memory.zswap.max, memory.swap.max) also limit a cgroup's zswap usage. I do agree that patch 1 at least is fixing a problem, and probably patch 2 too but please justify why we are investing in the extra complexity to fix this problem in the first place.