[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <293caaaf-39c0-7634-fbd2-70a540ea58db@linux.alibaba.com>
Date: Wed, 18 Apr 2018 13:53:28 -0700
From: Yang Shi <yang.shi@...ux.alibaba.com>
To: Mike Kravetz <mike.kravetz@...cle.com>, viro@...iv.linux.org.uk,
nyc@...omorphy.com, kirill.shutemov@...ux.intel.com,
hughd@...gle.com, akpm@...ux-foundation.org
Cc: linux-fsdevel@...r.kernel.org, linux-mm@...ck.org,
linux-kernel@...r.kernel.org
Subject: Re: [RFC PATCH] fs: introduce ST_HUGE flag and set it to tmpfs and
hugetlbfs
On 4/18/18 1:26 PM, Mike Kravetz wrote:
> On 04/17/2018 02:08 PM, Yang Shi wrote:
>> And, set the flag for hugetlbfs as well to keep the consistency, and the
>> applications don't have to know what filesystem is used to use huge
>> page, just need to check ST_HUGE flag.
> For hugetlbfs, setting such a flag would be for consistency only. mapping
> hugetlbfs files REQUIRES huge page alignment and size.
Yes, applications don't have to read this flag if the underlying
filesystem is hugetlbfs. The fs magic number is good enough.
>
> If an application would want to take advantage of this flag for tmpfs, it
> needs to map at a fixed address (MAP_FIXED) for huge page alignment. So,
> it will need to do one of the 'mmap tricks' to get a mapping at a suitably
> aligned address.
It doesn't have to be MAP_FIXED, but definitely has to be huge page
aligned. This flag is aimed for this case. With this flag, the
applications can know the underlying tmpfs with huge page supported,
then the applications can mmap memory with huge page alignment
intentionally.
>
> IIRC, there is code to 'suitably align' DAX mappings to appropriate huge page
> boundaries. Perhaps, something like this could be added for tmpfs mounted
> with huge=? Of course, this would not take into account 'length' but may
> help some.
Might be. However THP already exported huge page size to sysfs, the
applications can read it to get the alignment.
Thanks,
Yang
>
Powered by blists - more mailing lists