Subject: Re: PostgreSQL 7.2.1 - fix, but who needs to know ?
To: David Brownlee <abs@netbsd.org>
From: Simon Burge <simonb@wasabisystems.com>
List: port-cobalt
Date: 06/18/2002 02:10:29
David Brownlee wrote:
> On Wed, 12 Jun 2002, Jason R Thorpe wrote:
>
> > On Wed, Jun 12, 2002 at 10:15:50AM +0100, David Brownlee wrote:
> > > Presumably the kernel can determine at runtime whether the
> > > current CPU supports the atomic TAS instructions?
> >
> > Beyond taking an illegal insn trap, no. Or having a table of models that
> > don't support it (no mips1 supports it, almost all mips3, mips32, mips64,
> > etc. CPUs support it, except for a few).
Somewhat annoyingly, all(?) the HPC MIPS based machines use CPUs that don't
support LL/SC either.
> > We need to solve this problem for the new pthread library, too. I think
> > the solution there was to use restartable sequences on CPUs which don't
> > have the LL/SC insns. (Though, the solution has not yet been implemented.)
>
> Is there any sense in having libc atomic TAS functions which can
> be implemented using the lowest common denominator on each arch,
> and then overridden with the ld.so.conf sysctl check where
> appropriate, or is that too much overhead?
From memory, the restartable sequences paper actually mentioned that
they were faster in the general case for CPUs that supported a LL/SC
style TAS too. I can't remember the SMP implications though...
Simon.
--
Simon Burge <simonb@wasabisystems.com>
NetBSD Support and Service: http://www.wasabisystems.com/