Re: [PATCH 2/2] Add /proc/PID/{smaps, numa_maps} support for DAX

From: Michal Hocko
Date: Thu Oct 26 2017 - 10:16:13 EST


On Wed 25-10-17 10:14:34, Dave Hansen wrote:
> On 10/25/2017 02:30 AM, Michal Hocko wrote:
> >>
> >> 7f6c17800000-7f6c17e00000 rw-s 00000000 00:06 20559 /dev/dax12.0
> >> Size: 6144 kB
> >> .
> >> .
> >> .
> >> Ptes@2MB: 6144 kB
> > This says how but it doesn't tell why and who is going to use the
> > information and what for.
>
> The original motivation was for DAX. They have parallel large page
> infrastructure separate from hugetlbfs and THP. Their constraints about
> when they can use large pages differ from the normal mm cases, so it is
> hard to tell when large pages are in use. For instance, the file on
> *disk* has to be 2MB contiguous and aligned to map with 2MB pages even
> if the mmap() address is >2MB and 2MB-aligned.

I assume there is some tool which is going to use this information?

> But, in general, this seems like the thing that we probably should have
> done in the first place for THP. It's a lot more generic and does not
> require someone reading the file to know what the particular
> architecture's page sizes are.

I fully agree. This just shows how single usecase focus driven smaps
file was. That is why I am asking about usecases when somebody want to
try yet another special field there. Smaps has become a dump of of
special cases which is not really easy to understand and so people tend
to use it incorrectly.

--
Michal Hocko
SUSE Labs