On Tue, Aug 4, 2015 at 11:33 AM, Andres Freund <and...@anarazel.de> wrote:
> On 2015-08-04 11:29:39 -0400, Robert Haas wrote:
>> On Mon, Aug 3, 2015 at 8:39 AM, Amit Kapila <amit.kapil...@gmail.com> wrote:
>> 1. I got rid of all of the typecasts.  You're supposed to treat
>> pg_atomic_u32 as a magic data type that is only manipulated via the
>> primitives provided, not just cast back and forth between that and
>> u32.
>
> Absolutely. Otherwise no fallbacks can work.
>
>> 2. I got rid of the memory barriers.  System calls are full barriers,
>> and so are compare-and-exchange operations.  Between those two facts,
>> we should be fine without these.
>
> Actually by far not all system calls are full barriers?

How do we know which ones are and which ones are not?

I can't believe PGSemaphoreUnlock isn't a barrier.  That would be cruel.

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


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to