Re: DAMON: problems when running DAMON on ARM64 with 'transparent_hugepage' enabled

From: SeongJae Park
Date: Wed Oct 27 2021 - 04:06:52 EST


Hello Xiongfeng,

On Wed, 27 Oct 2021 14:14:57 +0800 Xiongfeng Wang <wangxiongfeng2@xxxxxxxxxx> wrote:

> Sorry, I forgot to Cc the maillist. Cc it in this mail.
>
> On 2021/10/27 10:19, Xiongfeng Wang wrote:
> > Hi SeongJae,
> >
> > Sorry to disturb you. It's just that I came across some problems when running
> > DAMON, but still didn't find the solution after several days.

You're not disturbing but helping me! Please don't say so! :)

> >
> > A short description is that the result of DAMON is not as expected when running
> > on ARM64 with 'transparent_hugepage' enabled. But the result is correct when
> > 'transparent_hugepage' is disabled.
> >
> > The following are the steps I came across the problems.
> > 1. Firstly, I use 'damo record' to sample the 'stairs' demo.
> > damo record "./masim ./configs/stairs.cfg"
> > 2. Then I use 'damo report' to show the results.
> > damo report heats --address_range xxx xxx --time_range xxx xxx --heatmap
> > stdout --stdout_heatmap_color emotion
> > The result doesn't show like a stair. I wrote a userspace demo to access a
> > certain address range in loop and use DAMON to sample the demo. I added
> > trace_print in 'damon_va_check_access()' and found out the pages in the address
> > range are not always detected as accessed, which is not expected. When I disable
> > transparent_hugepage by chance, the pages are marked as accessed. Then I test
> > the 'stairs' demo again, the result is correct. It seems that, only when
> > transparent_hugepage' is disabled, the access check works. I don't know where
> > the bug is, the software or the hardware ? Appreciate it if you have time to
> > reply. Thanks !

Thank you for this report! I have a theory, but would like to test first.
Will check and get back to you soon.


Thanks,
SJ

> >
> > Thanks,
> > Xiongfeng