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