Re: [HACKERS] Re: [PATCHES] patches for 6.2.1p6 - Mailing list pgsql-hackers

From Tom Ivar Helbekkmo
Subject Re: [HACKERS] Re: [PATCHES] patches for 6.2.1p6
Date
Msg-id 86wwdrekic.fsf@barsoom.Hamartun.Priv.NO
Whole thread Raw
In response to Re: [HACKERS] Re: [PATCHES] patches for 6.2.1p6  (Bruce Momjian <maillist@candle.pha.pa.us>)
Responses Re: [HACKERS] Re: [PATCHES] patches for 6.2.1p6  (dg@illustra.com (David Gould))
Re: [HACKERS] Re: [PATCHES] patches for 6.2.1p6  (Bruce Momjian <maillist@candle.pha.pa.us>)
List pgsql-hackers
* Bruce Momjian
|
| Just a warning that this is not going to be easy.  We have OS-specific
| code for spinlocks in include/storage/s_lock.h and
| backend/storage/buffer/s_lock.c.  So each S_LOCK macro call has to have
| its test-and-set logic de-coupled with its while-lock-fail-try-again
| logic.  Most of them are easy, but some like VAX:
|
| #define S_LOCK(addr)        __asm__("1: bbssi $0,(%0),1b": :"r"(addr))
|
| are hard to de-couple.  Now, I did not know we supported NetBSD on VAX.
| Does it work, anyone?  Can I remove it?

Yes, it works.  No, please don't break it.  Heck, I only just got it
in in time for 6.3!  :-) The not-so-busy-waiting-spinlock stuff can be
put in on a platform at a time -- I'll expand the VAX version to do
the right thing once someone has done another platform, so I can see
what's the preferred way of doing it.

-tih
--
Popularity is the hallmark of mediocrity.  --Niles Crane, "Frasier"

pgsql-hackers by date:

Previous
From: Mattias Kregert
Date:
Subject: Timezone problems / HAVE_INT_TIMEZINE
Next
From: t-ishii@sra.co.jp
Date:
Subject: Re: [HACKERS] varchar() vs char16 performance