summaryrefslogtreecommitdiffstats
path: root/sys/kern
diff options
context:
space:
mode:
authorpjd <pjd@FreeBSD.org>2004-04-26 15:44:42 +0000
committerpjd <pjd@FreeBSD.org>2004-04-26 15:44:42 +0000
commitcf34985420c2567b012502c0ff5fade12ee558e4 (patch)
tree1b3790d384dbce32fef863b905dc9fec52757f0c /sys/kern
parent788a94ec838387260dd50d92bd05d96aff3db843 (diff)
downloadFreeBSD-src-cf34985420c2567b012502c0ff5fade12ee558e4.zip
FreeBSD-src-cf34985420c2567b012502c0ff5fade12ee558e4.tar.gz
Always use nd.ni_vp->v_mount as an argument for VFS_QUOTACTL(), just like
in RELENG_4. Pointed out by: Alex Lyashkov <umka@sevinter.net>
Diffstat (limited to 'sys/kern')
-rw-r--r--sys/kern/vfs_extattr.c9
-rw-r--r--sys/kern/vfs_syscalls.c9
2 files changed, 8 insertions, 10 deletions
diff --git a/sys/kern/vfs_extattr.c b/sys/kern/vfs_extattr.c
index 593ec75..992325a 100644
--- a/sys/kern/vfs_extattr.c
+++ b/sys/kern/vfs_extattr.c
@@ -183,7 +183,7 @@ quotactl(td, uap)
caddr_t arg;
} */ *uap;
{
- struct mount *mp;
+ struct mount *mp, *vmp;
int error;
struct nameidata nd;
@@ -193,14 +193,13 @@ quotactl(td, uap)
if ((error = namei(&nd)) != 0)
return (error);
NDFREE(&nd, NDF_ONLY_PNBUF);
- error = vn_start_write(nd.ni_vp, &mp, V_WAIT | PCATCH);
+ error = vn_start_write(nd.ni_vp, &vmp, V_WAIT | PCATCH);
+ mp = nd.ni_vp->v_mount;
vrele(nd.ni_vp);
if (error)
return (error);
- if (mp == NULL)
- return (EOPNOTSUPP);
error = VFS_QUOTACTL(mp, uap->cmd, uap->uid, uap->arg, td);
- vn_finished_write(mp);
+ vn_finished_write(vmp);
return (error);
}
diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c
index 593ec75..992325a 100644
--- a/sys/kern/vfs_syscalls.c
+++ b/sys/kern/vfs_syscalls.c
@@ -183,7 +183,7 @@ quotactl(td, uap)
caddr_t arg;
} */ *uap;
{
- struct mount *mp;
+ struct mount *mp, *vmp;
int error;
struct nameidata nd;
@@ -193,14 +193,13 @@ quotactl(td, uap)
if ((error = namei(&nd)) != 0)
return (error);
NDFREE(&nd, NDF_ONLY_PNBUF);
- error = vn_start_write(nd.ni_vp, &mp, V_WAIT | PCATCH);
+ error = vn_start_write(nd.ni_vp, &vmp, V_WAIT | PCATCH);
+ mp = nd.ni_vp->v_mount;
vrele(nd.ni_vp);
if (error)
return (error);
- if (mp == NULL)
- return (EOPNOTSUPP);
error = VFS_QUOTACTL(mp, uap->cmd, uap->uid, uap->arg, td);
- vn_finished_write(mp);
+ vn_finished_write(vmp);
return (error);
}
OpenPOWER on IntegriCloud