svn commit: r320900 - in head/sys: fs/cd9660 fs/ext2fs fs/fifofs fs/msdosfs fs/nandfs fs/nfsclient fs/smbfs fs/tmpfs ufs/ufs
John Baldwin
jhb at FreeBSD.org
Tue Jul 11 21:55:23 UTC 2017
Author: jhb
Date: Tue Jul 11 21:55:20 2017
New Revision: 320900
URL: https://svnweb.freebsd.org/changeset/base/320900
Log:
Consistently use vop_stdpathconf() for default pathconf values.
Update filesystems not currently using vop_stdpathconf() in pathconf
VOPs to use vop_stdpathconf() for any configuration variables that do
not have filesystem-specific values. vop_stdpathconf() is used for
variables that have system-wide settings as well as providing default
values for some values based on system limits. Filesystems can still
explicitly override individual settings.
PR: 219851
Reported by: cem
Reviewed by: cem, kib, ngie
MFC after: 1 month
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D11541
Modified:
head/sys/fs/cd9660/cd9660_vnops.c
head/sys/fs/ext2fs/ext2_vnops.c
head/sys/fs/fifofs/fifo_vnops.c
head/sys/fs/msdosfs/msdosfs_vnops.c
head/sys/fs/nandfs/nandfs_vnops.c
head/sys/fs/nfsclient/nfs_clvnops.c
head/sys/fs/smbfs/smbfs_vnops.c
head/sys/fs/tmpfs/tmpfs_vnops.c
head/sys/ufs/ufs/ufs_vnops.c
Modified: head/sys/fs/cd9660/cd9660_vnops.c
==============================================================================
--- head/sys/fs/cd9660/cd9660_vnops.c Tue Jul 11 21:52:11 2017 (r320899)
+++ head/sys/fs/cd9660/cd9660_vnops.c Tue Jul 11 21:55:20 2017 (r320900)
@@ -792,20 +792,11 @@ cd9660_pathconf(ap)
else
*ap->a_retval = 37;
return (0);
- case _PC_PATH_MAX:
- *ap->a_retval = PATH_MAX;
- return (0);
- case _PC_PIPE_BUF:
- *ap->a_retval = PIPE_BUF;
- return (0);
- case _PC_CHOWN_RESTRICTED:
- *ap->a_retval = 1;
- return (0);
case _PC_NO_TRUNC:
*ap->a_retval = 1;
return (0);
default:
- return (EINVAL);
+ return (vop_stdpathconf(ap));
}
/* NOTREACHED */
}
Modified: head/sys/fs/ext2fs/ext2_vnops.c
==============================================================================
--- head/sys/fs/ext2fs/ext2_vnops.c Tue Jul 11 21:52:11 2017 (r320899)
+++ head/sys/fs/ext2fs/ext2_vnops.c Tue Jul 11 21:55:20 2017 (r320900)
@@ -1627,18 +1627,6 @@ ext2_pathconf(struct vop_pathconf_args *ap)
else
*ap->a_retval = ext2_max_nlink(VTOI(ap->a_vp));
break;
- case _PC_NAME_MAX:
- *ap->a_retval = NAME_MAX;
- break;
- case _PC_PATH_MAX:
- *ap->a_retval = PATH_MAX;
- break;
- case _PC_PIPE_BUF:
- *ap->a_retval = PIPE_BUF;
- break;
- case _PC_CHOWN_RESTRICTED:
- *ap->a_retval = 1;
- break;
case _PC_NO_TRUNC:
*ap->a_retval = 1;
break;
@@ -1661,11 +1649,6 @@ ext2_pathconf(struct vop_pathconf_args *ap)
case _PC_MIN_HOLE_SIZE:
*ap->a_retval = ap->a_vp->v_mount->mnt_stat.f_iosize;
break;
- case _PC_ASYNC_IO:
- /* _PC_ASYNC_IO should have been handled by upper layers. */
- KASSERT(0, ("_PC_ASYNC_IO should not get here"));
- error = EINVAL;
- break;
case _PC_PRIO_IO:
*ap->a_retval = 0;
break;
@@ -1695,7 +1678,7 @@ ext2_pathconf(struct vop_pathconf_args *ap)
break;
default:
- error = EINVAL;
+ error = vop_stdpathconf(ap);
break;
}
return (error);
Modified: head/sys/fs/fifofs/fifo_vnops.c
==============================================================================
--- head/sys/fs/fifofs/fifo_vnops.c Tue Jul 11 21:52:11 2017 (r320899)
+++ head/sys/fs/fifofs/fifo_vnops.c Tue Jul 11 21:55:20 2017 (r320900)
@@ -71,7 +71,6 @@ struct fifoinfo {
static vop_print_t fifo_print;
static vop_open_t fifo_open;
static vop_close_t fifo_close;
-static vop_pathconf_t fifo_pathconf;
static vop_advlock_t fifo_advlock;
struct vop_vector fifo_specops = {
@@ -87,7 +86,7 @@ struct vop_vector fifo_specops = {
.vop_mkdir = VOP_PANIC,
.vop_mknod = VOP_PANIC,
.vop_open = fifo_open,
- .vop_pathconf = fifo_pathconf,
+ .vop_pathconf = vop_stdpathconf,
.vop_print = fifo_print,
.vop_read = VOP_PANIC,
.vop_readdir = VOP_PANIC,
@@ -337,34 +336,6 @@ fifo_print(ap)
fifo_printinfo(ap->a_vp);
printf("\n");
return (0);
-}
-
-/*
- * Return POSIX pathconf information applicable to fifo's.
- */
-static int
-fifo_pathconf(ap)
- struct vop_pathconf_args /* {
- struct vnode *a_vp;
- int a_name;
- int *a_retval;
- } */ *ap;
-{
-
- switch (ap->a_name) {
- case _PC_LINK_MAX:
- *ap->a_retval = LINK_MAX;
- return (0);
- case _PC_PIPE_BUF:
- *ap->a_retval = PIPE_BUF;
- return (0);
- case _PC_CHOWN_RESTRICTED:
- *ap->a_retval = 1;
- return (0);
- default:
- return (EINVAL);
- }
- /* NOTREACHED */
}
/*
Modified: head/sys/fs/msdosfs/msdosfs_vnops.c
==============================================================================
--- head/sys/fs/msdosfs/msdosfs_vnops.c Tue Jul 11 21:52:11 2017 (r320899)
+++ head/sys/fs/msdosfs/msdosfs_vnops.c Tue Jul 11 21:55:20 2017 (r320900)
@@ -1875,17 +1875,11 @@ msdosfs_pathconf(struct vop_pathconf_args *ap)
case _PC_NAME_MAX:
*ap->a_retval = pmp->pm_flags & MSDOSFSMNT_LONGNAME ? WIN_MAXLEN : 12;
return (0);
- case _PC_PATH_MAX:
- *ap->a_retval = PATH_MAX;
- return (0);
- case _PC_CHOWN_RESTRICTED:
- *ap->a_retval = 1;
- return (0);
case _PC_NO_TRUNC:
*ap->a_retval = 0;
return (0);
default:
- return (EINVAL);
+ return (vop_stdpathconf(ap));
}
/* NOTREACHED */
}
Modified: head/sys/fs/nandfs/nandfs_vnops.c
==============================================================================
--- head/sys/fs/nandfs/nandfs_vnops.c Tue Jul 11 21:52:11 2017 (r320899)
+++ head/sys/fs/nandfs/nandfs_vnops.c Tue Jul 11 21:55:20 2017 (r320900)
@@ -2236,21 +2236,6 @@ nandfs_pathconf(struct vop_pathconf_args *ap)
error = 0;
switch (ap->a_name) {
- case _PC_LINK_MAX:
- *ap->a_retval = LINK_MAX;
- break;
- case _PC_NAME_MAX:
- *ap->a_retval = NAME_MAX;
- break;
- case _PC_PATH_MAX:
- *ap->a_retval = PATH_MAX;
- break;
- case _PC_PIPE_BUF:
- *ap->a_retval = PIPE_BUF;
- break;
- case _PC_CHOWN_RESTRICTED:
- *ap->a_retval = 1;
- break;
case _PC_NO_TRUNC:
*ap->a_retval = 1;
break;
@@ -2273,7 +2258,7 @@ nandfs_pathconf(struct vop_pathconf_args *ap)
*ap->a_retval = ap->a_vp->v_mount->mnt_stat.f_iosize;
break;
default:
- error = EINVAL;
+ error = vop_stdpathconf(ap);
break;
}
return (error);
Modified: head/sys/fs/nfsclient/nfs_clvnops.c
==============================================================================
--- head/sys/fs/nfsclient/nfs_clvnops.c Tue Jul 11 21:52:11 2017 (r320899)
+++ head/sys/fs/nfsclient/nfs_clvnops.c Tue Jul 11 21:55:20 2017 (r320900)
@@ -3481,12 +3481,6 @@ nfs_pathconf(struct vop_pathconf_args *ap)
case _PC_NAME_MAX:
*ap->a_retval = pc.pc_namemax;
break;
- case _PC_PATH_MAX:
- *ap->a_retval = PATH_MAX;
- break;
- case _PC_PIPE_BUF:
- *ap->a_retval = PIPE_BUF;
- break;
case _PC_CHOWN_RESTRICTED:
*ap->a_retval = pc.pc_chownrestricted;
break;
@@ -3512,11 +3506,6 @@ nfs_pathconf(struct vop_pathconf_args *ap)
case _PC_MAC_PRESENT:
*ap->a_retval = 0;
break;
- case _PC_ASYNC_IO:
- /* _PC_ASYNC_IO should have been handled by upper layers. */
- KASSERT(0, ("_PC_ASYNC_IO should not get here"));
- error = EINVAL;
- break;
case _PC_PRIO_IO:
*ap->a_retval = 0;
break;
@@ -3549,7 +3538,7 @@ nfs_pathconf(struct vop_pathconf_args *ap)
break;
default:
- error = EINVAL;
+ error = vop_stdpathconf(ap);
break;
}
return (error);
Modified: head/sys/fs/smbfs/smbfs_vnops.c
==============================================================================
--- head/sys/fs/smbfs/smbfs_vnops.c Tue Jul 11 21:52:11 2017 (r320899)
+++ head/sys/fs/smbfs/smbfs_vnops.c Tue Jul 11 21:55:20 2017 (r320900)
@@ -907,7 +907,7 @@ smbfs_pathconf (ap)
*retval = 800; /* XXX: a correct one ? */
break;
default:
- error = EINVAL;
+ error = vop_stdpathconf(ap);
}
return error;
}
Modified: head/sys/fs/tmpfs/tmpfs_vnops.c
==============================================================================
--- head/sys/fs/tmpfs/tmpfs_vnops.c Tue Jul 11 21:52:11 2017 (r320899)
+++ head/sys/fs/tmpfs/tmpfs_vnops.c Tue Jul 11 21:55:20 2017 (r320900)
@@ -1344,26 +1344,6 @@ tmpfs_pathconf(struct vop_pathconf_args *v)
error = 0;
switch (name) {
- case _PC_LINK_MAX:
- *retval = LINK_MAX;
- break;
-
- case _PC_NAME_MAX:
- *retval = NAME_MAX;
- break;
-
- case _PC_PATH_MAX:
- *retval = PATH_MAX;
- break;
-
- case _PC_PIPE_BUF:
- *retval = PIPE_BUF;
- break;
-
- case _PC_CHOWN_RESTRICTED:
- *retval = 1;
- break;
-
case _PC_NO_TRUNC:
*retval = 1;
break;
@@ -1377,7 +1357,7 @@ tmpfs_pathconf(struct vop_pathconf_args *v)
break;
default:
- error = EINVAL;
+ error = vop_stdpathconf(v);
}
return error;
Modified: head/sys/ufs/ufs/ufs_vnops.c
==============================================================================
--- head/sys/ufs/ufs/ufs_vnops.c Tue Jul 11 21:52:11 2017 (r320899)
+++ head/sys/ufs/ufs/ufs_vnops.c Tue Jul 11 21:55:20 2017 (r320900)
@@ -2442,21 +2442,9 @@ ufs_pathconf(ap)
error = 0;
switch (ap->a_name) {
- case _PC_LINK_MAX:
- *ap->a_retval = LINK_MAX;
- break;
case _PC_NAME_MAX:
*ap->a_retval = UFS_MAXNAMLEN;
break;
- case _PC_PATH_MAX:
- *ap->a_retval = PATH_MAX;
- break;
- case _PC_PIPE_BUF:
- *ap->a_retval = PIPE_BUF;
- break;
- case _PC_CHOWN_RESTRICTED:
- *ap->a_retval = 1;
- break;
case _PC_NO_TRUNC:
*ap->a_retval = 1;
break;
@@ -2505,11 +2493,6 @@ ufs_pathconf(ap)
case _PC_MIN_HOLE_SIZE:
*ap->a_retval = ap->a_vp->v_mount->mnt_stat.f_iosize;
break;
- case _PC_ASYNC_IO:
- /* _PC_ASYNC_IO should have been handled by upper layers. */
- KASSERT(0, ("_PC_ASYNC_IO should not get here"));
- error = EINVAL;
- break;
case _PC_PRIO_IO:
*ap->a_retval = 0;
break;
@@ -2539,7 +2522,7 @@ ufs_pathconf(ap)
break;
default:
- error = EINVAL;
+ error = vop_stdpathconf(ap);
break;
}
return (error);
More information about the svn-src-head
mailing list