summaryrefslogtreecommitdiffstats
path: root/arch/arm64/kernel
diff options
context:
space:
mode:
authorMark Rutland2016-09-07 12:07:08 +0200
committerWill Deacon2016-09-12 11:45:34 +0200
commit792d47379f4d4c76692f1795f33d38582f8907fa (patch)
tree52f01226f44f92ab1a3ce474b1373244bccaf40b /arch/arm64/kernel
parentarm64: lse: convert lse alternatives NOP padding to use __nops (diff)
downloadkernel-qcow2-linux-792d47379f4d4c76692f1795f33d38582f8907fa.tar.gz
kernel-qcow2-linux-792d47379f4d4c76692f1795f33d38582f8907fa.tar.xz
kernel-qcow2-linux-792d47379f4d4c76692f1795f33d38582f8907fa.zip
arm64: alternative: add auto-nop infrastructure
In some cases, one side of an alternative sequence is simply a number of NOPs used to balance the other side. Keeping track of this manually is tedious, and the presence of large chains of NOPs makes the code more painful to read than necessary. To ameliorate matters, this patch adds a new alternative_else_nop_endif, which automatically balances an alternative sequence with a trivial NOP sled. In many cases, we would like a NOP-sled in the default case, and instructions patched in in the presence of a feature. To enable the NOPs to be generated automatically for this case, this patch also adds a new alternative_if, and updates alternative_else and alternative_endif to work with either alternative_if or alternative_endif. Cc: Andre Przywara <andre.przywara@arm.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Dave Martin <dave.martin@arm.com> Cc: James Morse <james.morse@arm.com> Signed-off-by: Mark Rutland <mark.rutland@arm.com> [will: use new nops macro to generate nop sequences] Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm64/kernel')
0 files changed, 0 insertions, 0 deletions