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