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 23EE8C54FC6 for ; Sun, 1 Sep 2024 20:39:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6558E6B02E9; Sun, 1 Sep 2024 16:39:46 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 606146B02EA; Sun, 1 Sep 2024 16:39:46 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4CD3A6B02EB; Sun, 1 Sep 2024 16:39:46 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 301196B02E9 for ; Sun, 1 Sep 2024 16:39:46 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id A50FF41484 for ; Sun, 1 Sep 2024 20:39:45 +0000 (UTC) X-FDA: 82517335530.24.788772C Received: from mail-lj1-f176.google.com (mail-lj1-f176.google.com [209.85.208.176]) by imf22.hostedemail.com (Postfix) with ESMTP id CE7D8C0006 for ; Sun, 1 Sep 2024 20:39:43 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=fOEofGmr; spf=pass (imf22.hostedemail.com: domain of ryncsn@gmail.com designates 209.85.208.176 as permitted sender) smtp.mailfrom=ryncsn@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=1725223060; 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=sDffpG2ThY4k2VDFqzoKC8KM31EEPwqyGBslWHRe5RE=; b=VgdHIqTV5XtyFvR2M8hToucLxeRoDu4vre6tprYacBgc+6d3u8Ldgi6bWDpK120n+oXrUl vDsOhfBLwjKWIuR3VqrPgvKqVNfdmvg+UpVH4m7wtS58c1G0BVC8ViI8c23q69v4sdyU5r scV5ZLgMN73BIBYP2FN/xg05l2yTquM= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=fOEofGmr; spf=pass (imf22.hostedemail.com: domain of ryncsn@gmail.com designates 209.85.208.176 as permitted sender) smtp.mailfrom=ryncsn@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1725223060; a=rsa-sha256; cv=none; b=Ne8JXMwRQHgmhPWZQadvq9PJgkyoJceRx139/M/Px55zofziIi/WBIGk+Cb4mZTzeYdIR5 OZCGMSQhGvVcBm/sIrcRDBpe0EClDqqkh5FpFnGloQAOabxqj+awTfqcrbUhEmw88PWpSV dnj4QIIbGrJ9lCgIgYie6k6J8B4bNX4= Received: by mail-lj1-f176.google.com with SMTP id 38308e7fff4ca-2f3e071eb64so47935241fa.1 for ; Sun, 01 Sep 2024 13:39:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1725223182; x=1725827982; 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=sDffpG2ThY4k2VDFqzoKC8KM31EEPwqyGBslWHRe5RE=; b=fOEofGmr8uMx0M5GFF9cNVKXA/Zc0HZZvF/gTaH1h92kg7TR40+IVKiRRgY5W5YkA2 WS1OVQp4naOX9fJMqgXrMZFeagjNOHht6YCry1DB2dZVXs/oeN1WsIq+nE5ezR/KINzl 0+77g2Y7C7AP2q/adOnjv/ArW78HnTUFvgMWJu03L+4M7OJ2qNBIjU+csXCoOnyfKVZP +8GeXfoe7T6L6LxlpG2DZcHwDzrSyMNUx5RdM/IgGWvK82LiAhLFodQLuYJbF1wAFd4g Jh7VwXwd44IOvPiNUEDjl6IjskijJMkGGjNIiALL4VOAE1krB7SC51rGisPR/rGxfqVP H7lA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725223182; x=1725827982; 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=sDffpG2ThY4k2VDFqzoKC8KM31EEPwqyGBslWHRe5RE=; b=AKYAbd0XAa5LSrfnnaKtMelpg32LfUUB1dIBareXxByfSfMVMVhvIgBvmMmb2deuNN kM9xS1+7nxKths8O+tesWepnyLdXjERDoQHGNfktoHSwknqdWeQGda6YDKpqpTzTGs5g INhXl97L20vu1wNkxn1+Fvn74VLPnP35Lcgh+l5oy2NXiU4/16JH0KW4+HacnDc2Mzvx 6UIqmvLw30F9ecw7ScA/EN2Npu2lTzy8eb+hjlYuKlDLI82SagCl9C5eRd570aVoUrh7 Of9SMq92hwXaRq2zd9jpoTs+bYSR3G9w0KEp2u6zdAfmLQGN7xzUJ3/LlNRgUS8aKKvD ZI6g== X-Forwarded-Encrypted: i=1; AJvYcCU/Uh8yhkr4gJumob9KgUwFpU6QhrcMyvuPhh/iE1sFdoHSEf/3KufZBRQX6h3UY0ApkmWOwTynpw==@kvack.org X-Gm-Message-State: AOJu0YzmTmk2Ejh/xoEVT/oYyAaXjrSS8flGYY8i/RvhzY3GjRQ1Eml2 h7dNRnzu0EOWN43mMivKNgfEAE+QOArr+CNbO04gG225Q5sLCQbIlRQTj5+kB5OFiHXAU+qLg5+ TmOkubGW2wI58ohrainLRmutbbYs= X-Google-Smtp-Source: AGHT+IEXsrwqoHt2e/ocmAyYQhcGL4ufKNrpXXSo9TpQGlipO+Q4+m2Y5RZRyOqQEU+ML86TDaIl2ayhuo77wQl61EE= X-Received: by 2002:a05:651c:b20:b0:2ec:4093:ec7 with SMTP id 38308e7fff4ca-2f6108937e3mr103433981fa.30.1725223181373; Sun, 01 Sep 2024 13:39:41 -0700 (PDT) MIME-Version: 1.0 References: <20240829102543.189453-1-jingxiangzeng.cas@gmail.com> <20240830173813.c53769f62bf72116266f42ca@linux-foundation.org> In-Reply-To: <20240830173813.c53769f62bf72116266f42ca@linux-foundation.org> From: Kairui Song Date: Mon, 2 Sep 2024 04:39:24 +0800 Message-ID: Subject: Re: [PATCH] mm/vmscan: wake up flushers conditionally to avoid cgroup OOM To: Andrew Morton Cc: Jingxiang Zeng , Jingxiang Zeng , linux-mm@kvack.org, Yu Zhao , Wei Xu , "T . J . Mercier" , linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: CE7D8C0006 X-Stat-Signature: y8urgfrkaqnsm1hihfzwaeefhgoergcw X-Rspam-User: X-HE-Tag: 1725223183-916290 X-HE-Meta: U2FsdGVkX19QvlulUUonZBuUmrJj0Q2PzYZibGWwZ8ZYw56KOCsrNwfG+NPfZd1M6Q4FMaBuz4WSzEDVE3FR54nOMTc3E4dVThTJf/vJBzQGXlbEy/iGHyVLTyxYzYfzdrr9czkTGTwqnz7zdV9nXxwwaqIjrFiuFba2PsuF357p32dQTftqi5PjZwholY0KZMTQDtTIgM+Zt2tTmxsCJkO5deMIHr3z9RQ4rM79LsJgRQpmuW4ZH5Kx0MUgBmXnjTGXtnkfacOmbz0Ulm3al6ulWoicFh/Kf//MIGjMNTu5BpzggzpWvUKmlXUuRgKs/rKIwomOo5qsEYz4NXpDb+AWfaapf/yfn1gdtvoOe0YaYpk77Za3wl2yf/WeaPwFz6cm1+vXyGHVbCaf2tODfKpn1lgM2Hor1EbE1upwBehVgrkVbpIYo+fUknaVZ8R3tsOE/itUX+qRN7iq3jzFRn6gvX5Sgt6ImaTMdKdJmjP3o5zoQRUaqN0f9TS8OuecViHVNhTjI5DK4JUax651uCUrYTX4FMfGHagDbVPXiKSc9wDz7znfFyjRxgsq2mlwIY/EyC5Nw6RJndUbOZX+rjhExRbV41jMw4bGAWyYzoqj+HpveQouOTYIUhMkM9sTzxEMEc0V/g/WJj3TjQ5fMH7w5QyOry8NTkWjSi1TltbdhS46eae82RFBQC8U39E4DXJumH2w6ohOVTHONDAms9dzqj+CdKkwskvSjZA6pCITpRyQmWOfzp2VrcVZ3qp6j9HjME04vTmQqnf9cl4qg48DbzBUxcZegU2+Dojr3huwKw3MtYEbvOQ2hn+zouslmdTer0pCi8obZib0tfyLPbQMw0jieaOBR9+OOoWOFfVASSX5XS2ojya3ihmmeUZoj+Q3FAhmjZ13KbheelZL/2UFZ+6rmSl62gX2ej7QYlb8fQhI5n9vmfx7g3bKe0j3OY26WqybvybZMf2q79U l+a6dpBd cxu0gAgypc7RLLH8AHNE6eray9s5ZyCJe++uRCty+jgMnjUZv9mAdhNTLYKm2lXSFbrHxg7aqYC6kuIlooBg7fc1X6s1I5e4lpNCgECv+bdfnTs+vRo6GgTxEdKZ+kahB9ujrExhNwLnu5DMKVgY32yHLq/bQZUQpgTEdsPvRNjWreCzYdXyr6OYfjMGKUW4E/obMs1iOTSXA3cZi0b9M95xhzAkFavx9a3k5SzrE9LpRN71AOw+zVTKLj8EYi2nelq3Uiui/CG+2tXhOG0bjG2BXqEyVv2GncGiL5PMcZf2Vb/Z0423WJ+gKbnqUdEmIeZVuAbRDIhc1Z8iITzRxcMxQvICUQI8JmvRu/FS9ZK64yfTo2q8Z24DvSNqfIbCAegFa2d0VoCeLpfAZPbJWtNobajqdYo2dufwHlRYt2hWDJ3qhnlQK4FHRIz1XEDfcJlSo0FTlzrls/oShOMT5KRGKuOOn1L4Q/Jss5UvEWLCSBXPfsIrFhBVOcN/MCw07m0+NqagLW700PS0= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000020, 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, Aug 31, 2024 at 8:38=E2=80=AFAM Andrew Morton wrote: > > On Thu, 29 Aug 2024 18:25:43 +0800 Jingxiang Zeng wrote: > > > From: Zeng Jingxiang > > > > Commit 14aa8b2d5c2e ("mm/mglru: don't sync disk for each aging cycle") > > removed the opportunity to wake up flushers during the MGLRU page > > reclamation process can lead to an increased likelihood of triggering > > OOM when encountering many dirty pages during reclamation on MGLRU. > > > > This leads to premature OOM if there are too many dirty pages in cgroup= : > > Killed > > > > ... > > > > The flusher wake up was removed to decrease SSD wearing, but if we are > > seeing all dirty folios at the tail of an LRU, not waking up the flushe= r > > could lead to thrashing easily. So wake it up when a mem cgroups is > > about to OOM due to dirty caches. > > Thanks, I'll queue this for testing and review. Could people please > consider whether we should backport this into -stable kernels. > Hi Andrew, Thanks for picking this up. > > MGLRU still suffers OOM issue on latest mm tree, so the test is done > > with another fix merged [1]. > > > > Link: https://lore.kernel.org/linux-mm/CAOUHufYi9h0kz5uW3LHHS3ZrVwEq-kK= p8S6N-MZUmErNAXoXmw@mail.gmail.com/ [1] > > This one is already queued for -stable. I didn't see this in -unstable or -stable though, is there any other repo or branch I missed? Jingxiang is referring to this fix from Yu: diff --git a/mm/vmscan.c b/mm/vmscan.c index cfa839284b92..778bf5b7ef97 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -4320,7 +4320,7 @@ static bool sort_folio(struct lruvec *lruvec, struct folio *folio, struct scan_c } /* ineligible */ - if (zone > sc->reclaim_idx || skip_cma(folio, sc)) { + if (!folio_test_lru(folio) || zone > sc->reclaim_idx || skip_cma(folio, sc)) { gen =3D folio_inc_gen(lruvec, folio, false); list_move_tail(&folio->lru, &lrugen->folios[gen][type][zone= ]); return true;