* [PATCH] scs: add CONFIG_MMU dependency for vfree_atomic()
@ 2024-01-22 17:52 Samuel Holland
2024-01-22 19:21 ` Sami Tolvanen
2024-01-26 13:53 ` Christoph Hellwig
0 siblings, 2 replies; 3+ messages in thread
From: Samuel Holland @ 2024-01-22 17:52 UTC (permalink / raw)
To: Sami Tolvanen, Will Deacon, Andrew Morton; +Cc: linux-kernel, Samuel Holland
The shadow call stack implementation fails to build without CONFIG_MMU:
ld.lld: error: undefined symbol: vfree_atomic
>>> referenced by scs.c
>>> kernel/scs.o:(scs_free) in archive vmlinux.a
Fixes: a2abe7cbd8fe ("scs: switch to vmapped shadow stacks")
Signed-off-by: Samuel Holland <samuel.holland@sifive.com>
---
arch/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/Kconfig b/arch/Kconfig
index c91917b50873..a5af0edd3eb8 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -673,6 +673,7 @@ config SHADOW_CALL_STACK
bool "Shadow Call Stack"
depends on ARCH_SUPPORTS_SHADOW_CALL_STACK
depends on DYNAMIC_FTRACE_WITH_ARGS || DYNAMIC_FTRACE_WITH_REGS || !FUNCTION_GRAPH_TRACER
+ depends on MMU
help
This option enables the compiler's Shadow Call Stack, which
uses a shadow stack to protect function return addresses from
--
2.43.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] scs: add CONFIG_MMU dependency for vfree_atomic()
2024-01-22 17:52 [PATCH] scs: add CONFIG_MMU dependency for vfree_atomic() Samuel Holland
@ 2024-01-22 19:21 ` Sami Tolvanen
2024-01-26 13:53 ` Christoph Hellwig
1 sibling, 0 replies; 3+ messages in thread
From: Sami Tolvanen @ 2024-01-22 19:21 UTC (permalink / raw)
To: Samuel Holland; +Cc: Will Deacon, Andrew Morton, linux-kernel
Hi Samuel,
On Mon, Jan 22, 2024 at 9:52 AM Samuel Holland
<samuel.holland@sifive.com> wrote:
>
> The shadow call stack implementation fails to build without CONFIG_MMU:
>
> ld.lld: error: undefined symbol: vfree_atomic
> >>> referenced by scs.c
> >>> kernel/scs.o:(scs_free) in archive vmlinux.a
>
> Fixes: a2abe7cbd8fe ("scs: switch to vmapped shadow stacks")
> Signed-off-by: Samuel Holland <samuel.holland@sifive.com>
> ---
>
> arch/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/Kconfig b/arch/Kconfig
> index c91917b50873..a5af0edd3eb8 100644
> --- a/arch/Kconfig
> +++ b/arch/Kconfig
> @@ -673,6 +673,7 @@ config SHADOW_CALL_STACK
> bool "Shadow Call Stack"
> depends on ARCH_SUPPORTS_SHADOW_CALL_STACK
> depends on DYNAMIC_FTRACE_WITH_ARGS || DYNAMIC_FTRACE_WITH_REGS || !FUNCTION_GRAPH_TRACER
> + depends on MMU
> help
> This option enables the compiler's Shadow Call Stack, which
> uses a shadow stack to protect function return addresses from
Looks good to me. Thanks for the patch!
Reviewed-by: Sami Tolvanen <samitolvanen@google.com>
Sami
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] scs: add CONFIG_MMU dependency for vfree_atomic()
2024-01-22 17:52 [PATCH] scs: add CONFIG_MMU dependency for vfree_atomic() Samuel Holland
2024-01-22 19:21 ` Sami Tolvanen
@ 2024-01-26 13:53 ` Christoph Hellwig
1 sibling, 0 replies; 3+ messages in thread
From: Christoph Hellwig @ 2024-01-26 13:53 UTC (permalink / raw)
To: Samuel Holland; +Cc: Sami Tolvanen, Will Deacon, Andrew Morton, linux-kernel
On Mon, Jan 22, 2024 at 09:52:01AM -0800, Samuel Holland wrote:
> The shadow call stack implementation fails to build without CONFIG_MMU:
>
> ld.lld: error: undefined symbol: vfree_atomic
> >>> referenced by scs.c
> >>> kernel/scs.o:(scs_free) in archive vmlinux.a
Well, please just provide vfree_atomic for nommu then. vfree maps
to kfree which can be called from atomic context, so vfree_atomic
can do the same.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-01-26 13:53 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-22 17:52 [PATCH] scs: add CONFIG_MMU dependency for vfree_atomic() Samuel Holland
2024-01-22 19:21 ` Sami Tolvanen
2024-01-26 13:53 ` Christoph Hellwig
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.