[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: extended attributes (need help)
Emmanuel Dreyfus <manu%netbsd.org@localhost> wrote:
> The patch I posted yesterday has a race condition, if a user process
> quickly sets two attributes on two different filesystems, then the second
> one will panic on VFS_ROOT() in namei() because the root vnode is already
That analysis of the problem was wrong. The problem occured when setting
an attribute on the root vnode. In that case, the root vnode is locked
when entering ufs_extattr_autocreate_attr(), and calling vn_open() or
namei() cause a call to VFS_ROOT, which attempts to lock the already
Solution is to test for vp->v_vflag & VV_ROOT and unlock the vnode
before calling vn_open or namei, and relocking it afterwards.
I will commit EA autocreation later today.
Main Index |
Thread Index |