FreeBSD Bugzilla – Attachment 175084 Details for
Bug 212702
New problem with extended attributes locking in ZPL
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
proposed patch for testing
file_212702.txt (text/plain), 1.16 KB, created by
Andriy Gapon
on 2016-09-23 11:36:21 UTC
(
hide
)
Description:
proposed patch for testing
Filename:
MIME Type:
Creator:
Andriy Gapon
Created:
2016-09-23 11:36:21 UTC
Size:
1.16 KB
patch
obsolete
>Index: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c >=================================================================== >--- sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c (revision 306218) >+++ sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c (working copy) >@@ -3197,6 +3197,11 @@ > > if (err == 0 && xattr_obj) { > err = zfs_zget(zp->z_zfsvfs, xattr_obj, &attrzp); >+ if (err == 0) { >+ err = vn_lock(ZTOV(attrzp), LK_EXCLUSIVE); >+ if (err != 0) >+ vrele(ZTOV(attrzp)); >+ } > if (err) > goto out2; > } >@@ -3206,7 +3211,7 @@ > if (new_uid != zp->z_uid && > zfs_fuid_overquota(zfsvfs, B_FALSE, new_uid)) { > if (attrzp) >- vrele(ZTOV(attrzp)); >+ vput(ZTOV(attrzp)); > err = SET_ERROR(EDQUOT); > goto out2; > } >@@ -3218,7 +3223,7 @@ > if (new_gid != zp->z_gid && > zfs_fuid_overquota(zfsvfs, B_TRUE, new_gid)) { > if (attrzp) >- vrele(ZTOV(attrzp)); >+ vput(ZTOV(attrzp)); > err = SET_ERROR(EDQUOT); > goto out2; > } >@@ -3449,7 +3454,7 @@ > } > > if (attrzp) >- vrele(ZTOV(attrzp)); >+ vput(ZTOV(attrzp)); > > if (aclp) > zfs_acl_free(aclp);
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 212702
: 175084