Subject: Re: Coda in -current ...
To: Phil Nelson <philnelson@home.com>
From: Bill Studenmund <wrstuden@zembu.com>
List: tech-kern
Date: 06/25/2000 17:06:26
On Fri, 9 Jun 2000, Phil Nelson wrote:
> And when I got coda-current compiled and installed, I ran a coda client.
> The result was some vnode problems:
>
> a) quickly I got a panic with
> vref used where vget required
>
> backtrace included
> vref(...) at vref+0x19
> namei(...) at namei+0x157
> sys___stat13(...) at sys___stat
Looking at namei, it looks like the problem is occurning where namei() is
vref'ing your cwd when looking up a relative path.
> b) later I got a panic with
> vrele: ref cnt
>
> I'm assuming that they are the same error in that some place in coda,
> the code didn't do a vget where it should have.
Or that coda is hanging onto a vnode reference for which it hasn't done a
vref.
> I believe I saw some mention of changes to the vnode system between
> 1.4 and now, but I wasn't watching closely enough (and I don't know
> the coda module enough) to know how those changes should be delt
> with in coda.
I don't think there was much in the way of reference counting changes
between 1.4 and now. Locking, yes, but not reference counting.
From looking at a diff of source, the only thing I see is a lot of cvs log
info removed, "register" stripped out, genfs_fcntl() referenced, printf
of offsets changed to long long, changes for PDIRUNLOCK (jsut clearing
or setting a flag as needed), struct lock moving to the vnode, some
CODA_VERBOSE definitions, and coda_done defined.
So you're either tickling a pre-existing bug, or it's that some other
subsystem changed.
Take care,
Bill