diff options
Diffstat (limited to 'arch/i386/mm/fault.c')
-rw-r--r-- | arch/i386/mm/fault.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/i386/mm/fault.c b/arch/i386/mm/fault.c index c6a0a06258e6..f534c29e80b2 100644 --- a/arch/i386/mm/fault.c +++ b/arch/i386/mm/fault.c | |||
@@ -603,7 +603,6 @@ do_sigbus: | |||
603 | force_sig_info_fault(SIGBUS, BUS_ADRERR, address, tsk); | 603 | force_sig_info_fault(SIGBUS, BUS_ADRERR, address, tsk); |
604 | } | 604 | } |
605 | 605 | ||
606 | #ifndef CONFIG_X86_PAE | ||
607 | void vmalloc_sync_all(void) | 606 | void vmalloc_sync_all(void) |
608 | { | 607 | { |
609 | /* | 608 | /* |
@@ -616,6 +615,9 @@ void vmalloc_sync_all(void) | |||
616 | static unsigned long start = TASK_SIZE; | 615 | static unsigned long start = TASK_SIZE; |
617 | unsigned long address; | 616 | unsigned long address; |
618 | 617 | ||
618 | if (SHARED_KERNEL_PMD) | ||
619 | return; | ||
620 | |||
619 | BUILD_BUG_ON(TASK_SIZE & ~PGDIR_MASK); | 621 | BUILD_BUG_ON(TASK_SIZE & ~PGDIR_MASK); |
620 | for (address = start; address >= TASK_SIZE; address += PGDIR_SIZE) { | 622 | for (address = start; address >= TASK_SIZE; address += PGDIR_SIZE) { |
621 | if (!test_bit(pgd_index(address), insync)) { | 623 | if (!test_bit(pgd_index(address), insync)) { |
@@ -638,4 +640,3 @@ void vmalloc_sync_all(void) | |||
638 | start = address + PGDIR_SIZE; | 640 | start = address + PGDIR_SIZE; |
639 | } | 641 | } |
640 | } | 642 | } |
641 | #endif | ||