Module Name: src Committed By: chs Date: Fri Jun 9 00:13:29 UTC 2017
Modified Files: src/sys/sys: mount.h src/usr.bin/fstat: ptyfs.c tmpfs.c src/usr.bin/pmap: pmap.h src/usr.bin/systat: bufcache.c Log Message: rearrange sys/mount.h so that all of the kernel-only parts are together and not exposed to userland, except do expose struct mount if __EXPOSE_MOUNT is defined. define __EXPOSE_MOUNT in the kmem grovellers that want the definition. needed for ZFS. To generate a diff of this commit: cvs rdiff -u -r1.228 -r1.229 src/sys/sys/mount.h cvs rdiff -u -r1.6 -r1.7 src/usr.bin/fstat/ptyfs.c cvs rdiff -u -r1.10 -r1.11 src/usr.bin/fstat/tmpfs.c cvs rdiff -u -r1.9 -r1.10 src/usr.bin/pmap/pmap.h cvs rdiff -u -r1.27 -r1.28 src/usr.bin/systat/bufcache.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/sys/mount.h diff -u src/sys/sys/mount.h:1.228 src/sys/sys/mount.h:1.229 --- src/sys/sys/mount.h:1.228 Wed May 24 09:53:55 2017 +++ src/sys/sys/mount.h Fri Jun 9 00:13:29 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: mount.h,v 1.228 2017/05/24 09:53:55 hannken Exp $ */ +/* $NetBSD: mount.h,v 1.229 2017/06/09 00:13:29 chs Exp $ */ /* * Copyright (c) 1989, 1991, 1993 @@ -44,14 +44,16 @@ #ifndef _STANDALONE #include <sys/param.h> /* precautionary upon removal from ucred.h */ #include <sys/time.h> -#include <sys/uio.h> #include <sys/ucred.h> #include <sys/fstypes.h> +#include <sys/statvfs.h> +#if defined(_KERNEL) || defined(__EXPOSE_MOUNT) +#include <sys/uio.h> #include <sys/queue.h> #include <sys/rwlock.h> -#include <sys/statvfs.h> #include <sys/specificdata.h> #include <sys/condvar.h> +#endif /* defined(_KERNEL) || defined(__EXPOSE_MOUNT) */ #endif /* !_STANDALONE */ /* @@ -97,8 +99,27 @@ #define MOUNT_RUMPFS "rumpfs" /* rump virtual file system */ #define MOUNT_V7FS "v7fs" /* 7th Edition of Unix Filesystem */ +/* + * Sysctl CTL_VFS definitions. + * + * Second level identifier specifies which filesystem. Second level + * identifier VFS_GENERIC returns information about all filesystems. + * + * Note the slightly non-flat nature of these sysctl numbers. Oh for + * a better sysctl interface. + */ +#define VFS_GENERIC 0 /* generic filesystem information */ +#define VFS_MAXTYPENUM 1 /* int: highest defined fs type */ +#define VFS_CONF 2 /* struct: vfsconf for filesystem given + as next argument */ +#define VFS_USERMOUNT 3 /* enable/disable fs mnt by non-root */ +#define VFS_MAGICLINKS 4 /* expand 'magic' symlinks */ +#define VFSGEN_MAXID 5 /* number of valid vfs.generic ids */ + #ifndef _STANDALONE +#if defined(_KERNEL) || defined(__EXPOSE_MOUNT) + struct vnode; struct vnode_impl; struct vattr; @@ -133,22 +154,9 @@ struct mount { uint64_t mnt_gen; }; -/* - * Sysctl CTL_VFS definitions. - * - * Second level identifier specifies which filesystem. Second level - * identifier VFS_GENERIC returns information about all filesystems. - * - * Note the slightly non-flat nature of these sysctl numbers. Oh for - * a better sysctl interface. - */ -#define VFS_GENERIC 0 /* generic filesystem information */ -#define VFS_MAXTYPENUM 1 /* int: highest defined fs type */ -#define VFS_CONF 2 /* struct: vfsconf for filesystem given - as next argument */ -#define VFS_USERMOUNT 3 /* enable/disable fs mnt by non-root */ -#define VFS_MAGICLINKS 4 /* expand 'magic' symlinks */ -#define VFSGEN_MAXID 5 /* number of valid vfs.generic ids */ +#endif /* defined(_KERNEL) || defined(__EXPOSE_MOUNT) */ + +#ifdef _KERNEL /* * USE THE SAME NAMES AS MOUNT_*! @@ -189,8 +197,6 @@ struct mount { { "magiclinks", CTLTYPE_INT }, \ } -#if defined(_KERNEL) - struct quotactl_args; /* in sys/quotactl.h */ struct quotastat; /* in sys/quotactl.h */ struct quotaidtypestat; /* in sys/quotactl.h */ @@ -199,10 +205,6 @@ struct quotakcursor; /* in sys/quotactl struct quotakey; /* in sys/quota.h */ struct quotaval; /* in sys/quota.h */ -#if __STDC__ -struct nameidata; -#endif - /* * Operations supported on mounted file system. */ @@ -268,14 +270,8 @@ int VFS_SNAPSHOT(struct mount *, struct int VFS_EXTATTRCTL(struct mount *, int, struct vnode *, int, const char *); int VFS_SUSPENDCTL(struct mount *, int); -#endif /* _KERNEL */ - -#ifdef _KERNEL -#if __STDC__ -struct mbuf; struct vnodeopv_desc; struct kauth_cred; -#endif #define VFS_MAX_MOUNT_DATA 8192 Index: src/usr.bin/fstat/ptyfs.c diff -u src/usr.bin/fstat/ptyfs.c:1.6 src/usr.bin/fstat/ptyfs.c:1.7 --- src/usr.bin/fstat/ptyfs.c:1.6 Sun Apr 12 06:36:12 2009 +++ src/usr.bin/fstat/ptyfs.c Fri Jun 9 00:13:29 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: ptyfs.c,v 1.6 2009/04/12 06:36:12 lukem Exp $ */ +/* $NetBSD: ptyfs.c,v 1.7 2017/06/09 00:13:29 chs Exp $ */ /*- * Copyright (c) 2004 The NetBSD Foundation, Inc. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__RCSID("$NetBSD: ptyfs.c,v 1.6 2009/04/12 06:36:12 lukem Exp $"); +__RCSID("$NetBSD: ptyfs.c,v 1.7 2017/06/09 00:13:29 chs Exp $"); #include <sys/param.h> #include <sys/types.h> @@ -38,6 +38,7 @@ __RCSID("$NetBSD: ptyfs.c,v 1.6 2009/04/ #include <sys/proc.h> #include <sys/stat.h> #include <sys/vnode.h> +#define __EXPOSE_MOUNT #include <sys/mount.h> #include <stdbool.h> Index: src/usr.bin/fstat/tmpfs.c diff -u src/usr.bin/fstat/tmpfs.c:1.10 src/usr.bin/fstat/tmpfs.c:1.11 --- src/usr.bin/fstat/tmpfs.c:1.10 Sat Jan 23 16:12:03 2016 +++ src/usr.bin/fstat/tmpfs.c Fri Jun 9 00:13:29 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: tmpfs.c,v 1.10 2016/01/23 16:12:03 christos Exp $ */ +/* $NetBSD: tmpfs.c,v 1.11 2017/06/09 00:13:29 chs Exp $ */ /*- * Copyright (c) 2006 The NetBSD Foundation, Inc. @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__RCSID("$NetBSD: tmpfs.c,v 1.10 2016/01/23 16:12:03 christos Exp $"); +__RCSID("$NetBSD: tmpfs.c,v 1.11 2017/06/09 00:13:29 chs Exp $"); #include <sys/types.h> #include <sys/param.h> @@ -35,6 +35,7 @@ __RCSID("$NetBSD: tmpfs.c,v 1.10 2016/01 #include <sys/proc.h> #include <sys/stat.h> #include <sys/vnode.h> +#define __EXPOSE_MOUNT #include <sys/mount.h> #include <fs/tmpfs/tmpfs.h> Index: src/usr.bin/pmap/pmap.h diff -u src/usr.bin/pmap/pmap.h:1.9 src/usr.bin/pmap/pmap.h:1.10 --- src/usr.bin/pmap/pmap.h:1.9 Thu Dec 22 22:41:02 2016 +++ src/usr.bin/pmap/pmap.h Fri Jun 9 00:13:29 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: pmap.h,v 1.9 2016/12/22 22:41:02 mrg Exp $ */ +/* $NetBSD: pmap.h,v 1.10 2017/06/09 00:13:29 chs Exp $ */ /* * Copyright (c) 2002, 2003 The NetBSD Foundation, Inc. @@ -46,6 +46,7 @@ #include <sys/param.h> #include <sys/time.h> #include <sys/vnode.h> +#define __EXPOSE_MOUNT #include <sys/mount.h> #include <sys/uio.h> #include <sys/namei.h> Index: src/usr.bin/systat/bufcache.c diff -u src/usr.bin/systat/bufcache.c:1.27 src/usr.bin/systat/bufcache.c:1.28 --- src/usr.bin/systat/bufcache.c:1.27 Mon Oct 24 00:40:17 2016 +++ src/usr.bin/systat/bufcache.c Fri Jun 9 00:13:29 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: bufcache.c,v 1.27 2016/10/24 00:40:17 christos Exp $ */ +/* $NetBSD: bufcache.c,v 1.28 2017/06/09 00:13:29 chs Exp $ */ /*- * Copyright (c) 1999 The NetBSD Foundation, Inc. @@ -31,11 +31,12 @@ #include <sys/cdefs.h> #ifndef lint -__RCSID("$NetBSD: bufcache.c,v 1.27 2016/10/24 00:40:17 christos Exp $"); +__RCSID("$NetBSD: bufcache.c,v 1.28 2017/06/09 00:13:29 chs Exp $"); #endif /* not lint */ #include <sys/param.h> #include <sys/buf.h> +#define __EXPOSE_MOUNT #include <sys/mount.h> #include <sys/sysctl.h> #include <sys/vnode.h>