[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190615152559.Horde.0lTFIZALxZ-RI75z94G3jA8@messagerie.si.c-s.fr>
Date: Sat, 15 Jun 2019 15:25:59 +0200
From: Christophe Leroy <christophe.leroy@....fr>
To: Andreas Schwab <schwab@...ux-m68k.org>
Cc: linuxppc-dev@...ts.ozlabs.org, linux-kernel@...r.kernel.org,
j.neuschaefer@....net, Michael Ellerman <mpe@...erman.id.au>,
Paul Mackerras <paulus@...ba.org>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>
Subject: Re: [PATCH] powerpc/mm/32s: only use MMU to mark initmem NX if
STRICT_KERNEL_RWX
Andreas Schwab <schwab@...ux-m68k.org> a écrit :
> If STRICT_KERNEL_RWX is disabled, never use the MMU to mark initmen
> nonexecutable.
I dont understand, can you elaborate ?
This area is mapped with BATs so using change_page_attr() is pointless.
Christophe
>
> Also move a misplaced paren that makes the condition always true.
>
> Fixes: 63b2bc619565 ("powerpc/mm/32s: Use BATs for STRICT_KERNEL_RWX")
> Signed-off-by: Andreas Schwab <schwab@...ux-m68k.org>
> ---
> arch/powerpc/mm/pgtable_32.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/mm/pgtable_32.c b/arch/powerpc/mm/pgtable_32.c
> index d53188dee18f..3935dc263d65 100644
> --- a/arch/powerpc/mm/pgtable_32.c
> +++ b/arch/powerpc/mm/pgtable_32.c
> @@ -360,9 +360,11 @@ void mark_initmem_nx(void)
> unsigned long numpages = PFN_UP((unsigned long)_einittext) -
> PFN_DOWN((unsigned long)_sinittext);
>
> - if (v_block_mapped((unsigned long)_stext) + 1)
> +#ifdef CONFIG_STRICT_KERNEL_RWX
> + if (v_block_mapped((unsigned long)_stext + 1))
> mmu_mark_initmem_nx();
> else
> +#endif
> change_page_attr(page, numpages, PAGE_KERNEL);
> }
>
> --
> 2.22.0
>
> --
> Andreas Schwab, schwab@...ux-m68k.org
> GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1
> "And now for something completely different."
Powered by blists - more mailing lists