mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
mm/thp: rename TRANSPARENT_HUGEPAGE_NEVER_DAX to _UNSUPPORTED
TRANSPARENT_HUGEPAGE_NEVER_DAX has nothing to do with DAX. It's set when has_transparent_hugepage() returns false, checked in hugepage_vma_check() and will disable THP completely if false. Rename it to TRANSPARENT_HUGEPAGE_UNSUPPORTED to reflect its real purpose. [peterx@redhat.com: fix comment, per David] Link: https://lkml.kernel.org/r/ZBMzQW674oHQJV7F@x1n Link: https://lkml.kernel.org/r/20230315171642.1244625-1-peterx@redhat.com Signed-off-by: Peter Xu <peterx@redhat.com> Acked-by: David Hildenbrand <david@redhat.com> Cc: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com> Cc: Yang Shi <shy828301@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
@@ -79,7 +79,7 @@ static inline vm_fault_t vmf_insert_pfn_pud(struct vm_fault *vmf, pfn_t pfn,
|
|||||||
}
|
}
|
||||||
|
|
||||||
enum transparent_hugepage_flag {
|
enum transparent_hugepage_flag {
|
||||||
TRANSPARENT_HUGEPAGE_NEVER_DAX,
|
TRANSPARENT_HUGEPAGE_UNSUPPORTED,
|
||||||
TRANSPARENT_HUGEPAGE_FLAG,
|
TRANSPARENT_HUGEPAGE_FLAG,
|
||||||
TRANSPARENT_HUGEPAGE_REQ_MADV_FLAG,
|
TRANSPARENT_HUGEPAGE_REQ_MADV_FLAG,
|
||||||
TRANSPARENT_HUGEPAGE_DEFRAG_DIRECT_FLAG,
|
TRANSPARENT_HUGEPAGE_DEFRAG_DIRECT_FLAG,
|
||||||
|
@@ -88,7 +88,7 @@ bool hugepage_vma_check(struct vm_area_struct *vma, unsigned long vm_flags,
|
|||||||
/*
|
/*
|
||||||
* If the hardware/firmware marked hugepage support disabled.
|
* If the hardware/firmware marked hugepage support disabled.
|
||||||
*/
|
*/
|
||||||
if (transparent_hugepage_flags & (1 << TRANSPARENT_HUGEPAGE_NEVER_DAX))
|
if (transparent_hugepage_flags & (1 << TRANSPARENT_HUGEPAGE_UNSUPPORTED))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
/* khugepaged doesn't collapse DAX vma, but page fault is fine. */
|
/* khugepaged doesn't collapse DAX vma, but page fault is fine. */
|
||||||
@@ -460,11 +460,7 @@ static int __init hugepage_init(void)
|
|||||||
struct kobject *hugepage_kobj;
|
struct kobject *hugepage_kobj;
|
||||||
|
|
||||||
if (!has_transparent_hugepage()) {
|
if (!has_transparent_hugepage()) {
|
||||||
/*
|
transparent_hugepage_flags = 1 << TRANSPARENT_HUGEPAGE_UNSUPPORTED;
|
||||||
* Hardware doesn't support hugepages, hence disable
|
|
||||||
* DAX PMD support.
|
|
||||||
*/
|
|
||||||
transparent_hugepage_flags = 1 << TRANSPARENT_HUGEPAGE_NEVER_DAX;
|
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user