panic: condition seqc_in_modify(_vp->v_seqc) not met at zfs_acl.c:1147 (zfs_acl_chown_setattr)

Andriy Gapon avg at FreeBSD.org
Mon Feb 15 09:45:24 UTC 2021


On 15/02/2021 10:22, Andriy Gapon wrote:
> 
> I've got this panic once when copying a couple of files.
> The system is stable/13 as of 1996360d7338d, a custom kernel configuration, but
> no local source code modifications.
> 
> Unread portion of the kernel message buffer:
> VNASSERT failed: ({ seqc_t __seqc = (_vp->v_seqc); __builtin_expect((__seqc &
> 1), 0); }) not true at
> /usr/devel/git/trant/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_acl.c:1147
> (zfs_acl_chown_setattr)
> 0xfffff8013e4e85b8: type VDIR
>     usecount 1, writecount 0, refcount 1 seqc users 0 mountedhere 0
>     hold count flags ()
>     flags ()
>     lock type zfs: EXCL by thread 0xfffffe01dd1cd560 (pid 30747, kdeinit5, tid
> 159911)
> panic: condition seqc_in_modify(_vp->v_seqc) not met at
> /usr/devel/git/trant/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_acl.c:1147
> (zfs_acl_chown_setattr)
> 
> Any ideas, suggestions, hints?
> Thanks!
> 
...
> #4  0xffffffff8036fd21 in zfs_acl_chown_setattr (zp=0xfffff801ccd203b0)
>     at /usr/devel/git/trant/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_acl.c:1147
> #5  0xffffffff8037e52d in zfs_setattr (zp=0xfffff8024b04f760,
>     vap=vap at entry=0xfffffe029a36c870, flags=flags at entry=0,
>     cr=<optimized out>, cr at entry=0xfffff8003ecedc00)
>     at
> /usr/devel/git/trant/sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c:2758

So, this is actually the second zfs_acl_chown_setattr call here:
                err = zfs_acl_chown_setattr(zp);
                ASSERT(err == 0);
                if (attrzp) {
                        err = zfs_acl_chown_setattr(attrzp);
                        ASSERT(err == 0);
                }

I am not sure if the assertion is actually applicable to attrzp (extended
attributes "directory").
At least I do not see any seq calls for it.

-- 
Andriy Gapon


More information about the freebsd-current mailing list