summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjeff <jeff@FreeBSD.org>2006-03-31 03:49:16 +0000
committerjeff <jeff@FreeBSD.org>2006-03-31 03:49:16 +0000
commit316b7aa6fbc29db826244212a4eee2bc5d25b4a7 (patch)
tree926bdb155ad7af5aebdae08d8267c39989ecf5a7
parent73f46586c6a7502142873c6d714c639b83e8e1e0 (diff)
downloadFreeBSD-src-316b7aa6fbc29db826244212a4eee2bc5d25b4a7.zip
FreeBSD-src-316b7aa6fbc29db826244212a4eee2bc5d25b4a7.tar.gz
- Define mnt_startzero and mnt_endzero as a range that excludes mnt_mtx
and mnt_lock so that the mountpoint can be explicitly zeroed on creation. Discussed with: tegge Tested by: kris Sponsored by: Isilon Systems, Inc.
-rw-r--r--sys/sys/mount.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/sys/mount.h b/sys/sys/mount.h
index 5c4bb87..f63361c 100644
--- a/sys/sys/mount.h
+++ b/sys/sys/mount.h
@@ -143,13 +143,14 @@ struct vfsopt;
*
*/
struct mount {
+ struct lock mnt_lock; /* mount structure lock */
+ struct mtx mnt_mtx; /* mount structure interlock */
+#define mnt_startzero mnt_list
TAILQ_ENTRY(mount) mnt_list; /* (m) mount list */
struct vfsops *mnt_op; /* operations on fs */
struct vfsconf *mnt_vfc; /* configuration info */
struct vnode *mnt_vnodecovered; /* vnode we mounted on */
struct vnode *mnt_syncer; /* syncer vnode */
- struct lock mnt_lock; /* mount structure lock */
- struct mtx mnt_mtx; /* mount structure interlock */
int mnt_ref; /* (i) Reference count */
struct vnodelst mnt_nvnodelist; /* (i) list of vnodes */
int mnt_nvnodelistsize; /* (i) # of vnodes */
@@ -172,6 +173,7 @@ struct mount {
int mnt_holdcnt; /* hold count */
int mnt_holdcntwaiters; /* waits on hold count */
int mnt_secondary_writes; /* (i) # of secondary writes */
+#define mnt_endzero mnt_secondary_accwrites
int mnt_secondary_accwrites;/* (i) secondary wr. starts */
};
OpenPOWER on IntegriCloud