Print this page
Possibility to physically reserve space without writing leaf blocks
Split |
Close |
Expand all |
Collapse all |
--- old/usr/src/uts/common/sys/filio.h
+++ new/usr/src/uts/common/sys/filio.h
1 1 /*
2 2 * CDDL HEADER START
3 3 *
4 4 * The contents of this file are subject to the terms of the
5 5 * Common Development and Distribution License (the "License").
6 6 * You may not use this file except in compliance with the License.
7 7 *
8 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 9 * or http://www.opensolaris.org/os/licensing.
10 10 * See the License for the specific language governing permissions
11 11 * and limitations under the License.
12 12 *
13 13 * When distributing Covered Code, include this CDDL HEADER in each
14 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 15 * If applicable, add the following below this CDDL HEADER, with the
16 16 * fields enclosed by brackets "[]" replaced with your own identifying
17 17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 18 *
19 19 * CDDL HEADER END
20 20 */
21 21 /*
22 22 * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
23 23 * Use is subject to license terms.
24 24 */
25 25
26 26 /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */
27 27 /* All Rights Reserved */
28 28
29 29 /*
30 30 * University Copyright- Copyright (c) 1982, 1986, 1988
31 31 * The Regents of the University of California
32 32 * All Rights Reserved
33 33 *
34 34 * University Acknowledgment- Portions of this document are derived from
35 35 * software developed by the University of California, Berkeley, and its
36 36 * contributors.
37 37 */
38 38
39 39 #ifndef _SYS_FILIO_H
40 40 #define _SYS_FILIO_H
41 41
42 42 #pragma ident "%Z%%M% %I% %E% SMI"
43 43
44 44 /*
45 45 * General file ioctl definitions.
46 46 */
47 47
48 48 #include <sys/ioccom.h>
49 49
50 50 #ifdef __cplusplus
51 51 extern "C" {
52 52 #endif
53 53
54 54 #define FIOCLEX _IO('f', 1) /* set exclusive use on fd */
55 55 #define FIONCLEX _IO('f', 2) /* remove exclusive use */
56 56 /* another local */
57 57 #define FIONREAD _IOR('f', 127, int) /* get # bytes to read */
58 58 #define FIONBIO _IOW('f', 126, int) /* set/clear non-blocking i/o */
59 59 #define FIOASYNC _IOW('f', 125, int) /* set/clear async i/o */
60 60 #define FIOSETOWN _IOW('f', 124, int) /* set owner */
61 61 #define FIOGETOWN _IOR('f', 123, int) /* get owner */
62 62
63 63 /*
64 64 * ioctl's for Online: DiskSuite.
65 65 * WARNING - the support for these ioctls may be withdrawn
66 66 * in future OS releases.
67 67 */
68 68 #define _FIOLFS _IO('f', 64) /* file system lock */
69 69 #define _FIOLFSS _IO('f', 65) /* file system lock status */
70 70 #define _FIOFFS _IO('f', 66) /* file system flush */
71 71 #define _FIOAI _FIOOBSOLETE67 /* get allocation info is */
72 72 #define _FIOOBSOLETE67 _IO('f', 67) /* obsolete and unsupported */
73 73 #define _FIOSATIME _IO('f', 68) /* set atime */
74 74 #define _FIOSDIO _IO('f', 69) /* set delayed io */
75 75 #define _FIOGDIO _IO('f', 70) /* get delayed io */
76 76 #define _FIOIO _IO('f', 71) /* inode open */
77 77 #define _FIOISLOG _IO('f', 72) /* disksuite/ufs protocol */
78 78 #define _FIOISLOGOK _IO('f', 73) /* disksuite/ufs protocol */
79 79 #define _FIOLOGRESET _IO('f', 74) /* disksuite/ufs protocol */
80 80
81 81 /*
82 82 * Contract-private ioctl()
83 83 */
84 84 #define _FIOISBUSY _IO('f', 75) /* networker/ufs protocol */
85 85 #define _FIODIRECTIO _IO('f', 76) /* directio */
86 86 #define _FIOTUNE _IO('f', 77) /* tuning */
87 87
88 88 /*
89 89 * WARNING: These 'f' ioctls are also defined in sys/fs/cachefs_fs.h
90 90 * It currently defines 78-86.
91 91 */
92 92
93 93 /*
94 94 * Internal Logging UFS
95 95 */
96 96 #define _FIOLOGENABLE _IO('f', 87) /* logging/ufs protocol */
97 97 #define _FIOLOGDISABLE _IO('f', 88) /* logging/ufs protocol */
98 98
99 99 /*
100 100 * File system snapshot ioctls (see sys/fs/ufs_snap.h)
101 101 * (there is another snapshot ioctl, _FIOSNAPSHOTCREATE_MULTI,
102 102 * defined farther down in this file.)
103 103 */
104 104 #define _FIOSNAPSHOTCREATE _IO('f', 89) /* create a snapshot */
105 105 #define _FIOSNAPSHOTDELETE _IO('f', 90) /* delete a snapshot */
106 106
107 107 /*
108 108 * Return the current superblock of size SBSIZE
109 109 */
110 110 #define _FIOGETSUPERBLOCK _IO('f', 91)
111 111
112 112 /*
113 113 * Contract private ioctl
114 114 */
115 115 #define _FIOGETMAXPHYS _IO('f', 92)
116 116
117 117 /*
118 118 * TSufs support
119 119 */
120 120 #define _FIO_SET_LUFS_DEBUG _IO('f', 93) /* set lufs_debug */
121 121 #define _FIO_SET_LUFS_ERROR _IO('f', 94) /* set a lufs error */
122 122 #define _FIO_GET_TOP_STATS _IO('f', 95) /* get lufs tranaction stats */
123 123
124 124 /*
125 125 * create a snapshot with multiple backing files
126 126 */
127 127 #define _FIOSNAPSHOTCREATE_MULTI _IO('f', 96)
128 128
↓ open down ↓ |
128 lines elided |
↑ open up ↑ |
129 129 /*
130 130 * handle lseek SEEK_DATA and SEEK_HOLE for holey file knowledge
131 131 */
132 132 #define _FIO_SEEK_DATA _IO('f', 97) /* SEEK_DATA */
133 133 #define _FIO_SEEK_HOLE _IO('f', 98) /* SEEK_HOLE */
134 134
135 135 /*
136 136 * boot archive compression
137 137 */
138 138 #define _FIO_COMPRESSED _IO('f', 99) /* mark file as compressed */
139 +#define _FIO_RESERVE_SPACE _IO('f', 100) /* Reserve space */
139 140
140 141 #ifdef __cplusplus
141 142 }
142 143 #endif
143 144
144 145 #endif /* _SYS_FILIO_H */
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX