[OpenAFS] Problems running on X86-64 Linux

Eric Heydrick erich@cray.com
Tue, 4 Mar 2003 00:32:54 -0800 (PST)


I'm running into problems with OpenAFS 1.2.8 on an AMD X86-64 box running
SuSE Linux. The kernel is 2.4.19 running in 64-bit mode.  The kernel
module and user-space apps built fine.  The problem comes up when starting
the daemon.

Given that there isn't a sysname for this platform (perhaps there should
be an x86_64_linux24), I built as i386_linux24 and hacked around a few
x86-64 issues in the Makefiles. This might be part of the problem, though.

I've tried with both a disk cache:

(afsd -stat 300 -dcache 100 -daemons 2 -volumes 50)

users/erich# ./afs start
Starting AFS services.....
afsd: malloc() failed for cache file inode table with 859003459 entries.

(see below for -debug output)

and memcache:

(afsd -memcache -stat 2000 -dcache 12500 -daemons 3 -volumes 70)

users/erich# ./afs start
Starting AFS services.....
afsd: All AFS daemons started.
afsd: No check server daemon in client.
afsd: Can't mount AFS on /afs(22)


disk cache with -debug:

users/erich# ./afs start
Starting AFS services.....
afsd: My home cell is 'cray.com'
ParseCacheInfoFile: Opening cache info file '/etc/openafs/cacheinfo'...
ParseCacheInfoFile: Cache info file successfully parsed:
        cacheMountDir: '/afs'
        cacheBaseDir: '/var/afscache'
        cacheBlocks: 100000
afsd: 10000 inode_for_V entries at 0x40139610, 80000 bytes
SScall(137, 28, 17)=-1 afsd: Forking rx listener daemon.
afsd: Forking rx callback listener.
afsd: Forking rxevent daemon.
SScall(137, 28, 48)=-1 SScall(137, 28, 0)=-1 afsd: Forking AFS daemon.
afsd: Forking Check Server Daemon.
afsd: Forking 2 background daemons.
SScall(137, 28, 19)=-1 SScall(137, 28, 1)=-1 SScall(137, 28, 4)=-1 afsd:
No check server daemon in client.
SScall(137, 28, 2)=-1 SScall(137, 28, 29)=-1 afsd: Calling
AFSOP_CACHEINIT: 300 stat cache entries, 10000 optimum cache files, 100000
blocks in the cache, flags = 0x0, dcache entries 100
SScall(137, 28, 6)=-1 afsd: Sweeping workstation's AFS cache directory.
doSweepAFSCache: Opening cache directory '/var/afscache'
doSweepAFSCache: Current directory entry:
        inode=556783, reclen=32, name='.'
doSweepAFSCache: Current directory entry:
        inode=16, reclen=32, name='..'
doSweepAFSCache: Current directory entry:
        inode=546386, reclen=32, name='D0'
doSweepAFSCache: Opening cache directory '/var/afscache/D0'
doSweepAFSCache: Current directory entry:
        inode=546386, reclen=32, name='.'
doSweepAFSCache: Current directory entry:
        inode=556783, reclen=32, name='..'
doSweepAFSCache: Current directory entry:
[10000 lines deleted]
afsd: 10000 out of 10000 data cache files found in sweep 1.
afsd: Calling AFSOP_CACHEINFO: dcache file is '/var/afscache/CacheItems'
SScall(137, 28, 7)=-1 afsd: Calling AFSOP_VOLUMEINFO: volume info file is
'/var/afscache/VolumeItems'
SScall(137, 28, 8)=-1 afsd: Calling AFSOP_AFSLOG: volume info file is
'/etc/openafs/AFSLog'
SScall(137, 28, 11)=-1 afsd: Calling AFSOP_CACHEINODE for each of the
10000 files in '/var/afscache'
SScall(137, 28, 10)=-1 SScall(137, 28, 10)=-1 SScall(137, 28, 10)=-1
SScall(137, 28, 10)=-1 SS
[...]
SScall(137, 28, 100)=-1 afsd: All AFS daemons started.
afsd: Forking trunc-cache daemon.
afsd: Mounting the AFS root on '/afs', flags: 0.
afsd: Can't mount AFS on /afs(22)


Any ideas?  Thanks.

-Eric