[OpenAFS] Re: Debugging opportunity (time-sensitive)

Jeff Blaine jblaine@kickflop.net
Wed, 18 May 2011 13:51:06 -0400


On 5/18/2011 1:25 PM, Andrew Deason wrote:
> On Wed, 18 May 2011 11:42:45 -0400
> Jeff Blaine<jblaine@kickflop.net>  wrote:
>
>>     0      ->  afs_GetDCache
>>     0        ->  afs_MemGetDSlot
>>     0          ->  Afs_Lock_ReleaseR
>>     0            ->  afs_osi_Wakeup
>>     0              ->  afs_getevent
>>     0<- afs_getevent
>>     0<- afs_osi_Wakeup
>>     0<- Afs_Lock_ReleaseR
>>     0<- afs_MemGetDSlot
>>     0        ->  afs_osi_Sleep
>>     0          ->  afs_getevent
>>     0<- afs_getevent
>
> So, waiting on tdc->lock, I think?
>
> Try the same thing with the attached D script; it may say who's holding
> it.

dtrace: script 'traceafs2.d' matched 2597 probes
CPU FUNCTION
   0  -> afs_root
   0  <- afs_root
   0  -> gafs_lookup
   0    -> afs_lookup
   0      -> afs_InitFakeStat
   0      <- afs_InitFakeStat
   0      -> afs_InitReq
   0        -> PagInCred
   0        <- PagInCred
   0      <- afs_InitReq
   0      -> afs_EvalFakeStat
   0        -> afs_EvalFakeStat_int
   0        <- afs_EvalFakeStat_int
   0      <- afs_EvalFakeStat
   0      -> afs_AccessOK
   0        -> afs_GetAccessBits
   0        <- afs_GetAccessBits
   0      <- afs_AccessOK
   0      -> Check_AtSys
   0      <- Check_AtSys
   0      -> osi_dnlc_lookup
   0      <- osi_dnlc_lookup
   0      -> afs_GetDCache
   0        -> afs_MemGetDSlot
   0          -> Afs_Lock_ReleaseR
   0            -> afs_osi_Wakeup
   0              -> afs_getevent
   0              <- afs_getevent
   0            <- afs_osi_Wakeup
   0          <- Afs_Lock_ReleaseR
   0        <- afs_MemGetDSlot
   0        -> afs_osi_Sleep
   0         | afs_osi_Sleep:entry             event 705ac1bc = 1023, 1, 
1, 1, 0, 0, 0, 2062683024, 2062683824, 0, 2062684288

   0          -> afs_getevent
   0          <- afs_getevent