On Wed, Oct 12, 2005 at 12:25:11PM -0400, Tom Lane wrote:
> "Kevin Grittner" <Kevin.Grittner@wicourts.gov> writes:
> > Declaring it as volatile gives:
> > [ valid code ]
>
> Good, so at least your compiler's not broken. I'm busy volatile-izing
> all the code in bufmgr.c ... should be able to commit a fix soon.
Well, I do notice none of the spinlock code has any memory barriers to
stop gcc moving code across them. I suppose volatile is one way of
solving that... Maybe explicit "don't optimise here" markers would be
worthwhile.
--
Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/
> Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a
> tool for doing 5% of the work and then sitting around waiting for someone
> else to do the other 95% so you can sue them.