On Wed, Dec 18, 2024 at 10:54:21PM +0100, Magnus Lindholm wrote: > > If I understand your proposed changes correctly, this could increase > > the amount of time CPUs spend waiting for for the csd_data to become free. > > This would be a very unwelcome development in some quarters. > > you're probably right, this might not be the right approach. > > > preventing it from happening. > > > > So what am I missing here? > > Maybe a per-cpu variable is the wrong way to go about it. I'm trying to get a > better understanding of why, even quite simple, structs get corrupted when > accessed by kernel threads. The compiler may be at fault, but is it possible > that there is something else going on, which is specific to alpha and we're > seeing more of this on more recent kernels which makes better use of > threads? Are the s390 guys seeing this problem? Maybe they saw it in the past and did something to work around it. In the past, there have been compiler optimizations that would use a large store to update a smaller variable, and then do small stores to fix up the clobbered areas. These were all supposed to have been removed for C11. Might some linger in Alpha's compilers? Thanx, Paul