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 90288C8300F for ; Thu, 29 Aug 2024 08:52:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F14E16B00B3; Thu, 29 Aug 2024 04:52:31 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EC2546B00BF; Thu, 29 Aug 2024 04:52:31 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D64386B00C0; Thu, 29 Aug 2024 04:52:31 -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 B7C3F6B00B3 for ; Thu, 29 Aug 2024 04:52:31 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 675ED160209 for ; Thu, 29 Aug 2024 08:52:31 +0000 (UTC) X-FDA: 82504666902.06.0D65253 Received: from mail-yb1-f174.google.com (mail-yb1-f174.google.com [209.85.219.174]) by imf04.hostedemail.com (Postfix) with ESMTP id AD9964001B for ; Thu, 29 Aug 2024 08:52:29 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=lwlnUocc; spf=pass (imf04.hostedemail.com: domain of jingxiangzeng.cas@gmail.com designates 209.85.219.174 as permitted sender) smtp.mailfrom=jingxiangzeng.cas@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=1724921505; 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=f7/1ZV+TTP/H+35MntJnEwdMvctEZwmsC3otfByUruA=; b=DztkI6rNo+ahB47kDLzA/EG9RCRvsvfMGqImAK2tPGTFSxoCSze4kdLQnr2BEbk8EbgGcb pVZCKEuvCGauwQb727JX9BUHAmmOmE3ljtNRSoM9VaPG7LjsCi6Eul9GvbVOv/U48hBorx j4WLhU26rqAw8VTIevuxk1PMoPt/kFI= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=lwlnUocc; spf=pass (imf04.hostedemail.com: domain of jingxiangzeng.cas@gmail.com designates 209.85.219.174 as permitted sender) smtp.mailfrom=jingxiangzeng.cas@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1724921505; a=rsa-sha256; cv=none; b=NnL1jjXKpDWpr5ns1VPhTVhxPrGKS+OP/9FMwHYNk1Tp0Dczsbqrw5anLRVic7qoyUfMTa SztmnbZy8+cc8oEx6d1v2eT0nj6j9ulr3jFmPAzjSw1tpyqQ7KY4SUMCwp7d09lyZ8RJPq 3UoI49xzkZYYiEIENH/Ppt1yzBBAVc8= Received: by mail-yb1-f174.google.com with SMTP id 3f1490d57ef6-e179c28f990so401704276.0 for ; Thu, 29 Aug 2024 01:52:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1724921549; x=1725526349; 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=f7/1ZV+TTP/H+35MntJnEwdMvctEZwmsC3otfByUruA=; b=lwlnUoccNlQ7ALTH2u6jUIfmcoi02AArBRDgm6u7UYuiOb+KfVgrPISQGtBeb0XzWV B7etQQ++P5Gu87IrUTOepw4m3BgGsWTmCxRkwBsHlLawrevW9gPVMvPCN2ymxd8E7I/w 4zctvP2WkdsAVwZW8RijahS+AfBk5/TQ/gDodThg27QpUjCybgzpwBPktR0AcY3l2lAi i/sQ+/37qIF2zH60a2VWLAmwtNe0+332cUjnfrmlBdLc1cFLyYspzLPphN1Yjc8p5CH3 t+DUVCGa0Bn8u3PGCUW/BxJNZU3EjFYwEpDFkDhwL+97f/NifMDnvoU19ocYI6jSnjMp cATg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1724921549; x=1725526349; 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=f7/1ZV+TTP/H+35MntJnEwdMvctEZwmsC3otfByUruA=; b=u5AqT/GnPQkp/foEkucVx+YxdM6Fw6SghWtl9GHndQbvKlGWMufMU23i5sCitE0Bzn 3xvEmcfH32vulMBkhtqEMX6zd2wfoRL/AXKzrFZN0byywKLlhMiqjZc3kChsPpdmh6uY 15TjJEqQLrLDb/b1REZVe1m/iX5La9+kX1fqPugt3EPV1tZxvgV2SBDYOqg+H2sgEz1F FWOcQB9oPAAaELwmBjl1FYOFCkZ808hjI1i9IZDfPqX1FNewKSZfZS2QykcNOb/8CaDM onpMOX0VP3RRLeijw+YNb2SdC50b5f8liYktLghmN5H7isjhDhJo0U+z5O+jzwOC+/Pe f2Bw== X-Gm-Message-State: AOJu0YxTnZovgy6HGomgTENmm44WF82k0oGmfYIHPrS0hhL4XAQ8Rhii s5niYztUVbyyI9T61/yIzPXILdpkc0E876aI2R/lBSxD8qeDy69iL6aUADrZJjCk7Eb1Epep1G6 CIOvTq7puME9+W4bf1BNbLb3PjLE= X-Google-Smtp-Source: AGHT+IH0rKH2Y7H7yqRscVf6oQj23ElkeMPK1xGa9VBXeDUx6I5zG63Q6e+gLa9EB5HfYeW3E0+Cr/w4HQpxB1sR6/g= X-Received: by 2002:a05:6902:e12:b0:e17:be1c:ab1f with SMTP id 3f1490d57ef6-e1a5aca0c87mr2316857276.27.1724921548682; Thu, 29 Aug 2024 01:52:28 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: jingxiang zeng Date: Thu, 29 Aug 2024 16:52:18 +0800 Message-ID: Subject: Re: [PATCH] mm/mglru: wake up flushers when legacy cgroups run out of clean caches To: Andrew Morton Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Yu Zhao , Alexander Motin , Kairui Song Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam03 X-Rspam-User: X-Rspamd-Queue-Id: AD9964001B X-Stat-Signature: u511dbp4ghoupaqt7yfc8hesrn8texah X-HE-Tag: 1724921549-771514 X-HE-Meta: U2FsdGVkX1/ytZrdEXa6WpyredTnlWGLw29geDN/Lf2pqnxHiZ4d4JlJ9wQC7eoF8kS/X996vW7ws4zOR6iRTVVNr0lIdu8uOCvvS8mqlUuLK9xEkLd6qqZujGokn+v+7506nEqSsCLWzp6jDugHCrT3ImwA1ypdlNRIRKEwgGXjnGQpyOau7cfpVf436ABWiUa4P/+y7ZMLZELUq20XTeki0s98wgK8MJY454QwQpquIVG0e7/rNSaNQw74Sf7IYrka79fN6xZkuzfWlF6WYtN4uTKEXrCpTIGsx2cDvGM7mNKR2iM9SohFug+totVIgkzXX1+eksxCt03h0MkCHCa400D9jHEzCHMxCY/99AJuuNTzUqb8JnE4B7FLcoJkPp/zNebQCs27WlwASzP+eU7EA0Bmd2obBKIQ9O8v6AMXb4wUFAwiMjpeAfjLe+k6E25gaX3SknkWC0ydbhWVo+D2QGee/Tyu32eBenEYD7ntLQXrrZ50GnxDNZC9Dn0sQrQ5tSkWntSz19Wq1OYGE6VfKA8MLgbQ7ocXob6pCyFuBxKiedjomCge1/jssgEr1u6U+6piXO2EENrmB7hJVeqvEwuJ2hM/wvkbvNRPubQ1FKKc/k4CFZ+0FkoU8cm9tgLm42upinVtke021Yul6z7i/itAJC4yaEX42JJJ7DSBgtsbR3LrI9AHbR0spbmvxiYPo3Xl1aG+XYlLs3Hky0ZBFiTIjWtxS5JtuBT3AGF+qPuoTV6zXz8GYCkDKloSwcRg7J8MXmVMJu8EaeCGZnbyO0iMWlwuAVV5OGXifQIRYUSiXQgtP699U2MFzh3z9SzPFpTcUqxxiFcrZpJSx1oUK1ik52KQ14T6XbNbURG37jH161wjTAYt3cT5UCLJix/w7H+ZLGBlRMI+We8i7pPlcwh2lcy7TLTE9ROfzvlz2dupviQ9pXY0TZZQ0pe//wtYUbg4J/UTdIA+ZZp oA38/avs WoHLRL4loo+V0pUVl+hxkJ/LSrA3MNSOBc1fCQhzqSJ9f7hpzVkzowbbXt/tvJQkY2XK5/9M/aYgUicLvhkYobImjcgxAzArsXflwvF7SEKu9eoDNVMff2RA2kSm+iobyJ0Wpeeuficj5sD3fFGvvc5Z89elkOBrP/t/3oBXYChwssYanWsCmOnQup3J6dhmPfDG8Tu8rGFx7D7OQIDPsP9I54iSk/bhAF07sN7ovtRjhuaOSRpZ5fCozYkMBvnJYLIT4TUI1rUR+nU6AiHRPFexro5Zcn3dvEb357Ik+dTbKdmqNmYiNf8IZxEFjDZSjtjjn17GA0OHgnhbkkP7NgXnjyQP6wsjX/9lVDAzofvxI2n8uPHhfZrXQj0LUTQfp66NQK9YUYTg2x8vJUODZ07ZrNi3sDxggoX5Gwh5ojvbjqY9XVazBeHHVdw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.029880, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: I apologize for the half-dozen duplicate messages. I was having a difficult time configuring git to send email and didn't realize the messages were actually getting delivered. Ed jingxiang zeng =E4=BA=8E2024=E5=B9=B48=E6=9C= =8829=E6=97=A5=E5=91=A8=E5=9B=9B 16:36=E5=86=99=E9=81=93=EF=BC=9A > > 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 > > dd invoked oom-killer: gfp_mask=3D0x101cca(GFP_HIGHUSER_MOVABLE|__GFP_WRI= TE), > order=3D0, oom_score_adj=3D0 > > Call Trace: > > dump_stack_lvl+0x5f/0x80 > dump_stack+0x14/0x20 > dump_header+0x46/0x1b0 > oom_kill_process+0x104/0x220 > out_of_memory+0x112/0x5a0 > mem_cgroup_out_of_memory+0x13b/0x150 > try_charge_memcg+0x44f/0x5c0 > charge_memcg+0x34/0x50 > __mem_cgroup_charge+0x31/0x90 > filemap_add_folio+0x4b/0xf0 > __filemap_get_folio+0x1a4/0x5b0 > ? srso_return_thunk+0x5/0x5f > ? __block_commit_write+0x82/0xb0 > ext4_da_write_begin+0xe5/0x270 > generic_perform_write+0x134/0x2b0 > ext4_buffered_write_iter+0x57/0xd0 > ext4_file_write_iter+0x76/0x7d0 > ? selinux_file_permission+0x119/0x150 > ? srso_return_thunk+0x5/0x5f > ? srso_return_thunk+0x5/0x5f > vfs_write+0x30c/0x440 > ksys_write+0x65/0xe0 > __x64_sys_write+0x1e/0x30 > x64_sys_call+0x11c2/0x1d50 > do_syscall_64+0x47/0x110 > entry_SYSCALL_64_after_hwframe+0x76/0x7e > > memory: usage 308224kB, limit 308224kB, failcnt 2589 > swap: usage 0kB, limit 9007199254740988kB, failcnt 0 > > ... > file_dirty 303247360 > file_writeback 0 > ... > > oom-kill:constraint=3DCONSTRAINT_MEMCG,nodemask=3D(null),cpuset=3Dtest, > mems_allowed=3D0,oom_memcg=3D/test,task_memcg=3D/test,task=3Ddd,pid=3D440= 4,uid=3D0 > Memory cgroup out of memory: Killed process 4404 (dd) total-vm:10512kB, > anon-rss:1152kB, file-rss:1824kB, shmem-rss:0kB, UID:0 pgtables:76kB > oom_score_adj:0 > > Wake up flushers when legacy cgroups run out of clean caches. > > Fixes: 14aa8b2d5c2e ("mm/mglru: don't sync disk for each aging cycle") > Signed-off-by: Zeng Jingxiang > Signed-off-by: kasong