Thread (19 messages) 19 messages, 7 authors, 2017-02-09

Re: [PATCH] mm: replace FAULT_FLAG_SIZE with parameter to huge_fault

From: Kirill A. Shutemov <hidden>
Date: 2017-02-07 17:40:46
Also in: linux-mm, linux-xfs, nvdimm

On Tue, Feb 07, 2017 at 08:56:56AM -0800, Dan Williams wrote:
On Tue, Feb 7, 2017 at 12:44 AM, Kirill A. Shutemov
[off-list ref] wrote:
quoted
On Mon, Feb 06, 2017 at 09:30:22AM -0800, Dan Williams wrote:
quoted
On Mon, Feb 6, 2017 at 9:27 AM, Christoph Hellwig [off-list ref] wrote:
quoted
On Mon, Feb 06, 2017 at 08:24:48AM -0800, Dan Williams wrote:
quoted
quoted
Also can be use this opportunity
to fold ->huge_fault into ->fault?
BTW, for tmpfs we already use ->fault for both small and huge pages.
If ->fault returned THP, core mm look if it's possible to map the page as
huge in this particular VMA (due to size/alignment). If yes mm maps the
page with PMD, if not fallback to PTE.

I think it would be nice to do the same for DAX: filesystem provides core
mm with largest page this part of file can be mapped with (base aligned
address + lenght for DAX) and core mm sort out the rest.
For DAX we would need plumb pfn_t into the core mm so that we have the
PFN_DEV and PFN_MAP flags beyond the raw pfn.
Sounds good to me.
quoted
quoted
quoted
quoted
Hmm, yes, just need a scheme to not attempt huge_faults on pte-only handlers.
Do we need anything more than checking vma->vm_flags for VM_HUGETLB?
s/VM_HUGETLB/VM_HUGEPAGE/

...but yes as long as we specify that a VM_HUGEPAGE handler must
minimally handle pud and pmd.
VM_HUGEPAGE is result of MADV_HUGEPAGE. It's not required to have THP in
the VMA.
Filesystem-DAX and Device-DAX specify VM_HUGEPAGE by default.
But why? Looks like abuse of the flag.

-- 
 Kirill A. Shutemov

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help