Without the frame pointer enabled, return_address() is an inline function and does not need to be exported, as shown by this warning:
WARNING: "return_address" [vmlinux] is a static EXPORT_SYMBOL_GPL Move the EXPORT_SYMBOL_GPL() into the #ifdef as well. Signed-off-by: Arnd Bergmann <a...@arndb.de> --- arch/arm/kernel/return_address.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/arch/arm/kernel/return_address.c b/arch/arm/kernel/return_address.c index b0d2f1fe891d..fb0fc1910102 100644 --- a/arch/arm/kernel/return_address.c +++ b/arch/arm/kernel/return_address.c @@ -53,6 +53,7 @@ void *return_address(unsigned int level) return NULL; } +EXPORT_SYMBOL_GPL(return_address); + #endif /* if defined(CONFIG_FRAME_POINTER) && !defined(CONFIG_ARM_UNWIND) */ -EXPORT_SYMBOL_GPL(return_address); -- 2.20.0