Coda File System

Re: a few more build buglets in 6.1.2 on freebsd 6.1-release

From: Sean Caron <caron.sean_at_gmail.com>
Date: Wed, 8 Nov 2006 22:28:03 -0500
hi jan --

i saw that i wrote my last message too soon and that you had posted
the patches to the list, so i gave them a shot -- applied all three
and built a new kernel, compiled fine, runs with no trouble.

i pulled down what i assume (?) is the most current version of coda from cvs --

cvs co -P coda

and built that; just --

autoconf
cp ../coda-6.1.2/config.h.in
   (seemed to need one, and i figured this might do the trick)
./configure ; make ; make client-install

then i run venus and i get --

Fatal Signal (6)

which is incidentally the same thing that happened when i tried to use
coda-6.1.2 venus with the single kernel tweak that you suggested
earlier in this thread --

> My guess is that the end of coda_fbsd_clone needs an additional,
>
>  mnt->dev = *dev;

i cranked up the debug level to 100 and didn't really get anything in the log --

[ X(00) : 0000 : 22:11:06 ] Coda Venus, version 6.9.0
[ X(00) : 0000 : 22:11:06 ] Logfile initialized with LogLevel = 100 at
Wed Nov  8 22:11:06 2006

[ X(00) : 0000 : 22:11:06 ] E StatsInit()
[ X(00) : 0000 : 22:11:06 ] L StatsInit()
[ X(00) : 0000 : 22:11:06 ] RecovDataSizes: Log = 0x2e542c, Data = 0xb950b0

[ T(01) : 0000 : 22:11:07 ] RegisterDaemon:

[ X(00) : 0000 : 22:11:07 ] *****  FATAL SIGNAL (6) *****

i attached gdb to it and got this data -- hope it might be useful?

0x0000000040e01ca8 in sigsuspend () from /lib/libc.so.6
(gdb) bt
#0  0x0000000040e01ca8 in sigsuspend () from /lib/libc.so.6
#1  0x000000000016b438 in SigChoke (sig=6) at sighand.cc:251
#2  <signal handler called>
#3  0x0000000040e87748 in kill () from /lib/libc.so.6
#4  0x0000000040e86174 in abort () from /lib/libc.so.6
#5  0x0000000040e5cd0c in __assert () from /lib/libc.so.6
#6  0x00000000407296b0 in rpc2_AllocSle (slType=OTHER, slConn=0x0)
    at lists.c:166
#7  0x0000000040729cfc in rpc2_ClockTick (dummy=0x0) at ct.c:71
#8  0x0000000040963658 in _thread () at lwp_ucontext.c:73
#9  <signal handler called>
#10 0x0000000040e01ca8 in sigsuspend () from /lib/libc.so.6
#11 0x000000004096381c in makecontext (ucp=0x40e78d8c,
    func=0x40e78d88 <gettimeofday+8>, argc=1084643712) at lwp_ucontext.c:163
Previous frame inner to this frame (corrupt stack?)
(gdb) up
#1  0x000000000016b438 in SigChoke (sig=6) at sighand.cc:251
251         sigsuspend(&mask);
(gdb) up
#2  <signal handler called>
(gdb) up
#3  0x0000000040e87748 in kill () from /lib/libc.so.6
(gdb) up
#4  0x0000000040e86174 in abort () from /lib/libc.so.6
(gdb) up
#5  0x0000000040e5cd0c in __assert () from /lib/libc.so.6
(gdb) up
#6  0x00000000407296b0 in rpc2_AllocSle (slType=OTHER, slConn=0x0)
    at lists.c:166
166         assert(sl->MagicNumber == OBJ_SLENTRY);
Current language:  auto; currently c
(gdb) up
#7  0x0000000040729cfc in rpc2_ClockTick (dummy=0x0) at ct.c:71
71          sl = rpc2_AllocSle(OTHER, NULL);
(gdb) up
#8  0x0000000040963658 in _thread () at lwp_ucontext.c:73
73              func(arg);
(gdb) up
#9  <signal handler called>
(gdb) up
#10 0x0000000040e01ca8 in sigsuspend () from /lib/libc.so.6
(gdb) up
#11 0x000000004096381c in makecontext (ucp=0x40e78d8c,
    func=0x40e78d88 <gettimeofday+8>, argc=1084643712) at lwp_ucontext.c:163
163                 sigsuspend(&sigs);
(gdb) list
158         /* handle the SIGUSR1 signal */
159         sigfillset(&sigs);
160         sigdelset(&sigs, SIGUSR1);
161         if (!setjmp(parent))
162             while (child)
163                 sigsuspend(&sigs);
164
165         /* The new context should be set up, now revert to the old
state... */
166         sigaltstack(&oldstack, NULL);
167         sigaction(SIGUSR1, &oldaction, NULL);
(gdb) i frame
Stack level 11, frame at 0x2da330:
 pc = 0x4096381c in makecontext (lwp_ucontext.c:163); saved pc 0x2e5938
 caller of frame at 0x7fdffffd471
 source language c.
 Arglist at 0x2da330, args: ucp=0x40e78d8c, func=0x40e78d88 <gettimeofday+8>,
    argc=1084643712
 Locals at 0x2da330, Previous frame's sp at 0x7fdffffdce0
 Saved registers:
  g1 at 0x4505fd48, g2 at 0x4505fd50, g3 at 0x4505fd58, g4 at 0x4505fd60,
  g5 at 0x4505fd68, g6 at 0x4505fd70, g7 at 0x4505fd78, o0 at 0x7fdffffdcb0,
  o1 at 0x7fdffffdcb8, o2 at 0x7fdffffdcc0, o3 at 0x7fdffffdcc8,
  o4 at 0x7fdffffdcd0, o5 at 0x7fdffffdcd8, o7 at 0x7fdffffdce8,
  l0 at 0x2dab2f, l1 at 0x2dab37, l2 at 0x2dab3f, l3 at 0x2dab47,
  l4 at 0x2dab4f, l5 at 0x2dab57, l6 at 0x2dab5f, l7 at 0x2dab67,
  i0 at 0x2dab6f, i1 at 0x2dab77, i2 at 0x2dab7f, i3 at 0x2dab87,
  i4 at 0x2dab8f, i5 at 0x2dab97, fp at 0x2dab9f, i7 at 0x2daba7,
  f0 at 0x4505fe40, f1 at 0x4505fe44, f2 at 0x4505fe48, f3 at 0x4505fe4c,
  f4 at 0x4505fe50, f5 at 0x4505fe54, f6 at 0x4505fe58, f7 at 0x4505fe5c,
  f8 at 0x4505fe60, f9 at 0x4505fe64, f10 at 0x4505fe68, f11 at 0x4505fe6c,
  f12 at 0x4505fe70, f13 at 0x4505fe74, f14 at 0x4505fe78, f15 at 0x4505fe7c,
  f16 at 0x4505fe80, f17 at 0x4505fe84, f18 at 0x4505fe88, f19 at 0x4505fe8c,
  f20 at 0x4505fe90, f21 at 0x4505fe94, f22 at 0x4505fe98, f23 at 0x4505fe9c,
  f24 at 0x4505fea0, f25 at 0x4505fea4, f26 at 0x4505fea8, f27 at 0x4505feac,
  f28 at 0x4505feb0, f29 at 0x4505feb4, f30 at 0x4505feb8, f31 at 0x4505febc,
  f32 at 0x4505fec0, f34 at 0x4505fec8, f36 at 0x4505fed0, f38 at 0x4505fed8,
  f40 at 0x4505fee0, f42 at 0x4505fee8, f44 at 0x4505fef0, f46 at 0x4505fef8,
  f48 at 0x4505ff00, f50 at 0x4505ff08, f52 at 0x4505ff10, f54 at 0x4505ff18,
  f56 at 0x4505ff20, f58 at 0x4505ff28, f60 at 0x4505ff30, f62 at 0x4505ff38,
  state at 0x4505fe10, fsr at 0x4505fdc8, fprs at 0x4505fdc0, y at 0x4505fe20
(gdb)

any thoughts? this is running on

wildflower.diablonet.net> uname -a
FreeBSD wildflower.diablonet.net 6.1-RELEASE FreeBSD 6.1-RELEASE #0:
Wed Nov  8 21:06:59 EST 2006
scaron_at_wildflower.diablonet.net:/usr/src/sys/sparc64/compile/WILDFLOWER4+
 sparc64

not sure if this is something i'm doing incorrectly, or if venus is
not quite ready yet, or perhaps something else entirely :|

regards, sean
scaron_at_umich.edu
Received on 2006-11-08 22:37:53