Patch "mm/hugetlb: use pmd_page() in follow_huge_pmd()" has been added to the 4.0-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
mm/hugetlb: use pmd_page() in follow_huge_pmd()
to the 4.0-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:
mm-hugetlb-use-pmd_page-in-follow_huge_pmd.patch
and it can be found in the queue-4.0 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
97534127012f0e396eddea4691f4c9b170aed74bMon Sep 17 00:00:00 2001
From: Gerald Schaefer <[email protected]>
Date: Tue, 14 Apr 2015 15:42:30 -0700
Subject: mm/hugetlb: use pmd_page() in follow_huge_pmd()
From: Gerald Schaefer <[email protected]>
commit 97534127012f0e396eddea4691f4c9b170aed74b upstream.
Commit 61f77eda9bbf ("mm/hugetlb: reduce arch dependent code around follow_huge_*") broke follow_huge_pmd() on s390, where pmd and pte layout differ and using pte_page() on a huge pmd will return wrong results. Using pmd_page() instead fixes this.
All architectures that were touched by that commit have pmd_page() defined, so this should not break anything on other architectures.
--- mm/hugetlb.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
mm/hugetlb.c +1 -2
@@ -3735,8 +3735,7 @@ retry:if (!pmd_huge (*pmd)) goto out;if (pmd_present (*pmd)) { - page =pte_page (*(pte_t *)pmd) + - ((address & ~PMD_MASK ) >>PAGE_SHIFT ); + page =pmd_page (*pmd) + ((address & ~PMD_MASK ) >>PAGE_SHIFT );if (flags &FOLL_GET )get_page (page); }else {
Patches currently in stable-queue which might be from [email protected] are
queue-4.0/mm-hugetlb-use-pmd_page-in-follow_huge_pmd.patch