linux-mips
[Top] [All Lists]

Re: Surprise! (Re: MIPS_ATOMIC_SET again (Re: newest kernel

To: "Maciej W. Rozycki" <macro@ds2.pg.gda.pl>
Subject: Re: Surprise! (Re: MIPS_ATOMIC_SET again (Re: newest kernel
From: Ralf Baechle <ralf@oss.sgi.com>
Date: Thu, 31 May 2001 13:54:55 +0200
Cc: Jun Sun <jsun@mvista.com>, Joe deBlaquiere <jadb@redhat.com>, "Kevin D. Kissell" <kevink@mips.com>, linux-mips@oss.sgi.com
In-reply-to: <Pine.GSO.3.96.1010528172454.15200I-100000@delta.ds2.pg.gda.pl>; from macro@ds2.pg.gda.pl on Mon, May 28, 2001 at 05:34:26PM +0200
References: <3B0ED686.C1D85CE1@mvista.com> <Pine.GSO.3.96.1010528172454.15200I-100000@delta.ds2.pg.gda.pl>
Sender: owner-linux-mips@oss.sgi.com
User-agent: Mutt/1.2.5i
On Mon, May 28, 2001 at 05:34:26PM +0200, Maciej W. Rozycki wrote:

> > Alright, I rolled my sleeve and digged into IRIX 6.5, and guess what? 
> > sysmips() does NOT have MIPS_ATOMIC_SET (2001) on IRIX!  See the header 
> > below.
> 
>  I remember Ralf writing of this being a compatibility call with RISC/OS
> (is it the original OS of MIPS, Inc.?), IIRC.  Ralf: am I right? 

Yes; this function is also implemented for IRIX 5 which we have some
binary compatibility code for.

> > So apparently MIPS_ATOMIC_SET was invented for Linux only, probably just to
> > implement _test_and_set().  (It would be interesting to see how IRIX
> > implement _test_and_set() on MIPS I machines.  However, the machine I
> > have access uses ll/sc instructions).

I don't recall seeing a _test_and_set() in the IRIX API/ABI.

>  Does IRIX actually run on anything below ISA II?

Well, it ran.  A loong time ago.  IRIX dropped support for MIPS I in IRIX 6.
That makes sense as IRIX 6 is only running on R4000 and better, that is
MIPS III CPUs.

  Ralf

<Prev in Thread] Current Thread [Next in Thread>