From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Markus Wanner <markus(at)bluegap(dot)ch>, Aidan Van Dyk <aidan(at)highrise(dot)ca>, Robert Haas <robertmhaas(at)gmail(dot)com>, Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Bruce Momjian <bruce(at)momjian(dot)us>, Josh Berkus <josh(at)agliodbs(dot)com> |
Subject: | Re: Latches with weak memory ordering (Re: max_wal_senders must die) |
Date: | 2010-11-19 16:31:42 |
Message-ID: | 201011191731.42929.andres@anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Friday 19 November 2010 17:25:57 Tom Lane wrote:
> Andres Freund <andres(at)anarazel(dot)de> writes:
> > Locked statments like 'lock xaddl;' guarantee that the specific operands
> > (or their cachelines) are visible on all processors and are done
> > atomically - but its not influencing the whole cache like mfence would.
> Where is this "locking the whole cache" meme coming from? What we're
> looking for has nothing to do with locking anything. It's primarily
> a directive to the processor to flush any dirty cache lines out to
> main memory. It's not going to block any other processors.
I was never talking about 'locking the whole cache' - I was talking about
flushing/fencing it like a "global" read/write barrier would. And "lock
xchgb/xaddl" does not imply anything for other cachelines but its own.
I only used 'locked' in the context of 'lock xaddl'.
Am I misunderstanding you?
Andres
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2010-11-19 16:57:09 | Re: Latches with weak memory ordering (Re: max_wal_senders must die) |
Previous Message | Tom Lane | 2010-11-19 16:25:57 | Re: Latches with weak memory ordering (Re: max_wal_senders must die) |