From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3E37936C582; Fri, 15 May 2026 00:44:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778805896; cv=none; b=p0JEVhdy05E3XTfSKkId6WsuSpFgBqUSYvXhYh1yAX7jkTCWXdiNwYjL3nllI4MEfzuH9fnkLGfBidLCxUqfr8tgrwwO5usCC09kpuz8ej6kmP0Y+Yt1sve3K2MF47EzRSSi46ExL6+5PXUTN2a39Y3xvqhVt7831neszCp03X8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778805896; c=relaxed/simple; bh=tDul/IalxWnHQ0Ddp/WnfpzD8FisANNYVxxNG1upWBM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=QMg/LWU5p1zgcc+ys5Ejia66EIlhW+wr2oLffWrvCMLvL8JaD1pDXf2UkIEOsjZ9Mg/8Prr4xHkirrf5EOISCWUUtKJeGhu9znNd/Gk4ivMTw7t6RJMCwc192ui2+zFPqNZu6QU+BMojoZTVp1xfz3wLiNF0vkXYWErjVwTaxN4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=pfdVnQ/D; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="pfdVnQ/D" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4E6DDC2BCC7; Fri, 15 May 2026 00:44:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1778805896; bh=tDul/IalxWnHQ0Ddp/WnfpzD8FisANNYVxxNG1upWBM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=pfdVnQ/DZlAwuHtdmFvz0ZaTBe8L6X+r92BtXxeeR5GRL3pjLZJV34yDp8B+97TU3 eoWv+zoOCcTe0lDZMTGdtJNzC1NGejzvKDznmGOhVEBhrGO8wK9x3Ez7NqevrUqq8F pmGvIEoDGs143WIzK4SQLkpn6Ar2u+rX/ri4KlIvkQjYr8YCWndhSEQgPVWBQzTx4I 1GXv5fv02z/x0uiTOuAq9/o7dN2gMFQgU5D42FvCok4S6zA7ryJJr2B9mf+D1qEyZG 2qtQ09OqQAuy5n0gd8p4ZFVttoA7jvizLcpnDfkrtS7wem9cvbgJC03mWxBKa0+gqp yux89H/ThgJDQ== From: SeongJae Park To: Cc: SeongJae Park , "Liam R. Howlett" , Andrew Morton , David Hildenbrand , Jonathan Corbet , Lorenzo Stoakes , Michal Hocko , Mike Rapoport , Shuah Khan , Suren Baghdasaryan , Vlastimil Babka , damon@lists.linux.dev, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: [RFC PATCH v2.2 21/28] Docs/admin-guide/mm/damon/usage: document data attributes monitoring Date: Thu, 14 May 2026 17:44:22 -0700 Message-ID: <20260515004433.128933-22-sj@kernel.org> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260515004433.128933-1-sj@kernel.org> References: <20260515004433.128933-1-sj@kernel.org> Precedence: bulk X-Mailing-List: linux-doc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Update DAMON usage document for the newly added data attributes monitoring feature. Signed-off-by: SeongJae Park --- Documentation/admin-guide/mm/damon/usage.rst | 46 +++++++++++++++++--- Documentation/mm/damon/design.rst | 2 + 2 files changed, 41 insertions(+), 7 deletions(-) diff --git a/Documentation/admin-guide/mm/damon/usage.rst b/Documentation/admin-guide/mm/damon/usage.rst index 534e1199cf091..44224da62533e 100644 --- a/Documentation/admin-guide/mm/damon/usage.rst +++ b/Documentation/admin-guide/mm/damon/usage.rst @@ -71,6 +71,11 @@ comma (","). │ │ │ │ │ │ intervals/sample_us,aggr_us,update_us │ │ │ │ │ │ │ intervals_goal/access_bp,aggrs,min_sample_us,max_sample_us │ │ │ │ │ │ nr_regions/min,max + │ │ │ │ │ │ :ref:`probes `/nr_probes + │ │ │ │ │ │ │ 0/filters/nr_filters + │ │ │ │ │ │ │ │ │ 0/type,matching,allow + │ │ │ │ │ │ │ │ │ ... + │ │ │ │ │ │ │ │ ... │ │ │ │ │ :ref:`targets `/nr_targets │ │ │ │ │ │ :ref:`0 `/pid_target,obsolete_target │ │ │ │ │ │ │ :ref:`regions `/nr_regions @@ -94,7 +99,10 @@ comma (","). │ │ │ │ │ │ │ │ 0/id,weight │ │ │ │ │ │ │ :ref:`stats `/nr_tried,sz_tried,nr_applied,sz_applied,sz_ops_filter_passed,qt_exceeds,nr_snapshots,max_nr_snapshots │ │ │ │ │ │ │ :ref:`tried_regions `/total_bytes - │ │ │ │ │ │ │ │ 0/start,end,nr_accesses,age,sz_filter_passed + │ │ │ │ │ │ │ │ 0/start,end,nr_accesses,age,sz_filter_passed, + │ │ │ │ │ │ │ │ │ probes + │ │ │ │ │ │ │ │ │ │ 0/hits + │ │ │ │ │ │ │ │ │ │ ... │ │ │ │ │ │ │ │ ... │ │ │ │ │ │ ... │ │ │ │ ... @@ -221,8 +229,8 @@ contexts//monitoring_attrs/ Files for specifying attributes of the monitoring including required quality and efficiency of the monitoring are in ``monitoring_attrs`` directory. -Specifically, two directories, ``intervals`` and ``nr_regions`` exist in this -directory. +Specifically, two directories, ``intervals``, ``nr_regions`` and ``probes`` +exist in this directory. Under ``intervals`` directory, three files for DAMON's sampling interval (``sample_us``), aggregation interval (``aggr_us``), and update interval @@ -256,6 +264,27 @@ tuning-applied current values of the two intervals can be read from the ``sample_us`` and ``aggr_us`` files after writing ``update_tuned_intervals`` to the ``state`` file. +.. _damon_usage_sysfs_probes: + +contexts//monitoring_attrs/probes/ +------------------------------------- + +A directory for registering :ref:`data attributes monitoring +` probes. + +In the beginning, this directory has only one file, ``nr_probes``. Writing a +number (``N``) to the file creates the number of child directories named ``0`` +to ``N-1``. Each directory represents each monitoring probe. + +In each probe directory, one directory, ``filters`` exist. The directory +contains files for installingt filters for the probe, that is used to determine +the data attribute for the probe. + +In the beginning, ``filters`` directory has only one file, ``nr_filters``. +Writing a number (``N``) to the file creates the number of child directories +named ``0`` to ``N-1``. Each directory represents each filter and work in a +way similar to that for :ref:`DAMOS filter `. + .. _sysfs_targets: contexts//targets/ @@ -600,10 +629,13 @@ set the ``access pattern`` as their interested pattern that they want to query. tried_regions// ------------------ -In each region directory, you will find five files (``start``, ``end``, -``nr_accesses``, ``age``, and ``sz_filter_passed``). Reading the files will -show the properties of the region that corresponding DAMON-based operation -scheme ``action`` has tried to be applied. +In each region directory, you will find six files (``start``, ``end``, +``nr_accesses``, ``age``, ``sz_filter_passed`` and ``probe_hits``). Reading +the files will show the properties of the region that corresponding DAMON-based +operation scheme ``action`` has tried to be applied. + +Reading ``probe_hists`` shows the number of data attributes monitoring +probe-hit positive samples of the region. Example ~~~~~~~ diff --git a/Documentation/mm/damon/design.rst b/Documentation/mm/damon/design.rst index aa08c899a3e5b..85d668e929194 100644 --- a/Documentation/mm/damon/design.rst +++ b/Documentation/mm/damon/design.rst @@ -269,6 +269,8 @@ interval``, DAMON checks if the region's size and access frequency (``nr_accesses``) has significantly changed. If so, the counter is reset to zero. Otherwise, the counter is increased. +.. _damon_design_data_attrs_monitoring: + Data Attributes Monitoring ~~~~~~~~~~~~~~~~~~~~~~~~~~ -- 2.47.3