[OpenAFS-devel] fileserver deadlocks after internal error in
callback.c
Rainer Toebbicke
rtb@pclella.cern.ch
Tue, 15 Apr 2003 10:57:01 +0200
Derrick J Brashear wrote:
>>In most cases ShutDown() is called with the H_LOCK lock held, and will
>>eventually call PrintCounters(). This in turn calls routines that acquire all
>>sorts of locks, in particular H_LOCK in h_GetWorkStats(), at which point a
>>deadlock situation arises.
>
>
> It's already fixed another way in 1.2.9
Sure?
Checking on 1.2.9-rc4 and in the 'cvsweb.cgi' tree: CleanupTimedOutCallBacks_r
in callback.c holds the H_LOCK and may well call ShutDown(), eventually
falling through to h_GetWorkStats() which starts with H_LOCK.
I didn't see that lock being dropped but might have missed something, but what?
(In another place an 'assert(0)' "solves" the hanger but that's only one
occasion).
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Rainer Toebbicke http://cern.ch/~rtb rtb@mail.cern.ch O__
European Laboratory for Particle Physics(CERN) - Geneva, Switzerland > |
Phone: +41 22 767 8985 Fax: +41 22 767 7155 ( )\( )