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