diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-06-23 15:24:09 +0200 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2011-06-24 10:54:39 +0200 |
commit | 0853f96f13e0b60f1c319bcd7f6a3a84d0d1e706 (patch) | |
tree | 82cdbb2a589d2788217d12533ce94b7fdd233d2c /arch/arm/include | |
parent | ARM: pm: hide 1st and 2nd arguments to cpu_suspend from platform code (diff) | |
download | linux-0853f96f13e0b60f1c319bcd7f6a3a84d0d1e706.tar.xz linux-0853f96f13e0b60f1c319bcd7f6a3a84d0d1e706.zip |
ARM: pm: ensure our temporary page table entry is removed from the TLB
Ensure that our temporary page table entry is flushed from the TLB
before we resume normal operations. This ensures that userspace
won't trip over the stale TLB entry.
Tested-by: Kevin Hilman <khilman@ti.com>
Acked-by: Jean Pihet <j-pihet@ti.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include')
-rw-r--r-- | arch/arm/include/asm/suspend.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/include/asm/suspend.h b/arch/arm/include/asm/suspend.h index 8d5b4461c205..f8db9d096bc7 100644 --- a/arch/arm/include/asm/suspend.h +++ b/arch/arm/include/asm/suspend.h @@ -2,6 +2,7 @@ #define __ASM_ARM_SUSPEND_H #include <asm/memory.h> +#include <asm/tlbflush.h> extern void cpu_resume(void); @@ -14,6 +15,7 @@ static inline void cpu_suspend(unsigned long arg, void (*fn)(unsigned long)) extern void __cpu_suspend(int, long, unsigned long, void (*)(unsigned long)); __cpu_suspend(0, PHYS_OFFSET - PAGE_OFFSET, arg, fn); + flush_tlb_all(); } #endif |