[OpenAFS-devel] fileserver deadlocks after internal error in
callback.c
Rainer Toebbicke
rtb@pclella.cern.ch
Thu, 24 Apr 2003 14:29:09 +0200
Derrick J Brashear wrote:
> On Tue, 15 Apr 2003, Rainer Toebbicke wrote:
>
>
>>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?
>
>
> The lock isn't being dropped explicitly. Instead, we arrange for threads
> that might hold the lock to never take the signal.
>
which signal? 'ShutDown()' is called because of an internal error condition,
not because of a signal being received. That error condition can (well, at
least the code assume it can) happen to almost all the fileserver threads
regardless of what they block. Have a look in host.c or callback.c.
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
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 ( )\( )