diff options
Diffstat (limited to 'arch/arm64/kernel/suspend.c')
-rw-r--r-- | arch/arm64/kernel/suspend.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/arm64/kernel/suspend.c b/arch/arm64/kernel/suspend.c index dd6ad81d53aa..874ced5f5fac 100644 --- a/arch/arm64/kernel/suspend.c +++ b/arch/arm64/kernel/suspend.c @@ -97,13 +97,13 @@ int cpu_suspend(unsigned long arg, int (*fn)(unsigned long)) * them back to complete the address space configuration * restoration before returning. */ - cpu_set_reserved_ttbr0(); - flush_tlb_all(); - cpu_set_default_tcr_t0sz(); - - if (mm != &init_mm) + if (mm == &init_mm) + cpu_set_reserved_ttbr0(); + else cpu_switch_mm(mm->pgd, mm); + local_flush_tlb_all(); + /* * Restore per-cpu offset before any kernel * subsystem relying on it has a chance to run. |