forked from luck/tmp_suning_uos_patched
[PATCH] Hugepages need clear_user_highpage() not clear_highpage()
When hugepages are newly allocated to a file in mm/hugetlb.c, we clear them with a call to clear_highpage() on each of the subpages. We should be using clear_user_highpage(): on powerpc, at least, clear_highpage() doesn't correctly mark the page as icache dirty so if the page is executed shortly after it's possible to get strange results. Signed-off-by: David Gibson <dwg@au1.ibm.com> Acked-by: William Lee Irwin III <wli@holomorphy.com> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
488fc08d91
commit
a2dfef6947
|
@ -107,7 +107,7 @@ struct page *alloc_huge_page(struct vm_area_struct *vma, unsigned long addr)
|
|||
set_page_count(page, 1);
|
||||
page[1].mapping = (void *)free_huge_page;
|
||||
for (i = 0; i < (HPAGE_SIZE/PAGE_SIZE); ++i)
|
||||
clear_highpage(&page[i]);
|
||||
clear_user_highpage(&page[i], addr);
|
||||
return page;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user