lock up in 6.2 (procs massively stuck in Giant)

John Baldwin jhb at freebsd.org
Mon May 11 16:49:38 UTC 2009


On Monday 04 May 2009 11:41:35 pm pluknet wrote:
> 2009/5/1 John Baldwin <jhb at freebsd.org>:
> > On Thursday 30 April 2009 2:36:34 am pluknet wrote:
> >> Hi folks.
> >>
> >> Today I got a new locking issue.
> >> This is the first time I got it, and it's merely reproduced.
> >>
> >> The box has lost both remote connection and local access.
> >> No SIGINFO output on the local console even.
> >> Jumping in ddb> shows the next:
> >>
> >> 1) first, this is a 8-way web server. No processes on runqueue except one
> > httpd
> >> (i.e. ps shows R in its state):
> >
> > You need to find who owns Giant and what that thread is doing.  You can 
try
> > using 'show lock Giant' as well as 'show lockchain 11568'.
> >
> 
> Hi, John!
> 
> Just reproduced now on another box.
> Hmm.. stack of the process owing Giant looks garbled.
> 
> db> show lock Giant
>  class: sleep mutex
>  name: Giant
>  flags: {DEF, RECURSE}
>  state: {OWNED, CONTESTED}
>  owner: 0xd0d79320 (tid 102754, pid 34594, "httpd")
> 
> db> show lockchain 34594
> thread 102754 (pid 34594, httpd) running on CPU 7
> db> show lockchain 102754
> thread 102754 (pid 34594, httpd) running on CPU 7

The thread is running, so we don't know what it's top of stack is and you 
can't a good stack trace in that case.

None of your CPUs are idle, so I don't think you have any sort of deadlock.  
You might have a livelock.

-- 
John Baldwin


More information about the freebsd-stable mailing list