Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: fs tests failing



On 01.09.2012 17:42, Chuck Silvers wrote:
Yes.  And with my older (well, prehistoric ;) versions of the
drivers, "only" 20 or so of the tests resulted in a kernel panic
while the rest passed.  So I'm hoping someone with more recent vfs
familiarity than myself can tell of the top of their head why a
namei on zfs results in this:

panic: kernel diagnostic assertion "VOP_ISLOCKED(*newsearchdir_ret)
== LK_EXCLUSIVE" failed


int
zfs_netbsd_lock(void *v)
{
        struct vop_lock_args *ap = v;

        return 0;
}


our port of ZFS doesn't obey the BSD locking rules.  ZFS doesn't need
the BSD vnode lock for internal consistency since it does its own locking
internally, but the above check and possibly others have more recently
been added to ensure that file systems do the correct locking for the
fs-independent logic that relies on the BSD vnode lock.

Ah, ic, but islocked() comes from genfs. Given the current situation, it is more sensible to make VOP_ISLOCKED() return LK_EXCLUSIVE unconditionally for ZFS and see if that gets DIAGNOSTIC builds a bit further.

ZFS needs some more work before automated testing of it would be worthwhile.

Yes, that was my guess too. However, since adding it to the vfs tests was pretty much zero work, I figured out it's useful to add it onto the radar to make sure it doesn't get worse before someone tackles it seriously. Besides, the tests are an easy, though incomplete TODO-list.

Home | Main Index | Thread Index | Old Index