vnode_if.c revision 1.2 1 1.1 cgd /*
2 1.1 cgd * Warning: This file is generated automatically.
3 1.1 cgd * (Modifications made here may easily be lost!)
4 1.1 cgd *
5 1.1 cgd * Created from the file:
6 1.2 mycroft * NetBSD: vnode_if.src,v 1.10 1996/05/11 18:26:27 mycroft Exp
7 1.1 cgd * by the script:
8 1.1 cgd * NetBSD: vnode_if.sh,v 1.9 1996/02/29 20:58:22 cgd Exp
9 1.1 cgd */
10 1.1 cgd
11 1.1 cgd /*
12 1.1 cgd * Copyright (c) 1992, 1993
13 1.1 cgd * The Regents of the University of California. All rights reserved.
14 1.1 cgd *
15 1.1 cgd * Redistribution and use in source and binary forms, with or without
16 1.1 cgd * modification, are permitted provided that the following conditions
17 1.1 cgd * are met:
18 1.1 cgd * 1. Redistributions of source code must retain the above copyright
19 1.1 cgd * notice, this list of conditions and the following disclaimer.
20 1.1 cgd * 2. Redistributions in binary form must reproduce the above copyright
21 1.1 cgd * notice, this list of conditions and the following disclaimer in the
22 1.1 cgd * documentation and/or other materials provided with the distribution.
23 1.1 cgd * 3. All advertising materials mentioning features or use of this software
24 1.1 cgd * must display the following acknowledgement:
25 1.1 cgd * This product includes software developed by the University of
26 1.1 cgd * California, Berkeley and its contributors.
27 1.1 cgd * 4. Neither the name of the University nor the names of its contributors
28 1.1 cgd * may be used to endorse or promote products derived from this software
29 1.1 cgd * without specific prior written permission.
30 1.1 cgd *
31 1.1 cgd * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS AS IS'' AND
32 1.1 cgd * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
33 1.1 cgd * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
34 1.1 cgd * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
35 1.1 cgd * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36 1.1 cgd * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37 1.1 cgd * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38 1.1 cgd * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
39 1.1 cgd * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
40 1.1 cgd * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
41 1.1 cgd * SUCH DAMAGE.
42 1.1 cgd */
43 1.1 cgd
44 1.1 cgd #include <sys/param.h>
45 1.1 cgd #include <sys/mount.h>
46 1.1 cgd #include <sys/vnode.h>
47 1.1 cgd
48 1.1 cgd struct vnodeop_desc vop_default_desc = {
49 1.1 cgd 0,
50 1.1 cgd "default",
51 1.1 cgd 0,
52 1.1 cgd NULL,
53 1.1 cgd VDESC_NO_OFFSET,
54 1.1 cgd VDESC_NO_OFFSET,
55 1.1 cgd VDESC_NO_OFFSET,
56 1.1 cgd VDESC_NO_OFFSET,
57 1.1 cgd NULL,
58 1.1 cgd };
59 1.1 cgd
60 1.1 cgd
61 1.1 cgd int vop_lookup_vp_offsets[] = {
62 1.1 cgd VOPARG_OFFSETOF(struct vop_lookup_args,a_dvp),
63 1.1 cgd VDESC_NO_OFFSET
64 1.1 cgd };
65 1.1 cgd struct vnodeop_desc vop_lookup_desc = {
66 1.1 cgd 0,
67 1.1 cgd "vop_lookup",
68 1.1 cgd 0,
69 1.1 cgd vop_lookup_vp_offsets,
70 1.1 cgd VOPARG_OFFSETOF(struct vop_lookup_args, a_vpp),
71 1.1 cgd VDESC_NO_OFFSET,
72 1.1 cgd VDESC_NO_OFFSET,
73 1.1 cgd VOPARG_OFFSETOF(struct vop_lookup_args, a_cnp),
74 1.1 cgd NULL,
75 1.1 cgd };
76 1.1 cgd
77 1.1 cgd int vop_create_vp_offsets[] = {
78 1.1 cgd VOPARG_OFFSETOF(struct vop_create_args,a_dvp),
79 1.1 cgd VDESC_NO_OFFSET
80 1.1 cgd };
81 1.1 cgd struct vnodeop_desc vop_create_desc = {
82 1.1 cgd 0,
83 1.1 cgd "vop_create",
84 1.1 cgd 0 | VDESC_VP0_WILLRELE,
85 1.1 cgd vop_create_vp_offsets,
86 1.1 cgd VOPARG_OFFSETOF(struct vop_create_args, a_vpp),
87 1.1 cgd VDESC_NO_OFFSET,
88 1.1 cgd VDESC_NO_OFFSET,
89 1.1 cgd VOPARG_OFFSETOF(struct vop_create_args, a_cnp),
90 1.1 cgd NULL,
91 1.1 cgd };
92 1.1 cgd
93 1.1 cgd int vop_mknod_vp_offsets[] = {
94 1.1 cgd VOPARG_OFFSETOF(struct vop_mknod_args,a_dvp),
95 1.1 cgd VDESC_NO_OFFSET
96 1.1 cgd };
97 1.1 cgd struct vnodeop_desc vop_mknod_desc = {
98 1.1 cgd 0,
99 1.1 cgd "vop_mknod",
100 1.1 cgd 0 | VDESC_VP0_WILLRELE | VDESC_VPP_WILLRELE,
101 1.1 cgd vop_mknod_vp_offsets,
102 1.1 cgd VOPARG_OFFSETOF(struct vop_mknod_args, a_vpp),
103 1.1 cgd VDESC_NO_OFFSET,
104 1.1 cgd VDESC_NO_OFFSET,
105 1.1 cgd VOPARG_OFFSETOF(struct vop_mknod_args, a_cnp),
106 1.1 cgd NULL,
107 1.1 cgd };
108 1.1 cgd
109 1.1 cgd int vop_open_vp_offsets[] = {
110 1.1 cgd VOPARG_OFFSETOF(struct vop_open_args,a_vp),
111 1.1 cgd VDESC_NO_OFFSET
112 1.1 cgd };
113 1.1 cgd struct vnodeop_desc vop_open_desc = {
114 1.1 cgd 0,
115 1.1 cgd "vop_open",
116 1.1 cgd 0,
117 1.1 cgd vop_open_vp_offsets,
118 1.1 cgd VDESC_NO_OFFSET,
119 1.1 cgd VOPARG_OFFSETOF(struct vop_open_args, a_cred),
120 1.1 cgd VOPARG_OFFSETOF(struct vop_open_args, a_p),
121 1.1 cgd VDESC_NO_OFFSET,
122 1.1 cgd NULL,
123 1.1 cgd };
124 1.1 cgd
125 1.1 cgd int vop_close_vp_offsets[] = {
126 1.1 cgd VOPARG_OFFSETOF(struct vop_close_args,a_vp),
127 1.1 cgd VDESC_NO_OFFSET
128 1.1 cgd };
129 1.1 cgd struct vnodeop_desc vop_close_desc = {
130 1.1 cgd 0,
131 1.1 cgd "vop_close",
132 1.1 cgd 0,
133 1.1 cgd vop_close_vp_offsets,
134 1.1 cgd VDESC_NO_OFFSET,
135 1.1 cgd VOPARG_OFFSETOF(struct vop_close_args, a_cred),
136 1.1 cgd VOPARG_OFFSETOF(struct vop_close_args, a_p),
137 1.1 cgd VDESC_NO_OFFSET,
138 1.1 cgd NULL,
139 1.1 cgd };
140 1.1 cgd
141 1.1 cgd int vop_access_vp_offsets[] = {
142 1.1 cgd VOPARG_OFFSETOF(struct vop_access_args,a_vp),
143 1.1 cgd VDESC_NO_OFFSET
144 1.1 cgd };
145 1.1 cgd struct vnodeop_desc vop_access_desc = {
146 1.1 cgd 0,
147 1.1 cgd "vop_access",
148 1.1 cgd 0,
149 1.1 cgd vop_access_vp_offsets,
150 1.1 cgd VDESC_NO_OFFSET,
151 1.1 cgd VOPARG_OFFSETOF(struct vop_access_args, a_cred),
152 1.1 cgd VOPARG_OFFSETOF(struct vop_access_args, a_p),
153 1.1 cgd VDESC_NO_OFFSET,
154 1.1 cgd NULL,
155 1.1 cgd };
156 1.1 cgd
157 1.1 cgd int vop_getattr_vp_offsets[] = {
158 1.1 cgd VOPARG_OFFSETOF(struct vop_getattr_args,a_vp),
159 1.1 cgd VDESC_NO_OFFSET
160 1.1 cgd };
161 1.1 cgd struct vnodeop_desc vop_getattr_desc = {
162 1.1 cgd 0,
163 1.1 cgd "vop_getattr",
164 1.1 cgd 0,
165 1.1 cgd vop_getattr_vp_offsets,
166 1.1 cgd VDESC_NO_OFFSET,
167 1.1 cgd VOPARG_OFFSETOF(struct vop_getattr_args, a_cred),
168 1.1 cgd VOPARG_OFFSETOF(struct vop_getattr_args, a_p),
169 1.1 cgd VDESC_NO_OFFSET,
170 1.1 cgd NULL,
171 1.1 cgd };
172 1.1 cgd
173 1.1 cgd int vop_setattr_vp_offsets[] = {
174 1.1 cgd VOPARG_OFFSETOF(struct vop_setattr_args,a_vp),
175 1.1 cgd VDESC_NO_OFFSET
176 1.1 cgd };
177 1.1 cgd struct vnodeop_desc vop_setattr_desc = {
178 1.1 cgd 0,
179 1.1 cgd "vop_setattr",
180 1.1 cgd 0,
181 1.1 cgd vop_setattr_vp_offsets,
182 1.1 cgd VDESC_NO_OFFSET,
183 1.1 cgd VOPARG_OFFSETOF(struct vop_setattr_args, a_cred),
184 1.1 cgd VOPARG_OFFSETOF(struct vop_setattr_args, a_p),
185 1.1 cgd VDESC_NO_OFFSET,
186 1.1 cgd NULL,
187 1.1 cgd };
188 1.1 cgd
189 1.1 cgd int vop_read_vp_offsets[] = {
190 1.1 cgd VOPARG_OFFSETOF(struct vop_read_args,a_vp),
191 1.1 cgd VDESC_NO_OFFSET
192 1.1 cgd };
193 1.1 cgd struct vnodeop_desc vop_read_desc = {
194 1.1 cgd 0,
195 1.1 cgd "vop_read",
196 1.1 cgd 0,
197 1.1 cgd vop_read_vp_offsets,
198 1.1 cgd VDESC_NO_OFFSET,
199 1.1 cgd VOPARG_OFFSETOF(struct vop_read_args, a_cred),
200 1.1 cgd VDESC_NO_OFFSET,
201 1.1 cgd VDESC_NO_OFFSET,
202 1.1 cgd NULL,
203 1.1 cgd };
204 1.1 cgd
205 1.1 cgd int vop_write_vp_offsets[] = {
206 1.1 cgd VOPARG_OFFSETOF(struct vop_write_args,a_vp),
207 1.1 cgd VDESC_NO_OFFSET
208 1.1 cgd };
209 1.1 cgd struct vnodeop_desc vop_write_desc = {
210 1.1 cgd 0,
211 1.1 cgd "vop_write",
212 1.1 cgd 0,
213 1.1 cgd vop_write_vp_offsets,
214 1.1 cgd VDESC_NO_OFFSET,
215 1.1 cgd VOPARG_OFFSETOF(struct vop_write_args, a_cred),
216 1.1 cgd VDESC_NO_OFFSET,
217 1.1 cgd VDESC_NO_OFFSET,
218 1.1 cgd NULL,
219 1.1 cgd };
220 1.1 cgd
221 1.1 cgd int vop_ioctl_vp_offsets[] = {
222 1.1 cgd VOPARG_OFFSETOF(struct vop_ioctl_args,a_vp),
223 1.1 cgd VDESC_NO_OFFSET
224 1.1 cgd };
225 1.1 cgd struct vnodeop_desc vop_ioctl_desc = {
226 1.1 cgd 0,
227 1.1 cgd "vop_ioctl",
228 1.1 cgd 0,
229 1.1 cgd vop_ioctl_vp_offsets,
230 1.1 cgd VDESC_NO_OFFSET,
231 1.1 cgd VOPARG_OFFSETOF(struct vop_ioctl_args, a_cred),
232 1.1 cgd VOPARG_OFFSETOF(struct vop_ioctl_args, a_p),
233 1.1 cgd VDESC_NO_OFFSET,
234 1.1 cgd NULL,
235 1.1 cgd };
236 1.1 cgd
237 1.1 cgd int vop_select_vp_offsets[] = {
238 1.1 cgd VOPARG_OFFSETOF(struct vop_select_args,a_vp),
239 1.1 cgd VDESC_NO_OFFSET
240 1.1 cgd };
241 1.1 cgd struct vnodeop_desc vop_select_desc = {
242 1.1 cgd 0,
243 1.1 cgd "vop_select",
244 1.1 cgd 0,
245 1.1 cgd vop_select_vp_offsets,
246 1.1 cgd VDESC_NO_OFFSET,
247 1.1 cgd VOPARG_OFFSETOF(struct vop_select_args, a_cred),
248 1.1 cgd VOPARG_OFFSETOF(struct vop_select_args, a_p),
249 1.1 cgd VDESC_NO_OFFSET,
250 1.1 cgd NULL,
251 1.1 cgd };
252 1.1 cgd
253 1.1 cgd int vop_mmap_vp_offsets[] = {
254 1.1 cgd VOPARG_OFFSETOF(struct vop_mmap_args,a_vp),
255 1.1 cgd VDESC_NO_OFFSET
256 1.1 cgd };
257 1.1 cgd struct vnodeop_desc vop_mmap_desc = {
258 1.1 cgd 0,
259 1.1 cgd "vop_mmap",
260 1.1 cgd 0,
261 1.1 cgd vop_mmap_vp_offsets,
262 1.1 cgd VDESC_NO_OFFSET,
263 1.1 cgd VOPARG_OFFSETOF(struct vop_mmap_args, a_cred),
264 1.1 cgd VOPARG_OFFSETOF(struct vop_mmap_args, a_p),
265 1.1 cgd VDESC_NO_OFFSET,
266 1.1 cgd NULL,
267 1.1 cgd };
268 1.1 cgd
269 1.1 cgd int vop_fsync_vp_offsets[] = {
270 1.1 cgd VOPARG_OFFSETOF(struct vop_fsync_args,a_vp),
271 1.1 cgd VDESC_NO_OFFSET
272 1.1 cgd };
273 1.1 cgd struct vnodeop_desc vop_fsync_desc = {
274 1.1 cgd 0,
275 1.1 cgd "vop_fsync",
276 1.1 cgd 0,
277 1.1 cgd vop_fsync_vp_offsets,
278 1.1 cgd VDESC_NO_OFFSET,
279 1.1 cgd VOPARG_OFFSETOF(struct vop_fsync_args, a_cred),
280 1.1 cgd VOPARG_OFFSETOF(struct vop_fsync_args, a_p),
281 1.1 cgd VDESC_NO_OFFSET,
282 1.1 cgd NULL,
283 1.1 cgd };
284 1.1 cgd
285 1.1 cgd int vop_seek_vp_offsets[] = {
286 1.1 cgd VOPARG_OFFSETOF(struct vop_seek_args,a_vp),
287 1.1 cgd VDESC_NO_OFFSET
288 1.1 cgd };
289 1.1 cgd struct vnodeop_desc vop_seek_desc = {
290 1.1 cgd 0,
291 1.1 cgd "vop_seek",
292 1.1 cgd 0,
293 1.1 cgd vop_seek_vp_offsets,
294 1.1 cgd VDESC_NO_OFFSET,
295 1.1 cgd VOPARG_OFFSETOF(struct vop_seek_args, a_cred),
296 1.1 cgd VDESC_NO_OFFSET,
297 1.1 cgd VDESC_NO_OFFSET,
298 1.1 cgd NULL,
299 1.1 cgd };
300 1.1 cgd
301 1.1 cgd int vop_remove_vp_offsets[] = {
302 1.1 cgd VOPARG_OFFSETOF(struct vop_remove_args,a_dvp),
303 1.1 cgd VOPARG_OFFSETOF(struct vop_remove_args,a_vp),
304 1.1 cgd VDESC_NO_OFFSET
305 1.1 cgd };
306 1.1 cgd struct vnodeop_desc vop_remove_desc = {
307 1.1 cgd 0,
308 1.1 cgd "vop_remove",
309 1.1 cgd 0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE,
310 1.1 cgd vop_remove_vp_offsets,
311 1.1 cgd VDESC_NO_OFFSET,
312 1.1 cgd VDESC_NO_OFFSET,
313 1.1 cgd VDESC_NO_OFFSET,
314 1.1 cgd VOPARG_OFFSETOF(struct vop_remove_args, a_cnp),
315 1.1 cgd NULL,
316 1.1 cgd };
317 1.1 cgd
318 1.1 cgd int vop_link_vp_offsets[] = {
319 1.1 cgd VOPARG_OFFSETOF(struct vop_link_args,a_dvp),
320 1.1 cgd VOPARG_OFFSETOF(struct vop_link_args,a_vp),
321 1.1 cgd VDESC_NO_OFFSET
322 1.1 cgd };
323 1.1 cgd struct vnodeop_desc vop_link_desc = {
324 1.1 cgd 0,
325 1.1 cgd "vop_link",
326 1.1 cgd 0 | VDESC_VP0_WILLRELE,
327 1.1 cgd vop_link_vp_offsets,
328 1.1 cgd VDESC_NO_OFFSET,
329 1.1 cgd VDESC_NO_OFFSET,
330 1.1 cgd VDESC_NO_OFFSET,
331 1.1 cgd VOPARG_OFFSETOF(struct vop_link_args, a_cnp),
332 1.1 cgd NULL,
333 1.1 cgd };
334 1.1 cgd
335 1.1 cgd int vop_rename_vp_offsets[] = {
336 1.1 cgd VOPARG_OFFSETOF(struct vop_rename_args,a_fdvp),
337 1.1 cgd VOPARG_OFFSETOF(struct vop_rename_args,a_fvp),
338 1.1 cgd VOPARG_OFFSETOF(struct vop_rename_args,a_tdvp),
339 1.1 cgd VOPARG_OFFSETOF(struct vop_rename_args,a_tvp),
340 1.1 cgd VDESC_NO_OFFSET
341 1.1 cgd };
342 1.1 cgd struct vnodeop_desc vop_rename_desc = {
343 1.1 cgd 0,
344 1.1 cgd "vop_rename",
345 1.1 cgd 0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE | VDESC_VP2_WILLRELE | VDESC_VP3_WILLRELE,
346 1.1 cgd vop_rename_vp_offsets,
347 1.1 cgd VDESC_NO_OFFSET,
348 1.1 cgd VDESC_NO_OFFSET,
349 1.1 cgd VDESC_NO_OFFSET,
350 1.1 cgd VOPARG_OFFSETOF(struct vop_rename_args, a_fcnp),
351 1.1 cgd NULL,
352 1.1 cgd };
353 1.1 cgd
354 1.1 cgd int vop_mkdir_vp_offsets[] = {
355 1.1 cgd VOPARG_OFFSETOF(struct vop_mkdir_args,a_dvp),
356 1.1 cgd VDESC_NO_OFFSET
357 1.1 cgd };
358 1.1 cgd struct vnodeop_desc vop_mkdir_desc = {
359 1.1 cgd 0,
360 1.1 cgd "vop_mkdir",
361 1.1 cgd 0 | VDESC_VP0_WILLRELE,
362 1.1 cgd vop_mkdir_vp_offsets,
363 1.1 cgd VOPARG_OFFSETOF(struct vop_mkdir_args, a_vpp),
364 1.1 cgd VDESC_NO_OFFSET,
365 1.1 cgd VDESC_NO_OFFSET,
366 1.1 cgd VOPARG_OFFSETOF(struct vop_mkdir_args, a_cnp),
367 1.1 cgd NULL,
368 1.1 cgd };
369 1.1 cgd
370 1.1 cgd int vop_rmdir_vp_offsets[] = {
371 1.1 cgd VOPARG_OFFSETOF(struct vop_rmdir_args,a_dvp),
372 1.1 cgd VOPARG_OFFSETOF(struct vop_rmdir_args,a_vp),
373 1.1 cgd VDESC_NO_OFFSET
374 1.1 cgd };
375 1.1 cgd struct vnodeop_desc vop_rmdir_desc = {
376 1.1 cgd 0,
377 1.1 cgd "vop_rmdir",
378 1.1 cgd 0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE,
379 1.1 cgd vop_rmdir_vp_offsets,
380 1.1 cgd VDESC_NO_OFFSET,
381 1.1 cgd VDESC_NO_OFFSET,
382 1.1 cgd VDESC_NO_OFFSET,
383 1.1 cgd VOPARG_OFFSETOF(struct vop_rmdir_args, a_cnp),
384 1.1 cgd NULL,
385 1.1 cgd };
386 1.1 cgd
387 1.1 cgd int vop_symlink_vp_offsets[] = {
388 1.1 cgd VOPARG_OFFSETOF(struct vop_symlink_args,a_dvp),
389 1.1 cgd VDESC_NO_OFFSET
390 1.1 cgd };
391 1.1 cgd struct vnodeop_desc vop_symlink_desc = {
392 1.1 cgd 0,
393 1.1 cgd "vop_symlink",
394 1.1 cgd 0 | VDESC_VP0_WILLRELE | VDESC_VPP_WILLRELE,
395 1.1 cgd vop_symlink_vp_offsets,
396 1.1 cgd VOPARG_OFFSETOF(struct vop_symlink_args, a_vpp),
397 1.1 cgd VDESC_NO_OFFSET,
398 1.1 cgd VDESC_NO_OFFSET,
399 1.1 cgd VOPARG_OFFSETOF(struct vop_symlink_args, a_cnp),
400 1.1 cgd NULL,
401 1.1 cgd };
402 1.1 cgd
403 1.1 cgd int vop_readdir_vp_offsets[] = {
404 1.1 cgd VOPARG_OFFSETOF(struct vop_readdir_args,a_vp),
405 1.1 cgd VDESC_NO_OFFSET
406 1.1 cgd };
407 1.1 cgd struct vnodeop_desc vop_readdir_desc = {
408 1.1 cgd 0,
409 1.1 cgd "vop_readdir",
410 1.1 cgd 0,
411 1.1 cgd vop_readdir_vp_offsets,
412 1.1 cgd VDESC_NO_OFFSET,
413 1.1 cgd VOPARG_OFFSETOF(struct vop_readdir_args, a_cred),
414 1.1 cgd VDESC_NO_OFFSET,
415 1.1 cgd VDESC_NO_OFFSET,
416 1.1 cgd NULL,
417 1.1 cgd };
418 1.1 cgd
419 1.1 cgd int vop_readlink_vp_offsets[] = {
420 1.1 cgd VOPARG_OFFSETOF(struct vop_readlink_args,a_vp),
421 1.1 cgd VDESC_NO_OFFSET
422 1.1 cgd };
423 1.1 cgd struct vnodeop_desc vop_readlink_desc = {
424 1.1 cgd 0,
425 1.1 cgd "vop_readlink",
426 1.1 cgd 0,
427 1.1 cgd vop_readlink_vp_offsets,
428 1.1 cgd VDESC_NO_OFFSET,
429 1.1 cgd VOPARG_OFFSETOF(struct vop_readlink_args, a_cred),
430 1.1 cgd VDESC_NO_OFFSET,
431 1.1 cgd VDESC_NO_OFFSET,
432 1.1 cgd NULL,
433 1.1 cgd };
434 1.1 cgd
435 1.1 cgd int vop_abortop_vp_offsets[] = {
436 1.1 cgd VOPARG_OFFSETOF(struct vop_abortop_args,a_dvp),
437 1.1 cgd VDESC_NO_OFFSET
438 1.1 cgd };
439 1.1 cgd struct vnodeop_desc vop_abortop_desc = {
440 1.1 cgd 0,
441 1.1 cgd "vop_abortop",
442 1.1 cgd 0,
443 1.1 cgd vop_abortop_vp_offsets,
444 1.1 cgd VDESC_NO_OFFSET,
445 1.1 cgd VDESC_NO_OFFSET,
446 1.1 cgd VDESC_NO_OFFSET,
447 1.1 cgd VOPARG_OFFSETOF(struct vop_abortop_args, a_cnp),
448 1.1 cgd NULL,
449 1.1 cgd };
450 1.1 cgd
451 1.1 cgd int vop_inactive_vp_offsets[] = {
452 1.1 cgd VOPARG_OFFSETOF(struct vop_inactive_args,a_vp),
453 1.1 cgd VDESC_NO_OFFSET
454 1.1 cgd };
455 1.1 cgd struct vnodeop_desc vop_inactive_desc = {
456 1.1 cgd 0,
457 1.1 cgd "vop_inactive",
458 1.1 cgd 0,
459 1.1 cgd vop_inactive_vp_offsets,
460 1.1 cgd VDESC_NO_OFFSET,
461 1.1 cgd VDESC_NO_OFFSET,
462 1.1 cgd VDESC_NO_OFFSET,
463 1.1 cgd VDESC_NO_OFFSET,
464 1.1 cgd NULL,
465 1.1 cgd };
466 1.1 cgd
467 1.1 cgd int vop_reclaim_vp_offsets[] = {
468 1.1 cgd VOPARG_OFFSETOF(struct vop_reclaim_args,a_vp),
469 1.1 cgd VDESC_NO_OFFSET
470 1.1 cgd };
471 1.1 cgd struct vnodeop_desc vop_reclaim_desc = {
472 1.1 cgd 0,
473 1.1 cgd "vop_reclaim",
474 1.1 cgd 0,
475 1.1 cgd vop_reclaim_vp_offsets,
476 1.1 cgd VDESC_NO_OFFSET,
477 1.1 cgd VDESC_NO_OFFSET,
478 1.1 cgd VDESC_NO_OFFSET,
479 1.1 cgd VDESC_NO_OFFSET,
480 1.1 cgd NULL,
481 1.1 cgd };
482 1.1 cgd
483 1.1 cgd int vop_lock_vp_offsets[] = {
484 1.1 cgd VOPARG_OFFSETOF(struct vop_lock_args,a_vp),
485 1.1 cgd VDESC_NO_OFFSET
486 1.1 cgd };
487 1.1 cgd struct vnodeop_desc vop_lock_desc = {
488 1.1 cgd 0,
489 1.1 cgd "vop_lock",
490 1.1 cgd 0,
491 1.1 cgd vop_lock_vp_offsets,
492 1.1 cgd VDESC_NO_OFFSET,
493 1.1 cgd VDESC_NO_OFFSET,
494 1.1 cgd VDESC_NO_OFFSET,
495 1.1 cgd VDESC_NO_OFFSET,
496 1.1 cgd NULL,
497 1.1 cgd };
498 1.1 cgd
499 1.1 cgd int vop_unlock_vp_offsets[] = {
500 1.1 cgd VOPARG_OFFSETOF(struct vop_unlock_args,a_vp),
501 1.1 cgd VDESC_NO_OFFSET
502 1.1 cgd };
503 1.1 cgd struct vnodeop_desc vop_unlock_desc = {
504 1.1 cgd 0,
505 1.1 cgd "vop_unlock",
506 1.1 cgd 0,
507 1.1 cgd vop_unlock_vp_offsets,
508 1.1 cgd VDESC_NO_OFFSET,
509 1.1 cgd VDESC_NO_OFFSET,
510 1.1 cgd VDESC_NO_OFFSET,
511 1.1 cgd VDESC_NO_OFFSET,
512 1.1 cgd NULL,
513 1.1 cgd };
514 1.1 cgd
515 1.1 cgd int vop_bmap_vp_offsets[] = {
516 1.1 cgd VOPARG_OFFSETOF(struct vop_bmap_args,a_vp),
517 1.1 cgd VDESC_NO_OFFSET
518 1.1 cgd };
519 1.1 cgd struct vnodeop_desc vop_bmap_desc = {
520 1.1 cgd 0,
521 1.1 cgd "vop_bmap",
522 1.1 cgd 0,
523 1.1 cgd vop_bmap_vp_offsets,
524 1.1 cgd VOPARG_OFFSETOF(struct vop_bmap_args, a_vpp),
525 1.1 cgd VDESC_NO_OFFSET,
526 1.1 cgd VDESC_NO_OFFSET,
527 1.1 cgd VDESC_NO_OFFSET,
528 1.1 cgd NULL,
529 1.1 cgd };
530 1.1 cgd
531 1.1 cgd int vop_print_vp_offsets[] = {
532 1.1 cgd VOPARG_OFFSETOF(struct vop_print_args,a_vp),
533 1.1 cgd VDESC_NO_OFFSET
534 1.1 cgd };
535 1.1 cgd struct vnodeop_desc vop_print_desc = {
536 1.1 cgd 0,
537 1.1 cgd "vop_print",
538 1.1 cgd 0,
539 1.1 cgd vop_print_vp_offsets,
540 1.1 cgd VDESC_NO_OFFSET,
541 1.1 cgd VDESC_NO_OFFSET,
542 1.1 cgd VDESC_NO_OFFSET,
543 1.1 cgd VDESC_NO_OFFSET,
544 1.1 cgd NULL,
545 1.1 cgd };
546 1.1 cgd
547 1.1 cgd int vop_islocked_vp_offsets[] = {
548 1.1 cgd VOPARG_OFFSETOF(struct vop_islocked_args,a_vp),
549 1.1 cgd VDESC_NO_OFFSET
550 1.1 cgd };
551 1.1 cgd struct vnodeop_desc vop_islocked_desc = {
552 1.1 cgd 0,
553 1.1 cgd "vop_islocked",
554 1.1 cgd 0,
555 1.1 cgd vop_islocked_vp_offsets,
556 1.1 cgd VDESC_NO_OFFSET,
557 1.1 cgd VDESC_NO_OFFSET,
558 1.1 cgd VDESC_NO_OFFSET,
559 1.1 cgd VDESC_NO_OFFSET,
560 1.1 cgd NULL,
561 1.1 cgd };
562 1.1 cgd
563 1.1 cgd int vop_pathconf_vp_offsets[] = {
564 1.1 cgd VOPARG_OFFSETOF(struct vop_pathconf_args,a_vp),
565 1.1 cgd VDESC_NO_OFFSET
566 1.1 cgd };
567 1.1 cgd struct vnodeop_desc vop_pathconf_desc = {
568 1.1 cgd 0,
569 1.1 cgd "vop_pathconf",
570 1.1 cgd 0,
571 1.1 cgd vop_pathconf_vp_offsets,
572 1.1 cgd VDESC_NO_OFFSET,
573 1.1 cgd VDESC_NO_OFFSET,
574 1.1 cgd VDESC_NO_OFFSET,
575 1.1 cgd VDESC_NO_OFFSET,
576 1.1 cgd NULL,
577 1.1 cgd };
578 1.1 cgd
579 1.1 cgd int vop_advlock_vp_offsets[] = {
580 1.1 cgd VOPARG_OFFSETOF(struct vop_advlock_args,a_vp),
581 1.1 cgd VDESC_NO_OFFSET
582 1.1 cgd };
583 1.1 cgd struct vnodeop_desc vop_advlock_desc = {
584 1.1 cgd 0,
585 1.1 cgd "vop_advlock",
586 1.1 cgd 0,
587 1.1 cgd vop_advlock_vp_offsets,
588 1.1 cgd VDESC_NO_OFFSET,
589 1.1 cgd VDESC_NO_OFFSET,
590 1.1 cgd VDESC_NO_OFFSET,
591 1.1 cgd VDESC_NO_OFFSET,
592 1.1 cgd NULL,
593 1.1 cgd };
594 1.1 cgd
595 1.1 cgd int vop_blkatoff_vp_offsets[] = {
596 1.1 cgd VOPARG_OFFSETOF(struct vop_blkatoff_args,a_vp),
597 1.1 cgd VDESC_NO_OFFSET
598 1.1 cgd };
599 1.1 cgd struct vnodeop_desc vop_blkatoff_desc = {
600 1.1 cgd 0,
601 1.1 cgd "vop_blkatoff",
602 1.1 cgd 0,
603 1.1 cgd vop_blkatoff_vp_offsets,
604 1.1 cgd VDESC_NO_OFFSET,
605 1.1 cgd VDESC_NO_OFFSET,
606 1.1 cgd VDESC_NO_OFFSET,
607 1.1 cgd VDESC_NO_OFFSET,
608 1.1 cgd NULL,
609 1.1 cgd };
610 1.1 cgd
611 1.1 cgd int vop_valloc_vp_offsets[] = {
612 1.1 cgd VOPARG_OFFSETOF(struct vop_valloc_args,a_pvp),
613 1.1 cgd VDESC_NO_OFFSET
614 1.1 cgd };
615 1.1 cgd struct vnodeop_desc vop_valloc_desc = {
616 1.1 cgd 0,
617 1.1 cgd "vop_valloc",
618 1.1 cgd 0,
619 1.1 cgd vop_valloc_vp_offsets,
620 1.1 cgd VOPARG_OFFSETOF(struct vop_valloc_args, a_vpp),
621 1.1 cgd VOPARG_OFFSETOF(struct vop_valloc_args, a_cred),
622 1.1 cgd VDESC_NO_OFFSET,
623 1.1 cgd VDESC_NO_OFFSET,
624 1.1 cgd NULL,
625 1.1 cgd };
626 1.1 cgd
627 1.1 cgd int vop_reallocblks_vp_offsets[] = {
628 1.1 cgd VOPARG_OFFSETOF(struct vop_reallocblks_args,a_vp),
629 1.1 cgd VDESC_NO_OFFSET
630 1.1 cgd };
631 1.1 cgd struct vnodeop_desc vop_reallocblks_desc = {
632 1.1 cgd 0,
633 1.1 cgd "vop_reallocblks",
634 1.1 cgd 0,
635 1.1 cgd vop_reallocblks_vp_offsets,
636 1.1 cgd VDESC_NO_OFFSET,
637 1.1 cgd VDESC_NO_OFFSET,
638 1.1 cgd VDESC_NO_OFFSET,
639 1.1 cgd VDESC_NO_OFFSET,
640 1.1 cgd NULL,
641 1.1 cgd };
642 1.1 cgd
643 1.1 cgd int vop_vfree_vp_offsets[] = {
644 1.1 cgd VOPARG_OFFSETOF(struct vop_vfree_args,a_pvp),
645 1.1 cgd VDESC_NO_OFFSET
646 1.1 cgd };
647 1.1 cgd struct vnodeop_desc vop_vfree_desc = {
648 1.1 cgd 0,
649 1.1 cgd "vop_vfree",
650 1.1 cgd 0,
651 1.1 cgd vop_vfree_vp_offsets,
652 1.1 cgd VDESC_NO_OFFSET,
653 1.1 cgd VDESC_NO_OFFSET,
654 1.1 cgd VDESC_NO_OFFSET,
655 1.1 cgd VDESC_NO_OFFSET,
656 1.1 cgd NULL,
657 1.1 cgd };
658 1.1 cgd
659 1.1 cgd int vop_truncate_vp_offsets[] = {
660 1.1 cgd VOPARG_OFFSETOF(struct vop_truncate_args,a_vp),
661 1.1 cgd VDESC_NO_OFFSET
662 1.1 cgd };
663 1.1 cgd struct vnodeop_desc vop_truncate_desc = {
664 1.1 cgd 0,
665 1.1 cgd "vop_truncate",
666 1.1 cgd 0,
667 1.1 cgd vop_truncate_vp_offsets,
668 1.1 cgd VDESC_NO_OFFSET,
669 1.1 cgd VOPARG_OFFSETOF(struct vop_truncate_args, a_cred),
670 1.1 cgd VOPARG_OFFSETOF(struct vop_truncate_args, a_p),
671 1.1 cgd VDESC_NO_OFFSET,
672 1.1 cgd NULL,
673 1.1 cgd };
674 1.1 cgd
675 1.1 cgd int vop_update_vp_offsets[] = {
676 1.1 cgd VOPARG_OFFSETOF(struct vop_update_args,a_vp),
677 1.1 cgd VDESC_NO_OFFSET
678 1.1 cgd };
679 1.1 cgd struct vnodeop_desc vop_update_desc = {
680 1.1 cgd 0,
681 1.1 cgd "vop_update",
682 1.1 cgd 0,
683 1.1 cgd vop_update_vp_offsets,
684 1.1 cgd VDESC_NO_OFFSET,
685 1.1 cgd VDESC_NO_OFFSET,
686 1.1 cgd VDESC_NO_OFFSET,
687 1.1 cgd VDESC_NO_OFFSET,
688 1.1 cgd NULL,
689 1.1 cgd };
690 1.1 cgd
691 1.1 cgd int vop_lease_vp_offsets[] = {
692 1.1 cgd VOPARG_OFFSETOF(struct vop_lease_args,a_vp),
693 1.1 cgd VDESC_NO_OFFSET
694 1.1 cgd };
695 1.1 cgd struct vnodeop_desc vop_lease_desc = {
696 1.1 cgd 0,
697 1.1 cgd "vop_lease",
698 1.1 cgd 0,
699 1.1 cgd vop_lease_vp_offsets,
700 1.1 cgd VDESC_NO_OFFSET,
701 1.1 cgd VOPARG_OFFSETOF(struct vop_lease_args, a_cred),
702 1.1 cgd VOPARG_OFFSETOF(struct vop_lease_args, a_p),
703 1.1 cgd VDESC_NO_OFFSET,
704 1.1 cgd NULL,
705 1.1 cgd };
706 1.1 cgd
707 1.1 cgd int vop_whiteout_vp_offsets[] = {
708 1.1 cgd VOPARG_OFFSETOF(struct vop_whiteout_args,a_dvp),
709 1.1 cgd VDESC_NO_OFFSET
710 1.1 cgd };
711 1.1 cgd struct vnodeop_desc vop_whiteout_desc = {
712 1.1 cgd 0,
713 1.1 cgd "vop_whiteout",
714 1.1 cgd 0,
715 1.1 cgd vop_whiteout_vp_offsets,
716 1.1 cgd VDESC_NO_OFFSET,
717 1.1 cgd VDESC_NO_OFFSET,
718 1.1 cgd VDESC_NO_OFFSET,
719 1.1 cgd VOPARG_OFFSETOF(struct vop_whiteout_args, a_cnp),
720 1.1 cgd NULL,
721 1.1 cgd };
722 1.1 cgd
723 1.1 cgd /* Special cases: */
724 1.1 cgd
725 1.1 cgd int vop_strategy_vp_offsets[] = {
726 1.1 cgd VDESC_NO_OFFSET
727 1.1 cgd };
728 1.1 cgd struct vnodeop_desc vop_strategy_desc = {
729 1.1 cgd 0,
730 1.1 cgd "vop_strategy",
731 1.1 cgd 0,
732 1.1 cgd vop_strategy_vp_offsets,
733 1.1 cgd VDESC_NO_OFFSET,
734 1.1 cgd VDESC_NO_OFFSET,
735 1.1 cgd VDESC_NO_OFFSET,
736 1.1 cgd VDESC_NO_OFFSET,
737 1.1 cgd NULL,
738 1.1 cgd };
739 1.1 cgd
740 1.1 cgd int vop_bwrite_vp_offsets[] = {
741 1.1 cgd VDESC_NO_OFFSET
742 1.1 cgd };
743 1.1 cgd struct vnodeop_desc vop_bwrite_desc = {
744 1.1 cgd 0,
745 1.1 cgd "vop_bwrite",
746 1.1 cgd 0,
747 1.1 cgd vop_bwrite_vp_offsets,
748 1.1 cgd VDESC_NO_OFFSET,
749 1.1 cgd VDESC_NO_OFFSET,
750 1.1 cgd VDESC_NO_OFFSET,
751 1.1 cgd VDESC_NO_OFFSET,
752 1.1 cgd NULL,
753 1.1 cgd };
754 1.1 cgd
755 1.1 cgd /* End of special cases. */
756 1.1 cgd
757 1.1 cgd struct vnodeop_desc *vfs_op_descs[] = {
758 1.1 cgd &vop_default_desc, /* MUST BE FIRST */
759 1.1 cgd &vop_strategy_desc, /* XXX: SPECIAL CASE */
760 1.1 cgd &vop_bwrite_desc, /* XXX: SPECIAL CASE */
761 1.1 cgd
762 1.1 cgd &vop_lookup_desc,
763 1.1 cgd &vop_create_desc,
764 1.1 cgd &vop_mknod_desc,
765 1.1 cgd &vop_open_desc,
766 1.1 cgd &vop_close_desc,
767 1.1 cgd &vop_access_desc,
768 1.1 cgd &vop_getattr_desc,
769 1.1 cgd &vop_setattr_desc,
770 1.1 cgd &vop_read_desc,
771 1.1 cgd &vop_write_desc,
772 1.1 cgd &vop_ioctl_desc,
773 1.1 cgd &vop_select_desc,
774 1.1 cgd &vop_mmap_desc,
775 1.1 cgd &vop_fsync_desc,
776 1.1 cgd &vop_seek_desc,
777 1.1 cgd &vop_remove_desc,
778 1.1 cgd &vop_link_desc,
779 1.1 cgd &vop_rename_desc,
780 1.1 cgd &vop_mkdir_desc,
781 1.1 cgd &vop_rmdir_desc,
782 1.1 cgd &vop_symlink_desc,
783 1.1 cgd &vop_readdir_desc,
784 1.1 cgd &vop_readlink_desc,
785 1.1 cgd &vop_abortop_desc,
786 1.1 cgd &vop_inactive_desc,
787 1.1 cgd &vop_reclaim_desc,
788 1.1 cgd &vop_lock_desc,
789 1.1 cgd &vop_unlock_desc,
790 1.1 cgd &vop_bmap_desc,
791 1.1 cgd &vop_print_desc,
792 1.1 cgd &vop_islocked_desc,
793 1.1 cgd &vop_pathconf_desc,
794 1.1 cgd &vop_advlock_desc,
795 1.1 cgd &vop_blkatoff_desc,
796 1.1 cgd &vop_valloc_desc,
797 1.1 cgd &vop_reallocblks_desc,
798 1.1 cgd &vop_vfree_desc,
799 1.1 cgd &vop_truncate_desc,
800 1.1 cgd &vop_update_desc,
801 1.1 cgd &vop_lease_desc,
802 1.1 cgd &vop_whiteout_desc,
803 1.1 cgd NULL
804 1.1 cgd };
805 1.1 cgd
806