Re: spinlocks on powerpc

Robert Haas <robertmhaas@gmail.com>

From: Robert Haas <robertmhaas@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Manabu Ori <manabu.ori@gmail.com>, Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>, Tatsuo Ishii <ishii@postgresql.org>, pgsql-hackers@postgresql.org
Date: 2012-01-03T22:21:36Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Use LWSYNC in place of SYNC/ISYNC in PPC spinlocks, where possible.

  2. Reduce sinval synchronization overhead.

On Tue, Jan 3, 2012 at 4:17 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> For Itanium, I was able to find some fairly official-looking
>> documentation that said "this is how you should do it".  It would be
>> nice to find something similar for PPC64, instead of testing every
>> machine and reinventing the wheel ourselves.
>
> You are aware that our spinlock code is pretty much verbatim from the
> PPC ISA spec, no?  The issue here is that the "official documentation"
> has been a moving target over the decades the ISA has been in existence.

I wasn't aware of that, but I think my basic point still stands: it's
gonna be painful if we have to test large numbers of different PPC
boxes to figure all this out...

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