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 36D87C35274 for ; Thu, 21 Dec 2023 04:54:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C40068D0003; Wed, 20 Dec 2023 23:54:00 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id BA0A48D0001; Wed, 20 Dec 2023 23:54:00 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9F1A98D0003; Wed, 20 Dec 2023 23:54:00 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 8DE138D0001 for ; Wed, 20 Dec 2023 23:54:00 -0500 (EST) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 6E04C1C0B68 for ; Thu, 21 Dec 2023 04:54:00 +0000 (UTC) X-FDA: 81589608240.25.BBCEF74 Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) by imf17.hostedemail.com (Postfix) with ESMTP id 9278D40009 for ; Thu, 21 Dec 2023 04:53:58 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=yE6K0LBJ; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf17.hostedemail.com: domain of yuzhao@google.com designates 209.85.128.50 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=1703134438; 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=8k0cAPFS7LLAsUHdO/FR/5DuAwii6esQYDIfaewZ8DQ=; b=h69xjqgpIkDzqwRsEa2BLo7ruMeQe2wch5UXO7/JnCYIkaFAEI+EN2t6ELKsskaChxk+9u KKpUEVBX9by4WVwNJ/DrwrP1SrXH3ZJud75oEWioug38V1RiBEhJxkXJT6KC5hF8zHOMzz FAB4Ixgm11S3PXFo7O75ei8RdKq1Ozs= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=yE6K0LBJ; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf17.hostedemail.com: domain of yuzhao@google.com designates 209.85.128.50 as permitted sender) smtp.mailfrom=yuzhao@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1703134438; a=rsa-sha256; cv=none; b=QXT8fzpz0J9p3cOlwVS0Of7dBFx6S3vnpNqRKjp6brAlXTBuud+kDkbdLuDug5j91nkF2a aNen60LTGraiz47C1VQNXy2E1FPA4mPmMC6PXLfUKfhN4dy6rCkokMub9a7sTBUNOJaUun Uz4g3i1wk4u9WeIL4mx6PlyCtGQq4PE= Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-40d3b2c8517so19095e9.1 for ; Wed, 20 Dec 2023 20:53:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1703134437; x=1703739237; 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=8k0cAPFS7LLAsUHdO/FR/5DuAwii6esQYDIfaewZ8DQ=; b=yE6K0LBJi1LSJtlVK7AxZvAkjeACJ4VB0uayGfQ3ow7CRGNBRrUmI6rk7dUPw+fzVd 8oS5uBd4hMB7LiLYTp2w7kQVQbwLRMOXO/YZWxwDzw4LNLDwWHhZUW2dC6pgoFfD+/uw kjzQP8u2EfbZf+bWFGLqQeaicWDsGb6SfP3qprk1MI4fwPMQ4ebbk/z0Rqk3oq+HHA68 tC/XCab2B10vCjnVmL9VNWl0J1CGDq6fvGuzy1+hDbcWQayJjd3nq5shTmH+Ay4lIx3S 5IkVt8PGaNP+amllQrrd+GO6+aQ9xQWFgayKWqI1KDtdjl73iaC1UjIQU3CVAqcJhWSF bdlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1703134437; x=1703739237; 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=8k0cAPFS7LLAsUHdO/FR/5DuAwii6esQYDIfaewZ8DQ=; b=XCFxII6W8J97WveD2NEeJlG43wI3IptYh/IQU9B7lTFJxXMlF11RHEc1/zZc8BWVKa iLlduosY9keAsqGbb5yKOdoI8+xjqyc5+bLh8qSKzh9q+k2v3QeNBJeTw3XP4Bwp1/EH LxS3vg22YSrxRPXjCEfFJYKP4iSZ0zZ8RA5CjBiKslHb36AZWQ51cCP2n2Q/OlhO/U/1 DB17Kt/XF/h6Newqad7ezseEh0FZlS+CKxhWnncmmBnjffTQTOLQOctfzuzYNRDGJQtd Eqj9gfHj9w2gOHL+KyE4m0PRVSEUz9ayANcjMFv/qQUOZgR8fTT3Vg7bI5QiSiwLd9Ak XsVw== X-Gm-Message-State: AOJu0YxWR+yjB5duYJv9loERh70Uf2Cn5FuHlXgJUMimFjyBaTzcEqAn urXDoOtzSrhcJRKh3ljoa8Z4Wocua20w14xLaoTHLaal0/Yj X-Google-Smtp-Source: AGHT+IFe1VETlZKll/MDbpRMTSVMFHC+QIFL9ULnK0v5vAQpf0kjul7d3jojq4fBlBIvOZ83nP3FPrsBrvS+leDx1EQ= X-Received: by 2002:a05:600c:5487:b0:40c:4ed3:8d1f with SMTP id iv7-20020a05600c548700b0040c4ed38d1fmr17340wmb.7.1703134436906; Wed, 20 Dec 2023 20:53:56 -0800 (PST) MIME-Version: 1.0 References: <20231220102948.1963798-1-zhaoyang.huang@unisoc.com> In-Reply-To: From: Yu Zhao Date: Wed, 20 Dec 2023 21:53:19 -0700 Message-ID: Subject: Re: [RFC PATCH 1/1] mm: mark folio accessed in minor fault To: Matthew Wilcox Cc: Zhaoyang Huang , "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-Server: rspam09 X-Rspamd-Queue-Id: 9278D40009 X-Stat-Signature: k8s3s86zkoaehbc6jhe6za4ogzxrqxss X-Rspam-User: X-HE-Tag: 1703134438-708958 X-HE-Meta: U2FsdGVkX199yTipvIMvGvuTrDnlVWMcNN6NOhEnGzpIuxTw7v0bUVnL2SOPOxuSqO4jKOxxOCUxnU8N4q1AvM+GakvfiAFXLiEz+GV/7R9iiKRTGD8+olLni4XQ6VnPcKeN8oan/R/ztfwOZypY2TCZ+Fm3FaH4mqmb7aFcPGoaR53rpMbnzV3fEAig2Y9Fkp+xi8Cz0nsI01e2jovg0grxcxQhkB5xuRqX/4Pzcj7owb/vgwxnCEtZWV/1s5GHb1IU9ZrmiJzJVUaq35d3yNEba8lvc3EqGrtEQDUxk40bsUAK51Rp/Ro8MegglyAJ9g1nqI/gUA5PwUHOcT+zzYl5td3ET+fqOcl/AHy72Hzg93YdJvNC0Hn/dnhcbYNacwxAc1/1NvFbLrvLhgab8Xpa19zGG9k7wMR5QZ5BD/3Sz2oNXGhfF2JIO8/yx3+MqLrAqOiCE07Md7o97otlcOAlfv6WMpiuNL42C0LBU2A6khOj65/YuqgoZCJilcjQrsdhG/u7dqTfMYv041LNL2FnBgIzO3cGwUbp//ynZn/yHFK+s84TOS5PEQYMm4aE1oTn+cB8BLBvw+cl3nqH0Yw9JAV1D1Cs8oDqhwGe4ekjyT3Yf3azB7qg5Bpdw2LeOxwX2Oxp5Tbu1ESpiq3q3GGWg6PoeQCieBKFli/Btvl1FXDHVsMBHLy5v+PQynLOQQQcxLWy6GGaRBHQWWPv7Zh22EQTsmYViLf9+DeBZvP3mvImfMxvMjfxNzNNdnNmhUd9/+i9ikOJ5qzBM7PVm8jApXd4v+8pyQo7raAD3IcIk4qs5mcXAJtqx1BITTZ6O1E6tG6JWpL+epIwkY4+a3JWEMtnITkrXlH+gZynPT5duook4TrrNYbDrXDd06C0zTpATwmM18XY6aX9zWq9GDa90MoFmBIhFW+BSKHCXIodrgWAxTUFp9mUmMqD4RMFFLO9UmMIFf7f9sbU8VZ zWvcJWcd TEchs8LqUcaibPmxrvMvaoFUbJZxixKcykdY0CotAHBI2LNWARtgM21MYlrLFVxjTi0DE6udJ/q9En1+2tLa9WrkrHVi0vNw7bM3D3b+w9P7OynO9EJ60SJzlXKVbpD7IdAIu9QVCP6gKKfqtMdPuSnGn2GEDh81ShUOpJAMC7sy8uBy4lS66wREQLe5Ruf2cPxZNj+/GBfJLt5tFlYdJeQjZjcKqum8FdtXY/QLJkUm+31iEIjDVhw4q2Z3ieepr0bYRtuMarK+WhXKDGKX7aJZoKiH8PNdL0Gr3SyCUQ4SudgV+R8HV64ka38OTWz9XyQOIhJilzls+XdGZM2Bp0rvQsQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000032, 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 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 affections= : > > > > > > > > 1. NR_ACTIVE_FILE is not accurate as expected. > > > > 2. Low reclaiming efficiency caused by dummy nactive folio which sh= ould > > > > be kept as earlier as shrink_active_list. > > > > > > > > I would like to suggest mark the folio be accessed in minor fault t= o > > > > solve this situation. > > > > > > This isn't going to be as effective as you imagine. Almost all file > > > faults are handled through filemap_map_pages(). So I must ask, what > > > 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 goal > > It's not a terribly new mechanism ... filemap_map_pages() was added nine > 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.