[OpenAFS-port-darwin] callbacks hanging on Intel Macs?

Derrick J Brashear shadow@dementia.org
Thu, 12 Oct 2006 08:45:33 -0400 (EDT)


On Wed, 11 Oct 2006, Nicholas Riley wrote:

> We've been having some issues with files mysteriously not appearing
> recently.  It turns out to be pretty reproducible on our Intel Macs
> with 1.4.2fc4, and not reproducible on corresponding PowerPC Macs (or
> our other-OS machines, but they're running different client versions).
> The server in question is running 1.4.2fc4 on Solaris 10, and I've
> been able to reproduce it with a couple of different volumes on that
> server.
>
> Compare (in all cases, the file doesn't exist to start with):
[]

> ppc% touch bar
> touch: bar: No such file or directory
> # should this happen?
> ppc% touch bar
> intel% ls bar
> ls: bar: No such file or directory

Intel is 32 or 64 bit? Can you get fstrace data?

> If I run cmdebug against the machine while it's hanging like that, I see:
>
> ** Cache entry @ 0x3b2eb7e4 for 89.536871243.1.1 [acm.uiuc.edu]
>    locks: (writer_waiting, write_locked(pid:1262 at:135), 1 waiters)

Real work done in locker 135:
RXAFS_CreateFile(tc->id, (struct AFSFid *)&adp->fid.Fid,
                                  aname, &InStatus, (struct AFSFid *)
                                  &newFid.Fid, &OutFidStatus, 
&OutDirStatus,
                                  &CallBack, &tsync);

in a while loop:
     } while (afs_Analyze
              (tc, code, &adp->fid, &treq, AFS_STATS_FS_RPCIDX_CREATEFILE,
               SHARED_LOCK, NULL));
So then the questions there: rxdebug the client and whatever server it's 
talking to, perhaps tcpdump the traffic between the two?