diff options
| author | Peter Zijlstra <peterz@infradead.org> | 2025-02-07 13:15:32 +0100 |
|---|---|---|
| committer | Peter Zijlstra <peterz@infradead.org> | 2025-02-14 10:32:05 +0100 |
| commit | 2981557cb0408e142480bc1eea30558cf5a2382f (patch) | |
| tree | 8f7e153d2f74f5fb4ec3a27db453f4b538d2b3cd /arch/x86/lib/memmove_64.S | |
| parent | x86/ibt: Clean up is_endbr() (diff) | |
| download | linux-2981557cb0408e142480bc1eea30558cf5a2382f.tar.gz linux-2981557cb0408e142480bc1eea30558cf5a2382f.zip | |
x86,kcfi: Fix EXPORT_SYMBOL vs kCFI
The expectation is that all EXPORT'ed symbols are free to have their
address taken and called indirectly. The majority of the assembly
defined functions currently violate this expectation.
Make then all use SYM_TYPED_FUNC_START() in order to emit the proper
kCFI preamble.
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Sami Tolvanen <samitolvanen@google.com>
Link: https://lore.kernel.org/r/20250207122546.302679189@infradead.org
Diffstat (limited to 'arch/x86/lib/memmove_64.S')
| -rw-r--r-- | arch/x86/lib/memmove_64.S | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/lib/memmove_64.S b/arch/x86/lib/memmove_64.S index 1b60ae81ecd8..aa1f92ee6b2e 100644 --- a/arch/x86/lib/memmove_64.S +++ b/arch/x86/lib/memmove_64.S @@ -8,6 +8,7 @@ */ #include <linux/export.h> #include <linux/linkage.h> +#include <linux/cfi_types.h> #include <asm/cpufeatures.h> #include <asm/alternative.h> @@ -26,7 +27,7 @@ * Output: * rax: dest */ -SYM_FUNC_START(__memmove) +SYM_TYPED_FUNC_START(__memmove) mov %rdi, %rax |
