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

From: Dave Hansen
Date: Wed Oct 25 2017 - 13:14:42 EST


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.

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.