Coda File System

Re: Aaargh.

From: Quinn Weaver <qweaver_at_vovida.com>
Date: Wed, 9 Feb 2000 15:23:10 -0800 (PST)
On Wed, 9 Feb 2000, Jan Harkes wrote:

> On Wed, Feb 09, 2000 at 01:06:36PM -0800, Quinn Weaver wrote:
> > On Wed, 9 Feb 2000, Quinn Weaver wrote:
> > 
> > > Aha!
> > > 
> > > 20:43:37 New SrvLog started at Tue Feb  8 20:43:37 2000
> > > 
> > > 20:43:37 Resource limit on data size are set to 2147483647
> > > 
> > > 20:43:37 Server etext 0x813fa03, edata 0x81878b0
> > > 20:43:37 No RvmType selected!
> > > 
> > > That looks like a memory-mapping problem to me.  I'm not sure what
> > > "No RvmType selected" means, though.
> > > 
> > > [...]
> > > 
> > > I'll bet that's the problem.  I'll try re-running rdsinit and see what
> > > happens.
> > 
> > O.K., I re-did rdsinit with the same values, except that I entered a
> > starting address of 0x50000000 for memory-mapped RVM.  Again, codasrv
> > starts without complaint, but then silently dies.  (It doesn't even leave
> > a zombie for debugging).  It writes this message in /vice/srv/SrvLog:
> > 
> > 13:00:10 New SrvLog started at Wed Feb  9 13:00:10 2000
> > 
> > 13:00:10 Resource limit on data size are set to 2147483647
> > 
> > 13:00:10 Server etext 0x813fa03, edata 0x81878b0
> > 13:00:10 No RvmType selected!
> 
> Ok, I've figured it out, you've left out the -rvm at the beginning of
> /vice/srv.conf
> 
> it should look like:
> 
> -rvm <logdevice> <datadevice> <rvmsize>
> ^^^^

Aaargh, I didn't read vice-setup-rvm closely enough.  :P  How could I have
missed that?  Thanks for ferreting out my mistake.

Now the server starts and stays alive, runnning as codasrv -t 1000 -trunc 5 -debarrenize -nosalvageonshutdown -nodumpvm -rvm /dev/sdc7 /dev/sdc5 424673280
(according to ps auxww).

Initially venus failed, as before.  After waiting a few minutes, I tried to
start venus on the SCM again, just to reproduce the error message--and it
worked!  It must have taken some time to let go of the reference to
/dev/cfs0.  Weird.  Now it prints the following:

root_at_boc# venus -init

Date: Wed 02/09/2000

14:56:30 /usr/coda/LOG setup for size 0x1079b6
14:56:30 /usr/coda/DATA initialized at size 0x41e6d8
14:56:30 brain-wiping recoverable store
14:56:30 loading recoverable store
14:56:30 starting VSGDB scan
14:56:30        0 vsg entries in table
14:56:30        0 vsg entries on free-list
14:56:30 starting VDB scan
14:56:30        1 vol entries in table (0 MLEs)
14:56:30        0 vol entries on free-list (0 MLEs)
14:56:30 starting FSDB scan (1666, 40000) (25, 75, 4)
14:56:30        0 cache files in table (0 blocks)
14:56:31        1666 cache files on free-list
14:56:31 starting HDB scan
14:56:31        0 hdb entries in table
14:56:31        0 hdb entries on free-list
14:56:31 Kernel version ioctl failed (Inappropriate ioctl for device)!
14:56:31 2.3 or later kernels require an updated kernel module!
14:56:31 Initial LRDB allocation
14:56:31 Getting Root Volume information...
Killed

Every time I run it on the SCM, it immediately dies while trying to get
root volume information.  Errors from the MS-DOS window for venus -init
-root coda_root indicate the same thing:

Date: Wed 02/09/2000

15:10:48 /usr/coda/LOG setup for size 0x257fec
15:10:48 /usr/coda/DATA initialized at size 0x95ffb0
15:10:48 brain-wiping recoverable store
15:10:48 loading recoverable store
15:10:48 starting VSGDB scan
15:10:48        0 vsg entries in table
15:10:48        0 vsg entries on free-list
15:10:49 starting VDB scan
15:10:49        1 vol entries in table (0 MLEs)
15:10:49        0 vol entries on free-list (0 MLEs)
15:10:50 starting FSDB scan (1500, 150000) (25, 75, 4)
15:10:50        0 cache files in table (0 blocks)
15:10:55        1500 cache files on free-list
15:10:55 starting HDB scan
15:10:55        0 hdb entries in table
15:10:55        0 hdb entries on free-list
15:10:55 Mariner: listening on tcp port enabled, disable with -noMarinerTcp
15:10:55 Initial LRDB allocation
15:10:55 Getting Root Volume information...
15:10:55 GetRootVolume: can't get volinfo for root volume (coda_root)!
15:11:10 GetRootVolume: can't get volinfo for root volume (coda_root)!

et cetera.

O.K., it seems the root volume was never created, and, indeed,
/vice/vol/AllVolumes and /vice/vol VRList are empty.

On the SCM, I attempt to create the volume:

root_at_boc:/etc/rc.d/rc3.d# createvol_rep coda_root E0000100 /vicepa/
Servers are (boc )
HexGroupId is 7F000006
creating volume coda_root.0 on boc
V_BindToServer: binding to host boc.private.vovida.com
VolCreate failed with Unknown RPC2 return code 103
Failure to make volume on boc!. Abort..

On the server end, I see this message in /vice/srv/SrvLog:

15:04:38 No idle WriteBack conns, building new one
15:04:38 Writeback message to 192.168.5.106 port 2430 on conn 29df5e52 succeeded
15:04:38 VLDBLookup: VLDB_size unset. Calling VCheckVLDB()
15:04:38 VCheckVLDB:  could not open VLDB
15:04:38 VLDBLookup: No or bad vldb.
15:04:53 VLDBLookup: VLDB_size unset. Calling VCheckVLDB()

--and so on, with the last three messages repeating several times, ending with
this message:

15:08:54 VGetPartition Couldn't find partition /vicepa/
15:08:54 VCreateVolume: Cannot find partition /vicepa/. Bailing out.

So it appears that the VLDB doesn't contain any information about the root
volume, which I very imaginatively named coda_root during the vice-setup
process.

Later messages in /vice/srv/SrvLog seem to come from my attempt to create
the root volume:

15:08:54 Unable to create the volume; aborted
15:08:54 create: volume creation failed for volume 1000001
15:08:54 status = (103) 
15:14:19 Callback failed RPC2_DEAD (F) for ws 192.168.5.106, port 2430
15:14:19 Unbinding RPC2 connection 656413170
15:14:19 Unbinding RPC2 connection 281709243
15:14:19 Unbinding RPC2 connection 536428876

Do you know what's going on?  This seems like a place where the only
resort is to read the source.  Maybe you should give me some pointers as to
where to start looking, so I can start untangling the source myself.

Thanks as always for your diligent, guru-like help. :)

-- 
Quinn Weaver  Software Engineer  ,      Vovida Networks  http://www.vovida.com
"I'm swingin' swords          o-=*|>>>>>>>>>>            ===()==========>     
  Strictly based on keyboards".  '         --The RZA             <==()==  
Received on 2000-02-09 18:23:14