From: | Zdenek Kotala <Zdenek(dot)Kotala(at)Sun(dot)COM> |
---|---|
To: | PGSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | AMD64 dual core mutex/spinlock problem |
Date: | 2006-04-27 10:14:54 |
Message-ID: | 1146132894.11219.57.camel@unknown |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Some AMD64 dual core processor series has problem with atomic operation
"lock cmpxchg". It does not work correctly in some case. (I don't know
if it is bug or feature.) This problem occurred in the solaris on the
AMD64 platform. Postgres implement own lock mechanism with similar code
"lock xchg". I am not sure if this is wrong or not. My question is, If
someone has problem with spinlock on AMD64 dual core in 64-bit mode.
- Zdenek
PS: You can see Solaris mutex_enter code on
http://cvs.opensolaris.org/source/xref/on/usr/src/uts/intel/ia32/ml/lock_prim.s
Extra lfence instruction after atomic operation fix the problem.
From | Date | Subject | |
---|---|---|---|
Next Message | Martijn van Oosterhout | 2006-04-27 10:52:42 | Re: ANSI-strict pointer aliasing rules |
Previous Message | Andrew Dunstan | 2006-04-27 10:04:19 | Re: ANSI-strict pointer aliasing rules |