Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Jan 2007 13:44:06 -0500
From:      Randall Stewart <rrs@cisco.com>
To:        current@freebsd.org
Subject:   how to find out what the other CPU is doing
Message-ID:  <45A533F6.7030405@cisco.com>

next in thread | raw e-mail | index | archive | help
All:

I have now pinpointed a problem.. or at least
I know whats going on..

I have a dual-core machine..

CPU1 gets swi: net running on it.. I am sure it
has received an SCTP packet since it has a lock
on a TCB.

the sw4: clock sio in fact gets hung up waiting
for the locked TCB that swi:net holds.

The other CPU, cpu0 is still free.. I can
thus drop into DDB>

I took a core of this.. but I could not
gain much.. and it comes from my ignorance I think..

So my question is how do I find out what loop
swi:net is trapped in..

If I have a kernel core, can I somehow look at this?

I dumped the entire stack and poked around in it
a bit.. looking at where its esp and ebp were set.. but
I could not figure out how to follow this..

I tried using
proc 'tid'
(as John suggested to me) and when I try a bt

it just gives me a

???? and an address..

Is there anyway I can get a hint out of the situation.

If I do trace in DDB> it just showed me where I was
on CPU0 with the keyboard interupt.. etc..

Any help in getting additional info would be wonderful... I need
to at least get a hint as to how this thing is in a loop..

I currently have the machine cooking again.. it takes 3-4 days
to get it to hit this state...

So if someone has an idea of something to try I would apprecicate
it :-)

Thanks in advance

R
-- 
Randall Stewart
NSSTG - Cisco Systems Inc.
803-345-0369 <or> 803-317-4952 (cell)



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