svn commit: r338799 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
Konstantin Belousov
kib at FreeBSD.org
Wed Sep 19 14:38:02 UTC 2018
Author: kib
Date: Wed Sep 19 14:38:01 2018
New Revision: 338799
URL: https://svnweb.freebsd.org/changeset/base/338799
Log:
Fix ZFS VFS op quotactl to follow busy protocol.
Reviewed by: avg, mckusick
Tested by: pho
Sponsored by: The FreeBSD Foundation
Approved by: re (gjb)
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D17208
Modified:
head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c
==============================================================================
--- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c Wed Sep 19 14:36:57 2018 (r338798)
+++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c Wed Sep 19 14:38:01 2018 (r338799)
@@ -198,6 +198,8 @@ zfs_quotactl(vfs_t *vfsp, int cmds, uid_t id, void *ar
break;
default:
error = EINVAL;
+ if (cmd == Q_QUOTAON || cmd == Q_QUOTAOFF)
+ vfs_unbusy(vfsp);
goto done;
}
}
@@ -255,9 +257,11 @@ zfs_quotactl(vfs_t *vfsp, int cmds, uid_t id, void *ar
case Q_QUOTAON:
// As far as I can tell, you can't turn quotas on or off on zfs
error = 0;
+ vfs_unbusy(vfsp);
break;
case Q_QUOTAOFF:
error = ENOTSUP;
+ vfs_unbusy(vfsp);
break;
case Q_SETQUOTA:
error = copyin(&dqblk, arg, sizeof(dqblk));
More information about the svn-src-all
mailing list