[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <875z6mvamv.fsf@mpe.ellerman.id.au>
Date: Wed, 04 Nov 2020 00:21:44 +1100
From: Michael Ellerman <mpe@...erman.id.au>
To: Andreas Schwab <schwab@...ux-m68k.org>
Cc: Christophe Leroy <christophe.leroy@...roup.eu>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Paul Mackerras <paulus@...ba.org>,
linuxppc-dev@...ts.ozlabs.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/3] powerpc/uaccess: Switch __put_user_size_allowed() to __put_user_asm_goto()
Andreas Schwab <schwab@...ux-m68k.org> writes:
> #
> # Automatically generated file; DO NOT EDIT.
> # Linux/powerpc 5.10.0-rc1 Kernel Configuration
> #
> CONFIG_CC_VERSION_TEXT="gcc-4.9 (SUSE Linux) 4.9.3"
So it seems to be a combination of GCC 4.9 and ...
> # CONFIG_PPC_RADIX_MMU is not set
That ^, which specifically causes PPC_KUAP=n.
When PPC_KUAP=y allow_user_access() inlines an isync and mtspr, both of
which contain a memory clobber, and that seems to hide the bug.
I think for now we just have to stop using asm goto for put_user() on
GCC 4.9.
I'll send a patch for that.
cheers
Powered by blists - more mailing lists