On Mon, Apr 7, 2014 at 10:20 AM, Andres Freund <andres@2ndquadrant.com> wrote:
> On 2014-04-07 10:06:07 -0400, Robert Haas wrote:
>> I'm a bit suspicious of the patches to
>> static-ify stuff, since that might cause the compiler to think it
>> could move things across function calls that it hadn't thought
>> move-able before, but FastPathStrongLocks references would seem to be
>> the obvious candidate for that, and volatile-izing it ought to have
>> fixed it. I would think.
>
> Hm. It generally might be interesting to get a few !X86 buildfarms
> running builds with LTO enabled. That might expose some dangerous
> assumptions more easily.
I strongly suspect that will break stuff all over the place. We can
either get compiler barriers working for real, or we can start
volatile-izing every reference in an LWLock-protected critical
section. Hint: the second one is insane.
That might be off-topic for this issue at hand, though...
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company