All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ravi Jonnalagadda <ravis.opensrc@gmail.com>
To: aethernet65535@gmail.com
Cc: ravis.opensrc@gmail.com, ajayjoshi@micron.com,
	akinobu.mita@gmail.com, akpm@linux-foundation.org,
	bijan311@gmail.com, corbet@lwn.net, damon@lists.linux.dev,
	gourry@gourry.net, honggyu.kim@sk.com, jic23@kernel.org,
	kunwu.chan@linux.dev, lianux.mm@gmail.com,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	rientjes@google.com, sj@kernel.org, weixugc@google.com,
	yunjeong.mun@sk.com
Subject: Re: [RFC PATCH v4 0/9] mm/damon: hardware-sampled access reports
Date: Sun, 18 Oct 2026 21:28:19 -0700	[thread overview]
Message-ID: <20261019042819.1937-1-ravis.opensrc@gmail.com> (raw)
In-Reply-To: <20261017211613.16456-2-aethernet65535@gmail.com>

Hi Rui Yan,

On Sun, 18 Oct 2026 05:16:13 +0800 Liew Rui Yan <aethernet65535@gmail.com> wrote:
> On Sat, 17 Oct 2026 15:11:18 +0800 Liew Rui Yan <aethernet65535@gmail.com> wrote:
[...]
> > Later, I noticed that about 10 minutes after starting DAMON, the 'seen'
> > stopped increasing:
[...]
> I found that if I enable the kernel NMI watchdog, this issue can be
> fixed.  So I think this is not issue of this patch.  What do you think?

Thanks for testing the series!

Agreed, this is an AMD IBS / x86 NMI quirk rather than an issue in this
patchset.

On AMD IBS, when a counter overflows it sets IbsOpVal in
MSR_AMD64_IBSOPCTL, stops counting, and sends a single edge-triggered
NMI.  If that NMI edge is lost (e.g., across C-state transitions),
IbsOpVal stays set and the counter remains frozen on that CPU until
perf_ibs_handle_irq() clears it and re-arms the MSR.  That also explains
why the sample count in your graph stepped down gradually over time
(100k -> 36k -> 18k -> 4k -> 0), as individual CPUs got stuck one by
one.  When the NMI watchdog is enabled, its periodic NMI walks all
NMI_LOCAL handlers (including perf_ibs_nmi_handler()), which spots the
pending IbsOpVal bit and re-arms IBS.

For ibs_op, a larger period such as sample_period=262144 (as used in the
cover letter) or setting config=0x80000 (cnt_ctl=1, dispatched micro-ops
instead of clock cycles) also helps reduce the NMI rate on the CPU.

Also, if it helps for testing, the damo branch in the cover letter [1]
already has sysfs read/write support for the perf_event prep attributes
(commit 1178ccb) and tools/damon_tier_gen.py for generating IBS/PEBS
configs.  Your probe_hits_wsum support in 'damo report access' on your
branch is a nice addition as well.

[1] https://github.com/ravis-opensrc/damo/tree/damo/auto-tier-bw-2026-10-04

Thanks,
Ravi


      reply	other threads:[~2026-10-19  4:28 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-05  8:46 [RFC PATCH v4 0/9] mm/damon: hardware-sampled access reports Ravi Jonnalagadda
2026-10-05  8:46 ` [RFC PATCH v4 1/9] mm/damon/paddr: remove page_fault access check primitive Ravi Jonnalagadda
2026-10-05  8:53   ` sashiko-bot
2026-10-05  8:46 ` [RFC PATCH v4 2/9] mm/damon/core: replace the access report buffer with per-context rings Ravi Jonnalagadda
2026-10-05  8:54   ` sashiko-bot
2026-10-05  8:46 ` [RFC PATCH v4 3/9] mm/damon: add perf-event overflow handler feeding the report ring Ravi Jonnalagadda
2026-10-05  8:58   ` sashiko-bot
2026-10-05  8:46 ` [RFC PATCH v4 4/9] mm/damon/ops-common: use probe-weighted score when probe weights are set Ravi Jonnalagadda
2026-10-05  8:54   ` sashiko-bot
2026-10-05  8:46 ` [RFC PATCH v4 5/9] mm/damon: add perf_event prep type, core lifecycle, and PMU arm/disarm Ravi Jonnalagadda
2026-10-05  9:02   ` sashiko-bot
2026-10-05  8:46 ` [RFC PATCH v4 6/9] mm/damon/sysfs: expose perf_event prep attributes Ravi Jonnalagadda
2026-10-05  8:56   ` sashiko-bot
2026-10-05  8:46 ` [RFC PATCH v4 7/9] mm/damon/tests/drain-kunit: kunit for report rings and ring drain Ravi Jonnalagadda
2026-10-05  8:59   ` sashiko-bot
2026-10-05  8:46 ` [RFC PATCH v4 8/9] mm/damon/core: cap the region merge threshold per target Ravi Jonnalagadda
2026-10-05  8:58   ` sashiko-bot
2026-10-05  8:46 ` [RFC PATCH v4 9/9] mm/damon/core: apply probe_hits_wsum filters to node_eligible_mem_bp Ravi Jonnalagadda
2026-10-05  8:59   ` sashiko-bot
2026-10-05  9:24 ` [RFC PATCH v4 0/9] mm/damon: hardware-sampled access reports SJ Park
2026-10-17  7:11 ` Liew Rui Yan
2026-10-17 21:16   ` Liew Rui Yan
2026-10-19  4:28     ` Ravi Jonnalagadda [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20261019042819.1937-1-ravis.opensrc@gmail.com \
    --to=ravis.opensrc@gmail.com \
    --cc=aethernet65535@gmail.com \
    --cc=ajayjoshi@micron.com \
    --cc=akinobu.mita@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=bijan311@gmail.com \
    --cc=corbet@lwn.net \
    --cc=damon@lists.linux.dev \
    --cc=gourry@gourry.net \
    --cc=honggyu.kim@sk.com \
    --cc=jic23@kernel.org \
    --cc=kunwu.chan@linux.dev \
    --cc=lianux.mm@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=rientjes@google.com \
    --cc=sj@kernel.org \
    --cc=weixugc@google.com \
    --cc=yunjeong.mun@sk.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.