Andy McFadden b1c9cc2f2d Add memory barriers to pthread_once.
The implementation was using a double-checked locking approach that
could break on SMP.

In addition to the barriers I also switched to a volatile pointer.  I
don't think this will matter unless gcc can conclude that _normal_lock
can't affect *once_control, but I figured it was better to be safe.
(It seems to have no impact whatsoever on the generated code.)

Bug 3022795.

Change-Id: Ib91da25d57ff5bee4288526e39d457153ef6aacd
2010-09-23 12:30:12 -07:00
..
2010-01-15 15:57:02 -08:00
2010-06-11 13:49:09 -07:00
2009-03-03 19:28:35 -08:00
2009-03-03 19:28:35 -08:00
2010-07-23 13:10:16 -07:00
2010-09-23 12:30:12 -07:00