[PATCH] sparc: Export mcount for Clang-built modules

Rosen Penev posted 1 patch 1 month ago
There is a newer version of this series
arch/sparc/lib/mcount.S | 1 +
1 file changed, 1 insertion(+)
[PATCH] sparc: Export mcount for Clang-built modules
Posted by Rosen Penev 1 month ago
Clang emits calls to mcount for -pg on sparc64, while the
existing ftrace support only exports the _mcount name. With
FUNCTION_TRACER enabled, modules can therefore keep relocations
against mcount and fail during modpost:

  ERROR: modpost: "mcount" [arch/sparc/kernel/chmc.ko] undefined!

_mcount and mcount are aliases in arch/sparc/lib/mcount.S. Export
the plain mcount alias as well so Clang-built modules can resolve
their profiling call target.

Assisted-by: Codex:GPT-5
Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
 arch/sparc/lib/mcount.S | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/sparc/lib/mcount.S b/arch/sparc/lib/mcount.S
index f7f7910eb41e..0309ba2c4712 100644
--- a/arch/sparc/lib/mcount.S
+++ b/arch/sparc/lib/mcount.S
@@ -21,6 +21,7 @@
 	EXPORT_SYMBOL(_mcount)
 	.globl		mcount
 	.type		mcount,#function
+	EXPORT_SYMBOL(mcount)
 _mcount:
 mcount:
 #ifdef CONFIG_FUNCTION_TRACER
-- 
2.54.0
Re: [PATCH] sparc: Export mcount for Clang-built modules
Posted by Andreas Larsson 23 hours ago
On 2026-05-08 04:11, Rosen Penev wrote:
> Clang emits calls to mcount for -pg on sparc64, while the
> existing ftrace support only exports the _mcount name. With
> FUNCTION_TRACER enabled, modules can therefore keep relocations
> against mcount and fail during modpost:
> 
>   ERROR: modpost: "mcount" [arch/sparc/kernel/chmc.ko] undefined!
> 
> _mcount and mcount are aliases in arch/sparc/lib/mcount.S. Export
> the plain mcount alias as well so Clang-built modules can resolve
> their profiling call target.
> 
> Assisted-by: Codex:GPT-5
> Signed-off-by: Rosen Penev <rosenp@gmail.com>
> ---
>  arch/sparc/lib/mcount.S | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/arch/sparc/lib/mcount.S b/arch/sparc/lib/mcount.S
> index f7f7910eb41e..0309ba2c4712 100644
> --- a/arch/sparc/lib/mcount.S
> +++ b/arch/sparc/lib/mcount.S
> @@ -21,6 +21,7 @@
>  	EXPORT_SYMBOL(_mcount)
>  	.globl		mcount
>  	.type		mcount,#function
> +	EXPORT_SYMBOL(mcount)
>  _mcount:
>  mcount:
>  #ifdef CONFIG_FUNCTION_TRACER

Hi,

Please also add it to arch/sparc/include/asm/asm-prototypes.h, like in
https://lore.kernel.org/sparclinux/20260523042535.C3A6B1F000E9@smtp.kernel.org
to not get an added warning about mcount in modpost.

Thanks,
Andreas