aboutsummaryrefslogtreecommitdiff
path: root/sys/sys
diff options
context:
space:
mode:
authorMatthew Dillon <dillon@FreeBSD.org>1999-09-17 05:34:00 +0000
committerMatthew Dillon <dillon@FreeBSD.org>1999-09-17 05:34:00 +0000
commit447deba3dadf866766beba0745bb6868241eaef6 (patch)
tree37fa135dd798e2d6da46a6c58ec698acf8936440 /sys/sys
parent24579ca1d7a4ffaa220af5bd7593aa759e1d9c38 (diff)
downloadsrc-447deba3dadf866766beba0745bb6868241eaef6.tar.gz
src-447deba3dadf866766beba0745bb6868241eaef6.zip
Fix a bug in the block number calculation for VN disks with a sector
size != 512 that are configured without a label. The bug should only have effected swap-backed VN mounts without a label. Add several major features to VN. In the kernel we add a swap pre-reservation capability, which can be used to guarentee seek consistency for swap-backed VN nodes. This also incidently allows a swap-backed VN filesystem to be recovered after a crash in some cases (if the same swap blocks happen to be reserved). We also add a number of new options to vnconfig which do the work of pre-zeroing or creating/truncating/extending a file which greatly simplifies using VN in a file-backed configuration. Add FreeBSD CVS label to sys/sys/vnioctl.h, as well as a new ioctl flag for the swap pre-reservation feature. Reviewed by: Alan Cox <alc@cs.rice.edu>, David Greenman <dg@root.com>
Notes
Notes: svn path=/head/; revision=51341
Diffstat (limited to 'sys/sys')
-rw-r--r--sys/sys/mdioctl.h3
-rw-r--r--sys/sys/vnioctl.h3
2 files changed, 6 insertions, 0 deletions
diff --git a/sys/sys/mdioctl.h b/sys/sys/mdioctl.h
index 4f2e9371ce96..b28374182821 100644
--- a/sys/sys/mdioctl.h
+++ b/sys/sys/mdioctl.h
@@ -38,6 +38,8 @@
* from: Utah $Hdr: fdioctl.h 1.1 90/07/09$
*
* @(#)vnioctl.h 8.1 (Berkeley) 6/10/93
+ *
+ * $FreeBSD$
*/
#ifndef _SYS_VNIOCTL_H_
@@ -72,5 +74,6 @@ struct vn_ioctl {
#define VN_DEBUG 0x4 /* Debug data in vn driver */
#define VN_IO 0x8 /* Debug I/O in vn driver */
#define VN_DONTCLUSTER 0x10 /* Don't cluster */
+#define VN_RESERVE 0x20 /* Pre-reserve swap */
#endif /* _SYS_VNIOCTL_H_*/
diff --git a/sys/sys/vnioctl.h b/sys/sys/vnioctl.h
index 4f2e9371ce96..b28374182821 100644
--- a/sys/sys/vnioctl.h
+++ b/sys/sys/vnioctl.h
@@ -38,6 +38,8 @@
* from: Utah $Hdr: fdioctl.h 1.1 90/07/09$
*
* @(#)vnioctl.h 8.1 (Berkeley) 6/10/93
+ *
+ * $FreeBSD$
*/
#ifndef _SYS_VNIOCTL_H_
@@ -72,5 +74,6 @@ struct vn_ioctl {
#define VN_DEBUG 0x4 /* Debug data in vn driver */
#define VN_IO 0x8 /* Debug I/O in vn driver */
#define VN_DONTCLUSTER 0x10 /* Don't cluster */
+#define VN_RESERVE 0x20 /* Pre-reserve swap */
#endif /* _SYS_VNIOCTL_H_*/