diff options
author | Vladimir Murzin <vladimir.murzin@arm.com> | 2016-09-01 16:35:59 +0300 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2016-09-01 22:22:47 +0300 |
commit | 563cada03db9cb5df19b20290b65c4e5e1d21358 (patch) | |
tree | 494a916076f45e93bac2aa361e17fc0e4dd5770d /arch/arm64/kernel | |
parent | e937dd5782688928d8c4050237b93b0a51faebee (diff) | |
download | linux-563cada03db9cb5df19b20290b65c4e5e1d21358.tar.xz |
arm64: kernel: do not need to reset UAO on exception entry
Commit e19a6ee2460b ("arm64: kernel: Save and restore UAO and
addr_limit on exception entry") states that exception handler inherits
the original PSTATE.UAO value, so UAO needes to be reset
explicitly. However, ARM 8.2 Extension documentation says:
PSTATE.UAO is copied to SPSR_ELx.UAO and is then set to 0 on an
exception taken from AArch64 to AArch64
so hardware already does the right thing.
Signed-off-by: Vladimir Murzin <vladimir.murzin@arm.com>
Acked-by: James Morse <james.morse@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm64/kernel')
-rw-r--r-- | arch/arm64/kernel/entry.S | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S index 6a64182822e5..6880dcc3b465 100644 --- a/arch/arm64/kernel/entry.S +++ b/arch/arm64/kernel/entry.S @@ -104,7 +104,7 @@ str x20, [sp, #S_ORIG_ADDR_LIMIT] mov x20, #TASK_SIZE_64 str x20, [tsk, #TI_ADDR_LIMIT] - ALTERNATIVE(nop, SET_PSTATE_UAO(0), ARM64_HAS_UAO, CONFIG_ARM64_UAO) + /* No need to reset PSTATE.UAO, hardware's already set it to 0 for us */ .endif /* \el == 0 */ mrs x22, elr_el1 mrs x23, spsr_el1 |