linux-mips
[Top] [All Lists]

Re: Tester with IP27/IP30 needed

To: Ralf Baechle <ralf@linux-mips.org>
Subject: Re: Tester with IP27/IP30 needed
From: Kumba <kumba@gentoo.org>
Date: Fri, 25 Jan 2008 22:12:50 -0500
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>, Florian Lohoff <flo@rfc822.org>, linux-mips@linux-mips.org, debian-mips@lists.debian.org
In-reply-to: <20080122154958.GA29108@linux-mips.org>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <20080115112420.GA7347@alpha.franken.de> <20080115112719.GB7920@paradigm.rfc822.org> <20080117004054.GA12051@alpha.franken.de> <479609A6.2020204@gentoo.org> <20080122154958.GA29108@linux-mips.org>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Thunderbird 2.0.0.9 (Windows/20071031)
Ralf Baechle wrote:

It's a cache instruction so priviledged which means userspace can't execute
it.  It's also entirely unclear if a cache barrier instruction would make a
difference at all.

The cache barrier has an interesting effect. I built three binaries: f, f2, and f3 (I'm cheap on the names):

f  - cache barriers on load and stores (-mr10k-cache-barrier=2)
f2 - cache barriers on loads only (-mr10k-cache-barrier=1)
f3 - no cache barriers (flag omitted from gcc)

Running 'f' and 'f2' generates an "Illegal instruction" error, then drops back to the command line, while 'f3' hangs the box. This is an IP28 running on 2.6.23.9, using Thomas' patches backported to fit (plus Peter's Impact code and two sgiseeq patches from upstream).

This is similar to using a gentoo stage3 in a chroot environment that was built back in May of 2007, so I think this hang up pre-dates glibc-2.7 by some degree, as that chroot uses glibc-2.5. Chroot into this userland, and run our "env-update" script, and you'll hang the box.

FYI, CPU rev in this machine is R10000 v2.5. I think that's the same for all IP28 systems.



--Kumba

--
Gentoo/MIPS Team Lead

"Such is oft the course of deeds that move the wheels of the world: small hands do them because they must, while the eyes of the great are elsewhere." --Elrond

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