diff options
author | jeff <jeff@FreeBSD.org> | 2006-03-31 03:49:16 +0000 |
---|---|---|
committer | jeff <jeff@FreeBSD.org> | 2006-03-31 03:49:16 +0000 |
commit | 316b7aa6fbc29db826244212a4eee2bc5d25b4a7 (patch) | |
tree | 926bdb155ad7af5aebdae08d8267c39989ecf5a7 | |
parent | 73f46586c6a7502142873c6d714c639b83e8e1e0 (diff) | |
download | FreeBSD-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.h | 6 |
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 */ }; |