Re: removing volatile qualifiers from lwlock.c - Mailing list pgsql-hackers

From Robert Haas
Subject Re: removing volatile qualifiers from lwlock.c
Date
Msg-id CA+TgmoYmrmhOwZVBqpq9YLKKExRks4EOk_aFjP1UvgD7EE_fDw@mail.gmail.com
Whole thread Raw
In response to Re: removing volatile qualifiers from lwlock.c  (Andres Freund <andres@2ndquadrant.com>)
Responses Re: removing volatile qualifiers from lwlock.c
List pgsql-hackers
On Wed, Sep 17, 2014 at 7:45 AM, Andres Freund <andres@2ndquadrant.com> wrote:
> I just tried this on my normal x86 workstation. I applied your lwlock
> patch and ontop I removed most volatiles (there's a couple still
> required) from xlog.c. Works for 100 seconds. Then I reverted the above
> commits. Breaks within seconds:
> master:
> LOG:  request to flush past end of generated WAL; request 2/E5EC3DE0, currpos 2/E5EC1E60
> standby:
> LOG:  record with incorrect prev-link 4/684C3108 at 4/684C3108
> and similar.
>
> So at least for x86 the compiler barriers are obviously required and
> seemingly working.

Oh, that's great.  In that case I think I should go ahead and apply
that patch in the hopes of turning up any systems where the barriers
aren't working properly yet.  Although it would be nice to know
whether it breaks with *only* the lwlock.c patch.

> I've attached the very quickly written xlog.c de-volatizing patch.

I don't have time to go through this in detail, but I don't object to
you applying it if you're confident you've done it carefully enough.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: CreateEventTrigStmt copy fix
Next
From: Andrew Gierth
Date:
Subject: Re: Final Patch for GROUPING SETS