Re: [PATCH] riscv: Protect kernel linear mapping only if CONFIG_STRICT_KERNEL_RWX is set

From: Anup Patel
Date: Fri Apr 16 2021 - 06:42:05 EST


On Thu, Apr 15, 2021 at 4:34 PM Alexandre Ghiti <alex@xxxxxxxx> wrote:
>
> If CONFIG_STRICT_KERNEL_RWX is not set, we cannot set different permissions
> to the kernel data and text sections, so make sure it is defined before
> trying to protect the kernel linear mapping.
>
> Signed-off-by: Alexandre Ghiti <alex@xxxxxxxx>

Maybe you should add "Fixes:" tag in commit tag ?

Otherwise it looks good.

Reviewed-by: Anup Patel <anup@xxxxxxxxxxxxxx>

Regards,
Anup

> ---
> arch/riscv/kernel/setup.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/riscv/kernel/setup.c b/arch/riscv/kernel/setup.c
> index 626003bb5fca..ab394d173cd4 100644
> --- a/arch/riscv/kernel/setup.c
> +++ b/arch/riscv/kernel/setup.c
> @@ -264,12 +264,12 @@ void __init setup_arch(char **cmdline_p)
>
> sbi_init();
>
> - if (IS_ENABLED(CONFIG_STRICT_KERNEL_RWX))
> + if (IS_ENABLED(CONFIG_STRICT_KERNEL_RWX)) {
> protect_kernel_text_data();
> -
> -#if defined(CONFIG_64BIT) && defined(CONFIG_MMU)
> - protect_kernel_linear_mapping_text_rodata();
> +#ifdef CONFIG_64BIT
> + protect_kernel_linear_mapping_text_rodata();
> #endif
> + }
>
> #ifdef CONFIG_SWIOTLB
> swiotlb_init(1);
> --
> 2.20.1
>