On Mon, Dec 19, 2011 at 05:09:11PM +0200, Heikki Linnakangas wrote:
> Actually, I believe our Itanium (and possibly ARM, too) implementation  
> of S_UNLOCK() is wrong as it is. There is no platform-specific  
> S_UNLOCK() defined for Itanium, so we're using the generic 
> implementation:
>
> #if !defined(S_UNLOCK)
> #define S_UNLOCK(lock)                (*((volatile slock_t *) (lock)) = 0)
> #endif         /* S_UNLOCK */
>
> That is not sufficient on platforms with a weak memory model, like Itanium.

Other processors may observe the lock as held after its release, but there's no
correctness problem.

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

Reply via email to