OSDN Git Service

arm64: entry: avoid writing lr explicitly for constructing return paths
authorWill Deacon <will.deacon@arm.com>
Mon, 29 Sep 2014 10:44:01 +0000 (11:44 +0100)
committerWill Deacon <will.deacon@arm.com>
Fri, 14 Nov 2014 10:42:15 +0000 (10:42 +0000)
commitd54e81f9af1d106e47ae8594903c43a80dae1a99
treee3084f896a27a4658a718643a589169c51f0aa27
parent44b82b7700d05a52cd983799d3ecde1a976b3bed
arm64: entry: avoid writing lr explicitly for constructing return paths

Using an explicit adr instruction to set the link register to point at
ret_fast_syscall/ret_to_user can defeat branch and return stack predictors.

Instead, use the standard calling instructions (bl, blr) and have an
unconditional branch as the following instruction.

Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/kernel/entry.S