Patch "x86/mm: Fix vmalloc_fault to use pXd_large" has been added to the 4.15-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
x86/mm: Fix vmalloc_fault to use pXd_large
to the 4.15-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
x86-mm-fix-vmalloc_fault-to-use-pxd_large.patch
and it can be found in the queue-4.15 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
18a955219bf7d9008ce480d4451b6b8bf4483a22Mon Sep 17 00:00:00 2001
From: Toshi Kani <[email protected]>
Date: Tue, 13 Mar 2018 11:03:46 -0600
Subject: x86/mm: Fix vmalloc_fault to use pXd_large
From: Toshi Kani <[email protected]>
commit 18a955219bf7d9008ce480d4451b6b8bf4483a22 upstream.
Gratian Crisan reported that vmalloc_fault() crashes when CONFIG_HUGETLBFS is not set since the function inadvertently uses pXn_huge(), which always return 0 in this case. ioremap() does not depend on CONFIG_HUGETLBFS.
Fix vmalloc_fault() to call pXd_large() instead.
--- arch/x86/mm/fault.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
arch/x86/mm/fault.c +3 -3
@@ -330,7 +330,7 @@ static noinline int vmalloc_fault(unsignif (!pmd_k)return -1 ; -if (pmd_huge (*pmd_k)) +if (pmd_large (*pmd_k))return 0 ; pte_k =pte_offset_kernel (pmd_k, address);
@@ -475,7 +475,7 @@ static noinline int vmalloc_fault(unsignif (pud_none (*pud) ||pud_pfn (*pud) !=pud_pfn (*pud_ref))BUG (); -if (pud_huge (*pud)) +if (pud_large (*pud))return 0 ; pmd =pmd_offset (pud, address);
@@ -486,7 +486,7 @@ static noinline int vmalloc_fault(unsignif (pmd_none (*pmd) ||pmd_pfn (*pmd) !=pmd_pfn (*pmd_ref))BUG (); -if (pmd_huge (*pmd)) +if (pmd_large (*pmd))return 0 ; pte_ref =pte_offset_kernel (pmd_ref, address);
Patches currently in stable-queue which might be from [email protected] are
queue-4.15/x86-mm-fix-vmalloc_fault-to-use-pxd_large.patch