Re: [PATCH] scs: add CONFIG_MMU dependency for vfree_atomic()

From: Sami Tolvanen
Date: Mon Jan 22 2024 - 14:21:52 EST


Hi Samuel,

On Mon, Jan 22, 2024 at 9:52 AM Samuel Holland
<samuel.holland@xxxxxxxxxx> 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@xxxxxxxxxx>
> ---
>
> 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@xxxxxxxxxx>

Sami