Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Nov 2003 11:53:42 -0800
From:      Marcel Moolenaar <marcel@xcllnt.net>
To:        Daniel Eischen <eischen@vigrid.com>
Cc:        davidxu@freebsd.org
Subject:   Re: KSE/ia64 broken
Message-ID:  <20031116195342.GA60773@dhcp01.pn.xcllnt.net>
In-Reply-To: <Pine.GSO.4.10.10311161414290.29933-100000@pcnet5.pcnet.com>
References:  <20031116182219.GB60377@dhcp01.pn.xcllnt.net> <Pine.GSO.4.10.10311161414290.29933-100000@pcnet5.pcnet.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Nov 16, 2003 at 02:30:20PM -0500, Daniel Eischen wrote:
> On Sun, 16 Nov 2003, Marcel Moolenaar wrote:
> 
> > On Sun, Nov 16, 2003 at 12:18:33PM -0500, Daniel Eischen wrote:
> > > 
> > > Are you sure there's not an ia64 kernel bug or ia64 context
> > > restoring bug?
> > 
> > There's nothing pointing in that direction yet. I keep thinking
> > that the case is related to having TP per thread on ia64, while
> > it's per KSE on i386.
> 
> If you noop the spinlock/spinunlock, the problem still
> occurs.

Hmmm, good to know. It tells me that the lock is in reality
already a no-op :-)

> What should I be looking at, [um]c_flags?

mc_flags is very informative.

>   $ simple
>   Found completed thread 6000000000014000, uc_flags 0x0, mc_flags 0x8, name initial thread

This is a context created by the kernel. It's one created by getcontext().
Only the kernel needs to preserve the return registers (which is what
mc_flags indicates) because it needs to be able to resume system calls.

>   Switching out thread 6000000000014000, state 0
>   Threads in waiting queue:
>   Found completed thread 6000000000014000, uc_flags 0x0, mc_flags 0x3, name initial thread

This is an asynchronuous context. Probably the result of a trap, but
possibly the result of an interrupt. Does this mean that the thread
has run since it was last found (i.e. the previous context) or do we
have a case where a context is clobbered (I don't see a switch in)?

-- 
 Marcel Moolenaar	  USPA: A-39004		 marcel@xcllnt.net



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