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 C3E3BC48BF6 for ; Sat, 24 Feb 2024 22:08:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 11D536B00D7; Sat, 24 Feb 2024 17:08:29 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0CE0F6B00DA; Sat, 24 Feb 2024 17:08:29 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id ED7966B00DB; Sat, 24 Feb 2024 17:08:28 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id DE53C6B00D7 for ; Sat, 24 Feb 2024 17:08:28 -0500 (EST) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 7659E16043C for ; Sat, 24 Feb 2024 22:08:28 +0000 (UTC) X-FDA: 81828087096.20.C275847 Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by imf04.hostedemail.com (Postfix) with ESMTP id 57A3E4000F for ; Sat, 24 Feb 2024 22:08:25 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=Yi1+wEyM; spf=pass (imf04.hostedemail.com: domain of sj@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=sj@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1708812507; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=CldFco2vof4c8GCy52Clgaq7STZByCtUwtZg1HNR2Fc=; b=D0vQpSJ3gEu7x+1c82tsH3Do3QDSI0dQ1NXvOrlFZuY5/CHzvq1csSbByvr1EJqJCGRXo3 XciMoG1Cca2orrD0uvTIpeugzylWUbqcdazfi3XZqo/NLybgeGYSiWKeV+GP34+unVWQmj Mu9CrQQOX5BnH6oeKiXko/xGHnscfIE= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1708812507; a=rsa-sha256; cv=none; b=LZWXJEts+24wvQFfXAp2Mq6OwC/zGng6iWbL3SjbVtZh819KelgVG8rEc5tbWQV5azATYM aau9nm6BHi3VyErXEFGEl4aJftZVT86t4Et0xIlkbUdFL+PCesHyE6SlslGeiVEeDWBm7j kwW7CDmOew57RpYKRK0zcD+NhoHhgjQ= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=Yi1+wEyM; spf=pass (imf04.hostedemail.com: domain of sj@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=sj@kernel.org; dmarc=pass (policy=none) header.from=kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id EBD5CCE0E76; Sat, 24 Feb 2024 22:08:22 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E302BC433C7; Sat, 24 Feb 2024 22:08:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1708812501; bh=ADFjQxG/AhdapZ5PMm8RKhbeE27ny3x7l4wkghgcu7c=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Yi1+wEyMJe0GOA+eqYdg02KZKznkZ4hezi7j2W5FOnOnpKDoeQ3LApOJq5Qv1nzf8 YGqwCArnPPyP1xiQbsJUwG77txta95HaLoPNAtZL/T6O1qbcp2UvA2Ozi0nXzCgz3G FEQ0vEGa7bdUfAe4OBhykIZXKMeU4jMpSdmQsfr4y8so+M70X53NerfbEPN6W6jN3d evoOoeDSt3gvMPheVjhSl9r23WS6dxLFjzb7Qz6CT6781HhU93m9reCbGnfk0SmZtc KjF14ap2ioX2PWXBI/gJwV5/shTGuSihvgeitBB3VvLbuucBFMhPDhvKRvO3gwVPUN MNRBusuCmEeig== From: SeongJae Park To: Barry Song <21cnbao@gmail.com> Cc: corbet@lwn.net, linux-mm@kvack.org, akpm@linux-foundation.org, damon@lists.linux.dev, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, Barry Song , SeongJae Park , Minchan Kim , Michal Hocko , Johannes Weiner Subject: Re: [PATCH] Docs/mm/damon/design: describe the differences for pageout's virtual address and physcial address Date: Sat, 24 Feb 2024 14:08:19 -0800 Message-Id: <20240224220819.49277-1-sj@kernel.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240224215023.5271-1-21cnbao@gmail.com> References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Stat-Signature: jwxdikzz5e6kx5u6fx4cnu39s6bwcwcj X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 57A3E4000F X-Rspam-User: X-HE-Tag: 1708812505-149092 X-HE-Meta: U2FsdGVkX1/1OmQzTHxVpHWFH31i4OvaO1Q4gBEIUKaAE3Hj2I5Tzbh3pGgGHQuuNRF3vAYboKvapnUQaC2q349CH4r4uit+eydV8Jrb70nNknbEbMsNUHkeJQH4ict/5i2ezGKNnPgPV6VLzA1uT0ngI9rSAvi7cuOS0NEDGNSxNLHfK4wsat/5Hvg7sKYRbVfTTdmCLMMxw1/UxHTLB+6IcUMSAGfC7OT+XKKGyLf5eBrsohFOzbc82ElxLwBRGknw7NDvOLvMfmtOpRSVTt6OIlaQmxrLSDkeVF7c+3lzjCuxzYbizBU4YsuAPVmCPHnXsEyFd0+XHfOVNp7u8ORlqBz9ApHFeyWQDoKb/XfuPdkxh3zVzOOt6GAUl3BGVJW4Py5sgRJ02RdE79za6hW2h86royxM4M5VKqqL/Cd578+GMiQigEQHzUqMz3bwcf6zJf9zvABLUQZlvw14R4VYWz7YA4SgYNohu1+9rBQcIrcZN+V/Z0yKgWewMyhZfmIpQoGeBQvC/NPVny2H2uE5dM/erKUlzLTmPwEpY26aangpyswNiGQ2+jl/HCtrzld6OLkGb+wd9q+KvnG9EBc4vCxAHLWriQ4EBoUmFA1lW6DcALYRNPBUei4n/Rfwp0H6xiuZaiPSPJV8p1d9hl+WqRJJVSSRieB3ywWZNFfGR33cBnGqvfWx2LFAt61+kOiMWNqvUzBLLfv/kdh7seRGkGTuTrMToiOnM8DR0oNaIb5WWP2+PXcIPXKwjjGeRCpiFETeNy/hdgLKK5OfkCQEbeSGi1S8P4G8hC7srjCgsJJUA34/6BtGHSOzqklgdpOATjE10A6hHIBPSVTDJ0n0NgIum9EZtJSN1zLxIXet7b8DVW0h6j0Nb016q8rnzCdRPqer2t8rCUDFVtEtOOD2bDXGaNY90eiH9aPG1avgSMYD03MiNw== 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: Hi Barry, On Sun, 25 Feb 2024 10:50:23 +1300 Barry Song <21cnbao@gmail.com> wrote: > From: Barry Song > > The doc needs update. As only in the case of virtual address, we are > calling madvise() with MADV_PAGEOUT; but in the case of physical > address, we are actually calling reclaim_pages() directly. And > madvise() with MADV_PAGEOUT is much more aggresive on reclamation > compared to reclaim_pages() on paddr. Thank you for this nice patch :) > > Cc: SeongJae Park > Cc: Minchan Kim > Cc: Michal Hocko > Cc: Johannes Weiner > Signed-off-by: Barry Song > --- > Documentation/mm/damon/design.rst | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/Documentation/mm/damon/design.rst b/Documentation/mm/damon/design.rst > index 8c89d26f0baa..6c50743552f5 100644 > --- a/Documentation/mm/damon/design.rst > +++ b/Documentation/mm/damon/design.rst > @@ -315,7 +315,13 @@ that supports each action are as below. > Supported by ``vaddr`` and ``fvaddr`` operations set. > - ``cold``: Call ``madvise()`` for the region with ``MADV_COLD``. > Supported by ``vaddr`` and ``fvaddr`` operations set. > - - ``pageout``: Call ``madvise()`` for the region with ``MADV_PAGEOUT``. > + - ``pageout``: Call ``madvise()`` for the region with ``MADV_PAGEOUT`` if > + the region is using virtual address; otherwise, call ``reclaim_pages()`` > + for the region if physical address is used. > + ``madvise()`` with ``MADV_PAGEOUT`` is aggressively reclaiming memory > + when pages are not shared by multiple processes. Differently, paddr's > + pageout will do the best-effort reclamation by scanning PTEs to figure > + out if pages are young, if not, pages are reclaimed. I think this might be too much details. Especially, explanation of ``MADV_PAGEOUT`` might better to be done on it's document. We wouldn't want to update two places for future changes to ``MADV_PAGEOUT``. What do you think about making it simple and independent from the implementation detail? For example, - - ``pageout``: Call ``madvise()`` for the region with ``MADV_PAGEOUT``. + - ``pageout``: Reclaim the region. Thanks, SJ > Supported by ``vaddr``, ``fvaddr`` and ``paddr`` operations set. > - ``hugepage``: Call ``madvise()`` for the region with ``MADV_HUGEPAGE``. > Supported by ``vaddr`` and ``fvaddr`` operations set. > -- > 2.34.1