[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1f3b22d4-00b3-4ff9-b29b-a901c03988e3@csgroup.eu>
Date: Thu, 14 Dec 2023 08:42:06 +0000
From: Christophe Leroy <christophe.leroy@...roup.eu>
To: Nicholas Miehlbradt <nicholas@...ux.ibm.com>,
"glider@...gle.com" <glider@...gle.com>,
"elver@...gle.com" <elver@...gle.com>,
"dvyukov@...gle.com" <dvyukov@...gle.com>,
"akpm@...ux-foundation.org" <akpm@...ux-foundation.org>,
"mpe@...erman.id.au" <mpe@...erman.id.au>,
"npiggin@...il.com" <npiggin@...il.com>
CC: "linux-mm@...ck.org" <linux-mm@...ck.org>,
"kasan-dev@...glegroups.com" <kasan-dev@...glegroups.com>,
"iii@...ux.ibm.com" <iii@...ux.ibm.com>,
"linuxppc-dev@...ts.ozlabs.org" <linuxppc-dev@...ts.ozlabs.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 04/13] powerpc: Disable CONFIG_DCACHE_WORD_ACCESS when
KMSAN is enabled
Le 14/12/2023 à 06:55, Nicholas Miehlbradt a écrit :
> Word sized accesses may read uninitialized data when optimizing loads.
> Disable this optimization when KMSAN is enabled to prevent false
> positives.
>
> Signed-off-by: Nicholas Miehlbradt <nicholas@...ux.ibm.com>
> ---
> arch/powerpc/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
> index 6f105ee4f3cf..e33e3250c478 100644
> --- a/arch/powerpc/Kconfig
> +++ b/arch/powerpc/Kconfig
> @@ -182,7 +182,7 @@ config PPC
> select BUILDTIME_TABLE_SORT
> select CLONE_BACKWARDS
> select CPUMASK_OFFSTACK if NR_CPUS >= 8192
> - select DCACHE_WORD_ACCESS if PPC64 && CPU_LITTLE_ENDIAN
> + select DCACHE_WORD_ACCESS if PPC64 && CPU_LITTLE_ENDIAN && !KMSAN
> select DMA_OPS_BYPASS if PPC64
> select DMA_OPS if PPC64
> select DYNAMIC_FTRACE if FUNCTION_TRACER
Seems like all archs do this. Maybe a better approach would be to define
a HAVE_DCACHE_WORD_ACCESS that is selected by arches, and then the core
part select DCACHE_WORD_ACCESS when HAVE_DCACHE_WORD_ACCESS && !KMSAN
Christophe
Powered by blists - more mailing lists