[$] Calibrating your fear of big bad optimizing compilers
As notedearlier,when compiling Linux-kernel code that does a plain C-language load orstore, as in"a=b", the C standard grants the compiler the rightto assume that the affected variables are neither accessed nor modifiedby any other thread at the time of that load or store.The compiler is therefore permitted to carry out a surprisinglylarge number of optimizations, any number of which might ruin yourconcurrent code's day.Given that current compilers usually do not emit diagnostics warning ofpotential ruined days, it would be good to have other tools take on thistask.