lock up in 6.2 (procs massively stuck in Giant)
pluknet
pluknet at gmail.com
Tue May 12 06:12:29 UTC 2009
2009/5/11 John Baldwin <jhb at freebsd.org>:
> 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
>
I'm curious if it could be caused by heavy load.
I don't know what it might be definitely,
as it's non-trivial for me to determine the reason
of a livelock, and to debug it.
So I think it may have sense to try 7.x, as there
has been done much locking work.
Thank you.
--
wbr,
pluknet
More information about the freebsd-stable
mailing list