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 17E71C35274 for ; Thu, 21 Dec 2023 06:28:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5A19D6B0082; Thu, 21 Dec 2023 01:28:31 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 551D86B0085; Thu, 21 Dec 2023 01:28:31 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 419906B0087; Thu, 21 Dec 2023 01:28:31 -0500 (EST) 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 31C796B0082 for ; Thu, 21 Dec 2023 01:28:31 -0500 (EST) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id E392040644 for ; Thu, 21 Dec 2023 06:28:30 +0000 (UTC) X-FDA: 81589846380.14.78D662E Received: from mail-lf1-f47.google.com (mail-lf1-f47.google.com [209.85.167.47]) by imf04.hostedemail.com (Postfix) with ESMTP id 1BE9B40014 for ; Thu, 21 Dec 2023 06:28:28 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Hc8XdtbL; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf04.hostedemail.com: domain of huangzhaoyang@gmail.com designates 209.85.167.47 as permitted sender) smtp.mailfrom=huangzhaoyang@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1703140109; 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=Xoc5f346mwBITD9hfhI7l4joWWp7V2JrgZ3awG0UfKk=; b=AZjlg32mVQIRTkAKHqOwhYEmPQ4urbDI1Cx4pYBE3xXQWsZY3G5zt20Db+CqTyXlpNH51K KM0tX5n9QTv626Q4bdQAl95ysE9NnHKjcrn0T6WCNr4+hL0RuF8taPACq3/yTaa+7WhU1+ pXapKvIV8fvtUsC84qFsucxxZjpY7KY= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Hc8XdtbL; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf04.hostedemail.com: domain of huangzhaoyang@gmail.com designates 209.85.167.47 as permitted sender) smtp.mailfrom=huangzhaoyang@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1703140109; a=rsa-sha256; cv=none; b=s1ozVM8o8uYypHugxXvy3m1H5KRyqhtCY19ZtDkdKctkQ5Vgi9Hmh5gn4b1tFIe8jg7WfI e5w7Gjwp3VQl9hCZj+B5F6UhuXuHams42LIGCNyzi4ljE0NfxC8ULX/ZNtQQRWEPpQ8vWd VO8I57MYZixCAML+uOp9mNuTmzLXRVI= Received: by mail-lf1-f47.google.com with SMTP id 2adb3069b0e04-50e558e16e7so412635e87.1 for ; Wed, 20 Dec 2023 22:28:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1703140107; x=1703744907; 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=Xoc5f346mwBITD9hfhI7l4joWWp7V2JrgZ3awG0UfKk=; b=Hc8XdtbL3gxV+QzxfijiIn5nuvmgK//SIhRAiZnXVHdXvTMKtsfHrI0nlg0zwiL155 ozBc3FJzSwCGZQrcjaI8nB2FCaRDIPnNwp8RUJbGIx5e8lo2mAulV2KN5ZeBqDCp8FL5 eToVexdnITlGrtwmQ8Zdqu+tVpDZG+f2+btwLSgQah+9ppvUM+zdl8Sg9UotvJ+8yhap 5qjtujs5EHyq2gi0AGb3RZNwgWKeolyUk+acWV2+LpLnzto7NFq3RBb+5fOkdazyuB57 vrkt0s0F31oG0E3r01689Q9ccwC1nS762e2u2gZIXqu+51lBAmMcok0yi+mLLl0VKz6F nZQw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703140107; x=1703744907; 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=Xoc5f346mwBITD9hfhI7l4joWWp7V2JrgZ3awG0UfKk=; b=XIbntYTL18sDAsXHDmK4plenuzqzza+6aRUSGP89a2zAOzm15udHbV4qrgBtxoZCl6 0IJANJDf54/KPN0RclfIuBT5heBxXaz8TKsXpXZgAcWt2aqbmqieF9kXHQtdC7NFKWnc JG7tPEP2v8BjyE/cxaIC9Q2MaS/05SraSiDMRoNILQ/slh7rYVb0mUrZeIZdBzyQyKJ/ XlQMUp7NcK2o9zYFNo58Z/zKIb2SqV3OarwLntqz3m+Oj+IMST3aacvm99yRXCoOO/ar PkAqnY7AtW/QUWVHeD83lCcyuQpNpoQ35a7bX++H3Hol1686V6oZZphP8lwP90/QKjl5 bHww== X-Gm-Message-State: AOJu0YxTWncvE0WR+MGG8KbLDR2BcVfKur1ejrrphtyOymb/wWBQjM7h IsWQ52KnYt4Uly9M8eYfe8VxJ1mZG3VeW5XwI8k= X-Google-Smtp-Source: AGHT+IG4cXM/WysvMMpvkxb4609A6sU4+Vn65gDfQuqrpY8y7n0U3KMUBBBldq8UQdtTPDti8Q3eqclUieNFFnGctcY= X-Received: by 2002:a05:6512:312b:b0:50e:2864:e90d with SMTP id p11-20020a056512312b00b0050e2864e90dmr127204lfd.12.1703140106968; Wed, 20 Dec 2023 22:28:26 -0800 (PST) MIME-Version: 1.0 References: <20231220102948.1963798-1-zhaoyang.huang@unisoc.com> In-Reply-To: From: Zhaoyang Huang Date: Thu, 21 Dec 2023 14:28:15 +0800 Message-ID: Subject: Re: [RFC PATCH 1/1] mm: mark folio accessed in minor fault To: Yu Zhao Cc: Matthew Wilcox , "zhaoyang.huang" , Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org, steve.kang@unisoc.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 1BE9B40014 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: rf6izf4oc3tdukkmesup3hu5d7h7j5yg X-HE-Tag: 1703140108-835514 X-HE-Meta: U2FsdGVkX1/4YOKJGFcAmnXfurXrkyMCfgHvwon+ueoFLls4CgP02Zm2lge7IbDdG2EMXvjBgurMtPkcO2CRqDv17QE4201io2xE3Vi3Wlf0yJEwcw5JsCKSNEoEbxmuWjbsTUIVOSAwj3pMZC79C+0hnU6k7j9SAC3cwxE/IUbCHy+zjjFLgUaD0RlNhLzLAEyDvozsW3VDTbq0ZKuj3kckaN27TW1QzW81RaZh4I0efqnFPVAPpg5Z2Nr31nM2F3Sal8RnEf39yvYSOwxwaCc9yK5onRHoylzh6yeBFoX9ZHLFim4lIbOVDE8rD7C8U6qp9pNPjKS/tfu9KOv4Rsh6qOAAIFiK7DiD4D6KDVtGaJ0CoqBWHfczS27MzM7UaNl5vdJK/Hsjxys492WF2tSGh+lJ2fxPx2x7kF6TtLwcBn93tyilF8jaWVOV4XZ3Bdw+ek1RAGStwQB8H3ITN7YucuyaE6sEveBKeCwl+7EVm7Lekmwxg591WqlCZidVxmyKEUwiEPlFSY+Hr1rKSTQk0pbObedUkMlfeSkD/75ZKqJ7vTPvLsGx7l9VzNWw8EaNPPf29nJfL91DmeAIkDRmCTtSFeUXmSlJxLJhlqLOycvRyOP0LNz9HHhRITxRI39A5yBsYGIVotLZyrCagnN4bUZYErhsZnVsovTtnkW6m5Q9Xjbl/BzBGQcO9PVHQdEzelS4lmegmUqTuR2SNFWC5vOPg8vpOBOj0DiMkQb7UtaxWmvIeysjslxpGzj1MuKfCVoe8TPrCtPm3vf3MUqpMT5LdnYzZ0/XAVrAclXsam/kzfAyhSBLLb3xKupxwKbBbgaw5wL+BxZ7oQzbqmcKTw5GnKUzJiOVdENtMwLMoY+3QKKkTiQvmP8VXjK17Z1XlJb4YQsT++ByqDNflvA7hlDWQdnu4ISk+RguN+VWn4bP9M6oWKuPv6WBmIFBTT+vYG/Ba9Fh2F9n8V0 Z02dfeL9 6HJahzNQH4YIsg4nIerXVjmYQ/UxObAn4048D6RU+c9lw+U8X8g6oeDu/5RQnpbCbeXyDQpp/qx/H3830i9I2fuPdIcJlUexRYLIZZFf9cyDs9Jky5T+qFhEU7MSI9plCY8vFi+YjxUzau9PI6v4l2wjF3pWtvcGkBpNeE1I1nPhWsjDRoWgxLf91XApKgFHmtDARA90rf9D48WrtkXxZ/zv5ldY/69qwxljT41kl0vnZ+I5H7dOaZYL7tkdJJ6Xi1z1PJfL5/be8yVR1Udim4XJH8Ut8jXtzsbnyVcy+3wK2PWYPGfWAm6YxKXAMmKv+7GPvr+wsrznCKVcHl0pmXBAX2Nys7ckBPt5sX00rGUnlp3/TL+qjpx3kFsnu7VJC6whjQcnnzT1cr9SH41p1bB0KQOJJVwJf37jzmJtw0TiQyZnz0PVHwiQDeG6lvsyy7sDB3q1aa99KRtZ7b0xNcrH/8zyxcme8pB3wdbuaLdIsBcwQfGYW6OOBQQ== 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: On Thu, Dec 21, 2023 at 12:53=E2=80=AFPM Yu Zhao wrote: > > On Wed, Dec 20, 2023 at 9:09=E2=80=AFPM Matthew Wilcox wrote: > > > > On Thu, Dec 21, 2023 at 09:58:25AM +0800, Zhaoyang Huang wrote: > > > On Wed, Dec 20, 2023 at 10:14=E2=80=AFPM Matthew Wilcox wrote: > > > > > > > > On Wed, Dec 20, 2023 at 06:29:48PM +0800, zhaoyang.huang wrote: > > > > > From: Zhaoyang Huang > > > > > > > > > > Inactive mapped folio will be promoted to active only when it is > > > > > scanned in shrink_inactive_list, while the vfs folio will do this > > > > > immidiatly when it is accessed. These will introduce two affectio= ns: > > > > > > > > > > 1. NR_ACTIVE_FILE is not accurate as expected. > > > > > 2. Low reclaiming efficiency caused by dummy nactive folio which = should > > > > > be kept as earlier as shrink_active_list. > > > > > > > > > > I would like to suggest mark the folio be accessed in minor fault= to > > > > > solve this situation. > > > > > > > > This isn't going to be as effective as you imagine. Almost all fil= e > > > > faults are handled through filemap_map_pages(). So I must ask, wha= t > > > > testing have you done with this patch? > > > > > > > > And while you're gathering data, what effect would this patch have = on your > > > > workloads? > > > Thanks for heads-up, I am out of date for readahead mechanism. My goa= l > > > > It's not a terribly new mechanism ... filemap_map_pages() was added nin= e > > years ago in 2014 by commit f1820361f83d > > > > > is to have mapped file pages behave like other pages which could be > > > promoted immediately when they are accessed. I will update the patch > > > and provide benchmark data in new patch set. > > > > Understood. I don't know the history of this, so I'm not sure if the > > decision to not mark folios as accessed here was intentional or not. > > I suspect it's entirely unintentional. > > It's intentional. For the active/inactive LRU, all folios start > inactive. The first scan of a folio transfers the A-bit (if it's set > during the initial fault) to PG_referenced; the second scan of this > folio, if the A-bit is set again, moves it to the active list. This > way single-use folios, i.e., folios mapped for file streaming, can be > reclaimed quickly, since they are "demoted" rather than "promoted" on > the second scan. This RFC would regress memory streaming workloads. Thanks. Please correct me if I am wrong. IMO, there will be no minor-fault for single-use folios which means RFC could behave the same as mainline does now? I think it doesn't make sense to have multiple-mapped pages filled in page_list to shrink_page_list since we can distinguish them in advance.