Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys Split sys/vnode.h into sys/vnode.h and sys/vnode_impl.h



details:   https://anonhg.NetBSD.org/src/rev/2aeb8795e651
branches:  trunk
changeset: 348708:2aeb8795e651
user:      hannken <hannken%NetBSD.org@localhost>
date:      Thu Nov 03 11:03:31 2016 +0000

description:
Split sys/vnode.h into sys/vnode.h and sys/vnode_impl.h
- Move _VFS_VNODE_PRIVATE protected operations into vnode_impl.h.
- Move struct vnode_impl definition and operations into vnode_impl.h.
- Include vnode_impl.h where we include vnode.h with _VFS_VNODE_PRIVATE defined.
- Get rid of _VFS_VNODE_PRIVATE.

diffstat:

 sys/kern/vfs_mount.c |   8 ++---
 sys/kern/vfs_subr.c  |   8 ++---
 sys/kern/vfs_vnode.c |  32 ++---------------------
 sys/sys/vnode.h      |  14 +---------
 sys/sys/vnode_impl.h |  71 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 81 insertions(+), 52 deletions(-)

diffs (228 lines):

diff -r 419bf1ef0402 -r 2aeb8795e651 sys/kern/vfs_mount.c
--- a/sys/kern/vfs_mount.c      Thu Nov 03 11:02:09 2016 +0000
+++ b/sys/kern/vfs_mount.c      Thu Nov 03 11:03:31 2016 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: vfs_mount.c,v 1.40 2016/07/07 06:55:43 msaitoh Exp $   */
+/*     $NetBSD: vfs_mount.c,v 1.41 2016/11/03 11:03:31 hannken Exp $   */
 
 /*-
  * Copyright (c) 1997-2011 The NetBSD Foundation, Inc.
@@ -67,9 +67,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: vfs_mount.c,v 1.40 2016/07/07 06:55:43 msaitoh Exp $");
-
-#define _VFS_VNODE_PRIVATE
+__KERNEL_RCSID(0, "$NetBSD: vfs_mount.c,v 1.41 2016/11/03 11:03:31 hannken Exp $");
 
 #include <sys/param.h>
 #include <sys/kernel.h>
@@ -90,7 +88,7 @@
 #include <sys/sysctl.h>
 #include <sys/systm.h>
 #include <sys/vfs_syscalls.h>
-#include <sys/vnode.h>
+#include <sys/vnode_impl.h>
 
 #include <miscfs/genfs/genfs.h>
 #include <miscfs/specfs/specdev.h>
diff -r 419bf1ef0402 -r 2aeb8795e651 sys/kern/vfs_subr.c
--- a/sys/kern/vfs_subr.c       Thu Nov 03 11:02:09 2016 +0000
+++ b/sys/kern/vfs_subr.c       Thu Nov 03 11:03:31 2016 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: vfs_subr.c,v 1.449 2016/05/26 11:07:33 hannken Exp $   */
+/*     $NetBSD: vfs_subr.c,v 1.450 2016/11/03 11:03:31 hannken Exp $   */
 
 /*-
  * Copyright (c) 1997, 1998, 2004, 2005, 2007, 2008 The NetBSD Foundation, Inc.
@@ -68,7 +68,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: vfs_subr.c,v 1.449 2016/05/26 11:07:33 hannken Exp $");
+__KERNEL_RCSID(0, "$NetBSD: vfs_subr.c,v 1.450 2016/11/03 11:03:31 hannken Exp $");
 
 #ifdef _KERNEL_OPT
 #include "opt_ddb.h"
@@ -76,8 +76,6 @@
 #include "opt_compat_43.h"
 #endif
 
-#define _VFS_VNODE_PRIVATE     /* for vcache_print(). */
-
 #include <sys/param.h>
 #include <sys/systm.h>
 #include <sys/conf.h>
@@ -85,7 +83,7 @@
 #include <sys/filedesc.h>
 #include <sys/kernel.h>
 #include <sys/mount.h>
-#include <sys/vnode.h>
+#include <sys/vnode_impl.h>
 #include <sys/stat.h>
 #include <sys/sysctl.h>
 #include <sys/namei.h>
diff -r 419bf1ef0402 -r 2aeb8795e651 sys/kern/vfs_vnode.c
--- a/sys/kern/vfs_vnode.c      Thu Nov 03 11:02:09 2016 +0000
+++ b/sys/kern/vfs_vnode.c      Thu Nov 03 11:03:31 2016 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: vfs_vnode.c,v 1.57 2016/11/03 11:02:09 hannken Exp $   */
+/*     $NetBSD: vfs_vnode.c,v 1.58 2016/11/03 11:03:31 hannken Exp $   */
 
 /*-
  * Copyright (c) 1997-2011 The NetBSD Foundation, Inc.
@@ -156,9 +156,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: vfs_vnode.c,v 1.57 2016/11/03 11:02:09 hannken Exp $");
-
-#define _VFS_VNODE_PRIVATE
+__KERNEL_RCSID(0, "$NetBSD: vfs_vnode.c,v 1.58 2016/11/03 11:03:31 hannken Exp $");
 
 #include <sys/param.h>
 #include <sys/kernel.h>
@@ -177,7 +175,7 @@
 #include <sys/syscallargs.h>
 #include <sys/sysctl.h>
 #include <sys/systm.h>
-#include <sys/vnode.h>
+#include <sys/vnode_impl.h>
 #include <sys/wapbl.h>
 #include <sys/fstrans.h>
 
@@ -187,30 +185,6 @@
 /* Flags to vrelel. */
 #define        VRELEL_ASYNC_RELE       0x0001  /* Always defer to vrele thread. */
 
-enum vnode_state {
-       VS_MARKER,      /* Stable, used as marker. Will not change. */
-       VS_LOADING,     /* Intermediate, initialising the fs node. */
-       VS_ACTIVE,      /* Stable, valid fs node attached. */
-       VS_BLOCKED,     /* Intermediate, active, no new references allowed. */
-       VS_RECLAIMING,  /* Intermediate, detaching the fs node. */
-       VS_RECLAIMED    /* Stable, no fs node attached. */
-};
-struct vcache_key {
-       struct mount *vk_mount;
-       const void *vk_key;
-       size_t vk_key_len;
-};
-struct vnode_impl {
-       struct vnode vi_vnode;
-       enum vnode_state vi_state;
-       SLIST_ENTRY(vnode_impl) vi_hash;
-       struct vcache_key vi_key;
-};
-typedef struct vnode_impl vnode_impl_t;
-
-#define VIMPL_TO_VNODE(node)   ((vnode_t *)(node))
-#define VNODE_TO_VIMPL(vp)     ((vnode_impl_t *)(vp))
-
 u_int                  numvnodes               __cacheline_aligned;
 
 /*
diff -r 419bf1ef0402 -r 2aeb8795e651 sys/sys/vnode.h
--- a/sys/sys/vnode.h   Thu Nov 03 11:02:09 2016 +0000
+++ b/sys/sys/vnode.h   Thu Nov 03 11:03:31 2016 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: vnode.h,v 1.264 2016/08/20 12:37:09 hannken Exp $      */
+/*     $NetBSD: vnode.h,v 1.265 2016/11/03 11:03:31 hannken Exp $      */
 
 /*-
  * Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -590,18 +590,6 @@
     __printflike(1, 2));
 #endif /* DDB */
 
-#ifdef _VFS_VNODE_PRIVATE
-/*
- * Private vnode manipulation functions.
- */
-struct vnode *
-       vnalloc_marker(struct mount *);
-void   vnfree_marker(vnode_t *);
-bool   vnis_marker(vnode_t *);
-void   vcache_print(vnode_t *, const char *,
-    void (*)(const char *, ...) __printflike(1, 2));
-#endif /* _VFS_VNODE_PRIVATE */
-
 #endif /* _KERNEL */
 
 #endif /* !_SYS_VNODE_H_ */
diff -r 419bf1ef0402 -r 2aeb8795e651 sys/sys/vnode_impl.h
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/sys/vnode_impl.h      Thu Nov 03 11:03:31 2016 +0000
@@ -0,0 +1,71 @@
+/*     $NetBSD: vnode_impl.h,v 1.1 2016/11/03 11:03:31 hannken Exp $   */
+
+/*-
+ * Copyright (c) 2016 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by 
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _SYS_VNODE_IMPL_H_
+#define        _SYS_VNODE_IMPL_H_
+
+#include <sys/vnode.h>
+
+enum vnode_state {
+       VS_MARKER,      /* Stable, used as marker. Will not change. */
+       VS_LOADING,     /* Intermediate, initialising the fs node. */
+       VS_ACTIVE,      /* Stable, valid fs node attached. */
+       VS_BLOCKED,     /* Intermediate, active, no new references allowed. */
+       VS_RECLAIMING,  /* Intermediate, detaching the fs node. */
+       VS_RECLAIMED    /* Stable, no fs node attached. */
+};
+struct vcache_key {
+       struct mount *vk_mount;
+       const void *vk_key;
+       size_t vk_key_len;
+};
+struct vnode_impl {
+       struct vnode vi_vnode;
+       enum vnode_state vi_state;
+       SLIST_ENTRY(vnode_impl) vi_hash;
+       struct vcache_key vi_key;
+};
+typedef struct vnode_impl vnode_impl_t;
+
+#define VIMPL_TO_VNODE(node)   ((vnode_t *)(node))
+#define VNODE_TO_VIMPL(vp)     ((vnode_impl_t *)(vp))
+
+/*
+ * Vnode manipulation functions.
+ */
+vnode_t *
+       vnalloc_marker(struct mount *);
+void   vnfree_marker(vnode_t *);
+bool   vnis_marker(vnode_t *);
+void   vcache_print(vnode_t *, const char *,
+    void (*)(const char *, ...) __printflike(1, 2));
+
+#endif /* !_SYS_VNODE_IMPL_H_ */



Home | Main Index | Thread Index | Old Index