[OpenAFS-port-darwin] Re: OS X hangs when accessing files

Theodore F Vaida ted@contrailservices.com
Mon, 9 Aug 2004 14:11:47 -0600


>> ding ding ding - I saw a few threads on the other lists about the 
>> threads issue however nothing concrete as to how to solve it - I 
>> think you referenced one person to use the fileserver binary from the 
>> src/viced directory in the source tree but that is the only 
>> fileserver binary in the make and its whats
>
> src/viced/fileserver and src/tviced/fileserver are both made, and for 
> a platform with pthreads the latter is installed.

Ok to summarize for posterity, and get this discussion off the Darwin 
specific list :)

The openafs build installs the pthreads 'fileserver' binary by default 
but the new posix threads library (pthreads/NPTL) doesn't behave well 
all the time and can cause the client to hang or freeze.  The solution 
is to use the older lightweight threads (LWP) version.  The twist is 
that you _must_ grab this binary from the
source build because, with gentoo at least, the pthreads version is 
what gets installed.

Cause the source to get built (easy in gentoo, just use 'ebuild <name 
of package> compile') and then go into the source tree and grab the 
binary 'fileserver' which is in <root of build>/src/viced - fyi the 
pthreaded version is built in <root of build>/src/tviced - diff your 
binaries to check which one is getting used.

Sounds right Derrick?  Incidentally I tried the LD_ASSUME option - it 
didnt do squat on the Gentoo (2004.01) dist I'm using - either the 
linker is ignoring the option or the scripts which call the fileserver 
out of bosserver dont pass the environment along - I couldnt tell 
which.

Ted