diff options
author | Ingo Molnar <mingo@elte.hu> | 2012-01-04 14:00:43 (GMT) |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2012-01-04 14:01:28 (GMT) |
commit | adaf4ed2abbd285c93808060924eeec3af483aee (patch) | |
tree | 425c6c37c08af0b69efaa7457c9b428eda347c36 /arch/x86/mm | |
parent | ca3d30cc02f780f68771087040ce935add6ba2b7 (diff) | |
parent | 5f0a6e2d503896062f641639dacfe5055c2f593b (diff) | |
download | linux-adaf4ed2abbd285c93808060924eeec3af483aee.tar.xz |
Merge commit 'v3.2-rc7' into x86/asm
Merge reason: Update from -rc4 to -rc7.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/mm')
-rw-r--r-- | arch/x86/mm/gup.c | 2 | ||||
-rw-r--r-- | arch/x86/mm/highmem_32.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/mm/gup.c b/arch/x86/mm/gup.c index ea30585..dd74e46 100644 --- a/arch/x86/mm/gup.c +++ b/arch/x86/mm/gup.c @@ -201,6 +201,8 @@ static noinline int gup_huge_pud(pud_t pud, unsigned long addr, do { VM_BUG_ON(compound_head(page) != head); pages[*nr] = page; + if (PageTail(page)) + get_huge_page_tail(page); (*nr)++; page++; refs++; diff --git a/arch/x86/mm/highmem_32.c b/arch/x86/mm/highmem_32.c index b499626..f4f29b1 100644 --- a/arch/x86/mm/highmem_32.c +++ b/arch/x86/mm/highmem_32.c @@ -45,6 +45,7 @@ void *kmap_atomic_prot(struct page *page, pgprot_t prot) vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx); BUG_ON(!pte_none(*(kmap_pte-idx))); set_pte(kmap_pte-idx, mk_pte(page, prot)); + arch_flush_lazy_mmu_mode(); return (void *)vaddr; } @@ -88,6 +89,7 @@ void __kunmap_atomic(void *kvaddr) */ kpte_clear_flush(kmap_pte-idx, vaddr); kmap_atomic_idx_pop(); + arch_flush_lazy_mmu_mode(); } #ifdef CONFIG_DEBUG_HIGHMEM else { |