mirror of https://github.com/torvalds/linux.git
fs/proc/task_mmu.c: fix make_uffd_wp_huge_pte() huge pte handling
make_uffd_wp_huge_pte() should return after handling a huge_pte_none()
pte.
Link: https://lkml.kernel.org/r/66178124-ebdf-4e23-b8ca-ed3eb8030c81@lucifer.local
Fixes: 03bfbc3ad6 ("mm: remove is_hugetlb_entry_[migration, hwpoisoned]()")
Signed-off-by: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Reported-by: Vlastimil Babka <vbabka@suse.cz>
Closes: https://lkml.kernel.org/r/dc483db3-be4d-45f7-8b40-a28f5d8f5738@suse.cz
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
ce2bba8956
commit
12f0cd3933
|
|
@ -2500,9 +2500,11 @@ static void make_uffd_wp_huge_pte(struct vm_area_struct *vma,
|
|||
const unsigned long psize = huge_page_size(hstate_vma(vma));
|
||||
softleaf_t entry;
|
||||
|
||||
if (huge_pte_none(ptent))
|
||||
if (huge_pte_none(ptent)) {
|
||||
set_huge_pte_at(vma->vm_mm, addr, ptep,
|
||||
make_pte_marker(PTE_MARKER_UFFD_WP), psize);
|
||||
return;
|
||||
}
|
||||
|
||||
entry = softleaf_from_pte(ptent);
|
||||
if (softleaf_is_hwpoison(entry) || softleaf_is_marker(entry))
|
||||
|
|
|
|||
Loading…
Reference in New Issue