When performing a VOP_LOOKUP() as part of UFS1 extended attribute
auto-start, set cnp.cn_lkflags to LK_EXCLUSIVE. This flag must now be set so that lockmgr knows what kind of lock to acquire, and it will panic if not specified. This resulted in a panic when using extended attributes on UFS1 as of locking work present in the 6.x branch. This is a RELENG_6_0 merge candidate. Reported by: lofi MFC after: 3 days
This commit is contained in:
parent
d528ad8566
commit
606dcf085f
@ -251,6 +251,7 @@ ufs_extattr_lookup(struct vnode *start_dvp, int lockparent, char *dirname,
|
||||
cnp.cn_flags = ISLASTCN;
|
||||
if (lockparent == UE_GETDIR_LOCKPARENT)
|
||||
cnp.cn_flags |= LOCKPARENT;
|
||||
cnp.cn_lkflags = LK_EXCLUSIVE;
|
||||
cnp.cn_thread = td;
|
||||
cnp.cn_cred = td->td_ucred;
|
||||
cnp.cn_pnbuf = uma_zalloc(namei_zone, M_WAITOK);
|
||||
|
Loading…
Reference in New Issue
Block a user