Messages in this thread | | | Date | Wed, 3 Dec 2014 23:02:48 -0800 | From | "Paul E. McKenney" <> | Subject | Re: [PATCH RFC] locking: Add volatile to arch_spinlock_t structures |
| |
On Wed, Dec 03, 2014 at 10:40:45PM -0800, Linus Torvalds wrote: > On Dec 3, 2014 10:31 PM, "Linus Torvalds" <torvalds@linux-foundation.org> > wrote: > > > > So no, no, no. C got this wrong. Volatile data structures are a > fundamental mistake and a bug. > > BTW, I'm not at all interested in language lawyering and people who say > "but but we can do x". A compiler that modifies adjacent fields because the > standard leaves is open is a crap compiler, and we won't use it, or disable > the broken optimization. It is wrong from a concurrency standpoint anyway, > and adding broken volatiles is just making things worse.
Understood, for example, adjacent fields protected by different locks as one example, where adjacent-field overwriting completely breaks even very conservatively designed code. Should be entertaining! ;-)
Thanx, Paul
| |