diff options
| author | Masahiro Yamada <masahiroy@kernel.org> | 2023-09-06 03:46:57 +0900 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-09-19 12:30:21 +0200 |
| commit | 53092c767eef50dd42c0a74abcf77ac466589b3f (patch) | |
| tree | 285d8b6e1d03e3800628a23bb911aba9233a73cd /include | |
| parent | 610dbd8ac271aa36080aac50b928d700ee3fe4de (diff) | |
| download | linux-53092c767eef50dd42c0a74abcf77ac466589b3f.tar.gz linux-53092c767eef50dd42c0a74abcf77ac466589b3f.tar.bz2 linux-53092c767eef50dd42c0a74abcf77ac466589b3f.zip | |
linux/export: fix reference to exported functions for parisc64
commit 08700ec705043eb0cee01b35cf5b9d63f0230d12 upstream.
John David Anglin reported parisc has been broken since commit
ddb5cdbafaaa ("kbuild: generate KSYMTAB entries by modpost").
Like ia64, parisc64 uses a function descriptor. The function
references must be prefixed with P%.
Also, symbols prefixed $$ from the library have the symbol type
STT_LOPROC instead of STT_FUNC. They should be handled as functions
too.
Fixes: ddb5cdbafaaa ("kbuild: generate KSYMTAB entries by modpost")
Reported-by: John David Anglin <dave.anglin@bell.net>
Tested-by: John David Anglin <dave.anglin@bell.net>
Tested-by: Helge Deller <deller@gmx.de>
Closes: https://lore.kernel.org/linux-parisc/1901598a-e11d-f7dd-a5d9-9a69d06e6b6e@bell.net/T/#u
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/export-internal.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/export-internal.h b/include/linux/export-internal.h index 1c849db953a5..45fca09b2319 100644 --- a/include/linux/export-internal.h +++ b/include/linux/export-internal.h @@ -52,6 +52,8 @@ #ifdef CONFIG_IA64 #define KSYM_FUNC(name) @fptr(name) +#elif defined(CONFIG_PARISC) && defined(CONFIG_64BIT) +#define KSYM_FUNC(name) P%name #else #define KSYM_FUNC(name) name #endif |
