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 A048BEDE995 for ; Fri, 15 Sep 2023 03:25:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 132D96B030B; Thu, 14 Sep 2023 23:25:52 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0E3BB8D0001; Thu, 14 Sep 2023 23:25:52 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EECFB6B0310; Thu, 14 Sep 2023 23:25:51 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id DA4056B030B for ; Thu, 14 Sep 2023 23:25:51 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 825FDC074B for ; Fri, 15 Sep 2023 03:25:51 +0000 (UTC) X-FDA: 81237392502.18.4EF90CD Received: from mail-qt1-f178.google.com (mail-qt1-f178.google.com [209.85.160.178]) by imf08.hostedemail.com (Postfix) with ESMTP id AEB0316001D for ; Fri, 15 Sep 2023 03:25:49 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="Q1FUvZA/"; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf08.hostedemail.com: domain of yuzhao@google.com designates 209.85.160.178 as permitted sender) smtp.mailfrom=yuzhao@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1694748349; 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=kfEJAb1Oa43f4O5YEz3j++WYlwhSssKiqqan4u4vMXc=; b=4MJ2qUySegTwpmq5ERHyPXbUXxHfO8v03iRi19dpROBaLfUE0gjahi2nswUeayS4Xghapr Y7F4nFONkLbNZ1qomtjhrNYQ69tTv+dGugoJDbUc6PJNRaaF65hYS2D/qPTo7LlMNKnVCo vxlXAEAoQWFAzh6JlTxXpk2r+YnvXHs= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="Q1FUvZA/"; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf08.hostedemail.com: domain of yuzhao@google.com designates 209.85.160.178 as permitted sender) smtp.mailfrom=yuzhao@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1694748349; a=rsa-sha256; cv=none; b=CS+C86TlmPIObHtIQ/2WvFeGEy4vIKw21rELQzIaafnAvPD7XRBEL1O2gASmDTpSR6hIJP TymCt9mAef02lMeMISIWDhgxNWJ++Z1YcbvWw80NhNrZr9rZNz71g/fWcmrn5jKyYgeHaw WZPNBO8EAap+s8n2iQ+XlGNVb8Ja78g= Received: by mail-qt1-f178.google.com with SMTP id d75a77b69052e-415155b2796so112191cf.1 for ; Thu, 14 Sep 2023 20:25:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1694748349; x=1695353149; 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=kfEJAb1Oa43f4O5YEz3j++WYlwhSssKiqqan4u4vMXc=; b=Q1FUvZA/6lxrVGU6X0nJZOPhOGSiIMxjdx+xt6Fu/b/GrMXCtnNNLZ107jgUIxJ6k/ jwIf8c8pKXR7jjY/vAXOLx3LNDqc4HLtzRmAr1OgJPupWc17uERiRJjiEqERaIWyfXPt VnPIm5KylFEQp12WS9tQ0ep80TSMvNp5DQhTypD+H6s3b4IEMHtqK/AKhK5tSXS9uOgr HkM9g+iGVhUcC+vq5LgZBwO0FA//ZUVXVNt7KXdl8/R9BmhQ2qdOiB/BSaxqBwV7dTa3 1DbSEs2K/cgTNuaO2MKR76tA6gNnoiyfBlP08exCxH8BgG60tpUsC1S3c6afmch3N8GP olRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694748349; x=1695353149; 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=kfEJAb1Oa43f4O5YEz3j++WYlwhSssKiqqan4u4vMXc=; b=vZEjDrtDah1afjULyEf1Sz0JTfK41Kb+lZWj6lHF1Ye3LGiqEocrrEW6niJBEOexdf II8SvIWteuNJkoYygb/4uFcH3sqBGZROwMxAzlhMq5E43xDl2XMZqvj9zc4p3gW2xic0 oAIUgJeqQFFcB6P9VeFx+3DQDnntt4Yf9muOHCJdvoHhwKsSJq4uSX8MJvcUs0hA30BV oW1BMaH3GkUXUo0BsfUPiEkqg2Ptk9JDdpnWkru9dEyX7KXc5+r006Cu8a7pGPfFwodk BmJF8FjVhBqr5KTGCOBuL6BjB63v4rLYNnVWaufVZa0TJcW+ul/wXUiB47Or8NjUd6s4 qngA== X-Gm-Message-State: AOJu0YyWK13UtipkkpfUsnOoHxVSlBi8R1O6Tt30KPvR4miUim2PDTVU 7gsoYPdE16TWlyQKpamN8OhNUiLXoj0UGaSznsLVQA== X-Google-Smtp-Source: AGHT+IEdmRI/AeyGbYGXZEVYz1wokGH6qYqLgtz4EqSaNq3jxHSXHSd0UP5c3n8USlIx3LalHoys0zearPoT0fT7pd0= X-Received: by 2002:ac8:5707:0:b0:412:9cd:473b with SMTP id 7-20020ac85707000000b0041209cd473bmr143007qtw.4.1694748348614; Thu, 14 Sep 2023 20:25:48 -0700 (PDT) MIME-Version: 1.0 References: <20230914140823.1732-1-justinjiang@vivo.com> In-Reply-To: From: Yu Zhao Date: Thu, 14 Sep 2023 21:25:10 -0600 Message-ID: Subject: Re: [PATCH] mm: mglru: fix add unevictable folio to lruvec->lists To: =?UTF-8?B?5rGf5b+X5Zu9?= Cc: Andrew Morton , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , "opensource.kernel" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: AEB0316001D X-Stat-Signature: y3c1de797nsxjqx8puhktcpcr1bfpi7x X-Rspam-User: X-HE-Tag: 1694748349-524653 X-HE-Meta: U2FsdGVkX1/l7Bua71QJ59pKznecuF8hqVLzohR+dL06kd/bnz1SVlqjoMUlp0W7i+5d9TJDrfcSAaDYMsBmpx5DEofXCLWKU9jlwvNAFzSHikqC0WnAAJsN7yCs4B9cye64QoLP6kzx1Dr4BIQgwPrqrfeTxrjBu1NX9aqSyQxPqnYKFRc1JuXrSOp18uUlDYrA6wR93AQMky4Joe2CnfL6K6658ibstGFoSotTR9YmB/2ffsN19UmddMeP6YZLjhSlQmb/20Ui/fHb05GiV0qrs4NokSJQ/mO4pLV7cb84N119LaPwKZqK9UpdATNME46pbkt35z3xnxoppD/TavWITZQuE5qxpeYRSntfMURQKDAF6v1O26DRvhbPx4C8WT57I4tNwvXy4zITlBFRXiSje1EzJ7P0h6TpMFwctM0M9RYj3BE1z4v1fhlEj6kFLFBeSPhwVaQ1kNt3+KLGPZyM4/n8ONdJV2104gwUoVMru8sU+mq8hsBAJZGhOVhzatRZea5FuhMEWpEk0Hez8UcUUIcKl4j5qaO+0Z41MKEnreQfR5S0kvZ8wgkQ7MEkMv2aQfpiOY8WFbFo1/RWNMn57OS4rTl04rWM+3/nB52/pYcCviB8D86hwDkjpkLBKe1rrnlNtoZbmbHkiM3Q5LQ6mbbvswbTsZZYf5rtTeDdcmHDNAjO+B6N63r7tlZXyOe+N9svS7PHY/Yr9ZxTPLslJI4zg1J2lJ6Ow2ttVoMIKIdaDk1p7P8ri+h6bwdk8PjEOTXL15nK9vG0QJHBpaDdGBmVI3Hgwh9U3CBG7dIId0P6p+3hGyOLjkBUSNxX76c7V9Z9Q9WP+6sgwbj2TVuI43YGBmhN3rtdPk4etoEAM273O3G4X9g/ORWC3H6Aam3CElyIeAKaJBUglWzH961jL+KPSwit+FSMUCcnpe7IA+oL/rdJ+dZUFJAWA9IyVwN2FvMyZnWxLT5P4jY EhUTTZHq kF4d0V9sHwj23cxEMDLOr+ZQwiCD2WKcISqDJriM3jml6zgyncC8OHGhAX38RE6YVgOvggScJwWYmseKZnoWD+uB/NNlzckYrFoZVQhNznPNrtmxq484oakGy3Zf43TZU1FUfOaqZ160gOXGkFuPyZU07zbaVCnb0VmPSdHO3PcrDYUL+lxhWsouGXFbxmsJqaj1QyqAzHO5r0ZreAHr4aR3RSMtyF5kMmUc/SCcfCCypJjCXNWW1929CB/yPtRfLu15eouo5JiW9RaRi5ywMipyfxKdFQvgGEUCRvAx5YsVFKoVIuc6lYc7l6xIzN5+79xSflK/ee4LzTXX9VSk/eRfQtIjVcnYU4+PQbSvMLpR8nFEuINt1BNp0GxjKZLHU42PK X-Bogosity: Ham, tests=bogofilter, spamicity=0.000024, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Thu, Sep 14, 2023 at 9:19=E2=80=AFPM =E6=B1=9F=E5=BF=97=E5=9B=BD wrote: > > Hi Yu Zhao: > > How is the unevictable folio managed in kernel? https://www.kernel.org/doc/Documentation/vm/unevictable-lru.txt > On Thu, Sep 14, 2023 at 8:08=E2=80=AFAM Zhiguo Jiang wrote: > > > > The unevictable folio is not supported to add to lruvec->lists in > > lruvec_add_folio(). > > > > So use lruvec_add_folio_tail() instead of lruvec_add_folio() to add > > unevictable folio to lruvec->lists in sort_folio(). > > > > Signed-off-by: Zhiguo Jiang > > --- > > mm/vmscan.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) mode change 100644 =3D> > > 100755 mm/vmscan.c > > > > diff --git a/mm/vmscan.c b/mm/vmscan.c index > > 661615fa709b..a15e45632034 > > --- a/mm/vmscan.c > > +++ b/mm/vmscan.c > > @@ -4237,7 +4237,7 @@ static bool sort_folio(struct lruvec *lruvec, str= uct folio *folio, struct scan_c > > success =3D lru_gen_del_folio(lruvec, folio, true); > > VM_WARN_ON_ONCE_FOLIO(!success, folio); > > folio_set_unevictable(folio); > > - lruvec_add_folio(lruvec, folio); > > + lruvec_add_folio_tail(lruvec, folio); > > __count_vm_events(UNEVICTABLE_PGCULLED, delta); > > return true; > > } > > NAK. > > lruvec_add_folio() > { > ... > > if (lru !=3D LRU_UNEVICTABLE) > list_add(&folio->lru, &lruvec->lists[lru]); } > > lruvec_add_folio_tail() > { > ... > > /* This is not expected to be used on LRU_UNEVICTABLE */ > list_add_tail(&folio->lru, &lruvec->lists[lru]); } > > struct page { > ... > union { > struct list_head lru; > > /* Or, for the Unevictable "LRU list" slo= t */ > struct { > ... > }