Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Jan 2002 15:24:34 +0100
From:      Bernd Walter <ticso@cicely8.cicely.de>
To:        Terry Lambert <tlambert2@mindspring.com>
Cc:        Jake Burkholder <jake@locore.ca>, Alfred Perlstein <bright@mu.org>, Dan Eischen <eischen@vigrid.com>, arch@FreeBSD.ORG
Subject:   Re: Request for review: getcontext, setcontext, etc
Message-ID:  <20020107152434.B19289@cicely8.cicely.de>
In-Reply-To: <3C396554.9B6A9053@mindspring.com>
References:  <3C37E559.B011DF29@vigrid.com> <20020106032709.A82406@elvis.mu.org> <3C381B48.AADDCA2B@mindspring.com> <20020106113847.A15885@cicely8.cicely.de> <20020107015228.E39321@locore.ca> <3C396554.9B6A9053@mindspring.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jan 07, 2002 at 01:07:32AM -0800, Terry Lambert wrote:
> The "flushw" is not enough.
> 
> The following paper discusses the original implementation of the
> "liblwp" code on SunOS 4.x:
> 
> http://www.cs.washington.edu/research/compiler/papers.d/thread-regwin.html

It's uses a flushw emulation, because it had to deal with CPUs which
don't have a flushw instruction.
Well in fact it's wrong from the 1991 standpoint to name this
emulation, because I asume sparcv9 wasn't there, but the result is
the same.

> The basic problem is that stack is cached in registers, not flushed
> to RAM, and you may be resuming on another processor while another
> one still hasn't written the register caches back so that the
> memory image you load on the new processor is valid.

flushw does window exceptions until only the last is in CPU.
It wasn't available when the documents you pointed where written.

-- 
B.Walter              COSMO-Project         http://www.cosmo-project.de
ticso@cicely.de         Usergroup           info@cosmo-project.de


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020107152434.B19289>