[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240824171757.GL28254@gate.crashing.org>
Date: Sat, 24 Aug 2024 12:17:57 -0500
From: Segher Boessenkool <segher@...nel.crashing.org>
To: LEROY Christophe <christophe.leroy2@...soprasteria.com>
Cc: Christoph Hellwig <hch@....de>,
Christian Lamparter <christian.lamparter@....uni-stuttgart.de>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Paul Mackerras <paulus@...ba.org>,
Michael Ellerman <mpe@...erman.id.au>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linuxppc-dev@...ts.ozlabs.org" <linuxppc-dev@...ts.ozlabs.org>,
Stan Johnson <userm57@...oo.com>, Finn Thain <fthain@...ux-m68k.org>
Subject: Re: [PATCH v2] powerpc: warn on emulation of dcbz instruction in kernel mode
On Sat, Aug 24, 2024 at 09:01:33AM +0000, LEROY Christophe wrote:
> Le 23/08/2024 à 21:19, Segher Boessenkool a écrit :
> > The memset() code itself could chech for the storage attributes, but
> > that is probably more expensive than just assuming the happy case.
> > Maybe someone could try it out though!
>
> But is it only memset() the problem ?
>
> dcbz instruction is also used in:
> - memcpy()
> - csum_partial_copy_generic()
> - clear_page()
> - copy_page()
> - clear_user()
> - copy_to_user()
> - copy_from_user()
That is just a handful of functions. Not sure about the _user things,
and the _page things for that matter, but the rest is certainly
measurable in real-life conditions. So if we can avoid the problems
completely, and cheaply, we probably should.
I'm not so sure about the cheaply though :-/
> Are these functions also used on DMA coherent memory ?
Most won't show up high on most profiles, heh. Which you already
can see from the problem not being attacked yet: if it was so obviously
a problem, some people would have wanted to do something about it :-)
Segher
Powered by blists - more mailing lists