diff options
author | rwatson <rwatson@FreeBSD.org> | 2002-02-10 21:44:30 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2002-02-10 21:44:30 +0000 |
commit | 2bbae54d18d15c9c93f9567d79fe63538dd04bfd (patch) | |
tree | 069df193b86466f9270600030958b981aceda286 /sys/kern/vfs_extattr.c | |
parent | ef612b7ce49f905c66a8d08360c010cbcbd07aba (diff) | |
download | FreeBSD-src-2bbae54d18d15c9c93f9567d79fe63538dd04bfd.zip FreeBSD-src-2bbae54d18d15c9c93f9567d79fe63538dd04bfd.tar.gz |
Make sure to hold vnode lock when calling into VOP_GETATTR().
Discussed with: mckusick, phk
Diffstat (limited to 'sys/kern/vfs_extattr.c')
-rw-r--r-- | sys/kern/vfs_extattr.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/vfs_extattr.c b/sys/kern/vfs_extattr.c index 9b623e3..ebd45db 100644 --- a/sys/kern/vfs_extattr.c +++ b/sys/kern/vfs_extattr.c @@ -1727,7 +1727,9 @@ lseek(td, uap) offset += fp->f_offset; break; case L_XTND: + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); error = VOP_GETATTR(vp, &vattr, cred, td); + VOP_UNLOCK(vp, 0, td); if (error) return (error); if (noneg && |