diff options
author | Will Deacon <will@kernel.org> | 2020-06-30 14:02:48 +0100 |
---|---|---|
committer | Will Deacon <will@kernel.org> | 2020-11-09 21:49:34 +0000 |
commit | e35123d83ee35c31f64ecfbdfabbe5142d3025b8 (patch) | |
tree | 42cd6bf50f912bbeb4ba2cf8bbe32d98d89ba2c5 /arch/arm64/kernel/vmlinux.lds.S | |
parent | arm64: alternatives: Remove READ_ONCE() usage during patch operation (diff) | |
download | linux-dev-e35123d83ee35c31f64ecfbdfabbe5142d3025b8.tar.xz linux-dev-e35123d83ee35c31f64ecfbdfabbe5142d3025b8.zip |
arm64: lto: Strengthen READ_ONCE() to acquire when CONFIG_LTO=y
When building with LTO, there is an increased risk of the compiler
converting an address dependency headed by a READ_ONCE() invocation
into a control dependency and consequently allowing for harmful
reordering by the CPU.
Ensure that such transformations are harmless by overriding the generic
READ_ONCE() definition with one that provides acquire semantics when
building with LTO.
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'arch/arm64/kernel/vmlinux.lds.S')
-rw-r--r-- | arch/arm64/kernel/vmlinux.lds.S | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm64/kernel/vmlinux.lds.S b/arch/arm64/kernel/vmlinux.lds.S index 1bda604f4c70..d6cdcf4aa6a5 100644 --- a/arch/arm64/kernel/vmlinux.lds.S +++ b/arch/arm64/kernel/vmlinux.lds.S @@ -201,7 +201,7 @@ SECTIONS INIT_CALLS CON_INITCALL INIT_RAM_FS - *(.init.rodata.* .init.bss) /* from the EFI stub */ + *(.init.altinstructions .init.rodata.* .init.bss) /* from the EFI stub */ } .exit.data : { EXIT_DATA |