xref: /xnu-11215.61.5/bsd/vfs/vnode_if.c (revision 4f1223e81cd707a65cc109d0b8ad6653699da3c4)
1*4f1223e8SApple OSS Distributions /*
2*4f1223e8SApple OSS Distributions  * Copyright (c) 2000-2019 Apple Inc. All rights reserved.
3*4f1223e8SApple OSS Distributions  *
4*4f1223e8SApple OSS Distributions  * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
5*4f1223e8SApple OSS Distributions  *
6*4f1223e8SApple OSS Distributions  * This file contains Original Code and/or Modifications of Original Code
7*4f1223e8SApple OSS Distributions  * as defined in and that are subject to the Apple Public Source License
8*4f1223e8SApple OSS Distributions  * Version 2.0 (the 'License'). You may not use this file except in
9*4f1223e8SApple OSS Distributions  * compliance with the License. The rights granted to you under the License
10*4f1223e8SApple OSS Distributions  * may not be used to create, or enable the creation or redistribution of,
11*4f1223e8SApple OSS Distributions  * unlawful or unlicensed copies of an Apple operating system, or to
12*4f1223e8SApple OSS Distributions  * circumvent, violate, or enable the circumvention or violation of, any
13*4f1223e8SApple OSS Distributions  * terms of an Apple operating system software license agreement.
14*4f1223e8SApple OSS Distributions  *
15*4f1223e8SApple OSS Distributions  * Please obtain a copy of the License at
16*4f1223e8SApple OSS Distributions  * http://www.opensource.apple.com/apsl/ and read it before using this file.
17*4f1223e8SApple OSS Distributions  *
18*4f1223e8SApple OSS Distributions  * The Original Code and all software distributed under the License are
19*4f1223e8SApple OSS Distributions  * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
20*4f1223e8SApple OSS Distributions  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
21*4f1223e8SApple OSS Distributions  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
22*4f1223e8SApple OSS Distributions  * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
23*4f1223e8SApple OSS Distributions  * Please see the License for the specific language governing rights and
24*4f1223e8SApple OSS Distributions  * limitations under the License.
25*4f1223e8SApple OSS Distributions  *
26*4f1223e8SApple OSS Distributions  * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
27*4f1223e8SApple OSS Distributions  */
28*4f1223e8SApple OSS Distributions /*
29*4f1223e8SApple OSS Distributions  * Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved
30*4f1223e8SApple OSS Distributions  * Copyright (c) 1992, 1993, 1994, 1995
31*4f1223e8SApple OSS Distributions  *	The Regents of the University of California.  All rights reserved.
32*4f1223e8SApple OSS Distributions  *
33*4f1223e8SApple OSS Distributions  * Redistribution and use in source and binary forms, with or without
34*4f1223e8SApple OSS Distributions  * modification, are permitted provided that the following conditions
35*4f1223e8SApple OSS Distributions  * are met:
36*4f1223e8SApple OSS Distributions  * 1. Redistributions of source code must retain the above copyright
37*4f1223e8SApple OSS Distributions  *    notice, this list of conditions and the following disclaimer.
38*4f1223e8SApple OSS Distributions  * 2. Redistributions in binary form must reproduce the above copyright
39*4f1223e8SApple OSS Distributions  *    notice, this list of conditions and the following disclaimer in the
40*4f1223e8SApple OSS Distributions  *    documentation and/or other materials provided with the distribution.
41*4f1223e8SApple OSS Distributions  * 3. All advertising materials mentioning features or use of this software
42*4f1223e8SApple OSS Distributions  *    must display the following acknowledgement:
43*4f1223e8SApple OSS Distributions  *      This product includes software developed by the University of
44*4f1223e8SApple OSS Distributions  *      California, Berkeley and its contributors.
45*4f1223e8SApple OSS Distributions  * 4. Neither the name of the University nor the names of its contributors
46*4f1223e8SApple OSS Distributions  *    may be used to endorse or promote products derived from this software
47*4f1223e8SApple OSS Distributions  *    without specific prior written permission.
48*4f1223e8SApple OSS Distributions  *
49*4f1223e8SApple OSS Distributions  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS AND
50*4f1223e8SApple OSS Distributions  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
51*4f1223e8SApple OSS Distributions  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
52*4f1223e8SApple OSS Distributions  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
53*4f1223e8SApple OSS Distributions  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
54*4f1223e8SApple OSS Distributions  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
55*4f1223e8SApple OSS Distributions  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
56*4f1223e8SApple OSS Distributions  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
57*4f1223e8SApple OSS Distributions  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
58*4f1223e8SApple OSS Distributions  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
59*4f1223e8SApple OSS Distributions  * SUCH DAMAGE.
60*4f1223e8SApple OSS Distributions  */
61*4f1223e8SApple OSS Distributions 
62*4f1223e8SApple OSS Distributions 
63*4f1223e8SApple OSS Distributions /*
64*4f1223e8SApple OSS Distributions  * Warning: This file is generated automatically.
65*4f1223e8SApple OSS Distributions  * (Modifications made here may easily be lost!)
66*4f1223e8SApple OSS Distributions  *
67*4f1223e8SApple OSS Distributions  * Created by the script:
68*4f1223e8SApple OSS Distributions  *	@(#)vnode_if.sh	8.7 (Berkeley) 5/11/95
69*4f1223e8SApple OSS Distributions  */
70*4f1223e8SApple OSS Distributions 
71*4f1223e8SApple OSS Distributions 
72*4f1223e8SApple OSS Distributions #include <sys/param.h>
73*4f1223e8SApple OSS Distributions #include <sys/mount_internal.h>
74*4f1223e8SApple OSS Distributions #include <sys/vm.h>
75*4f1223e8SApple OSS Distributions #include <sys/vnode_internal.h>
76*4f1223e8SApple OSS Distributions 
77*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_default_desc = {
78*4f1223e8SApple OSS Distributions 	0,
79*4f1223e8SApple OSS Distributions 	"default",
80*4f1223e8SApple OSS Distributions 	0,
81*4f1223e8SApple OSS Distributions 	NULL,
82*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
83*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
84*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
85*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
86*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
87*4f1223e8SApple OSS Distributions 	NULL
88*4f1223e8SApple OSS Distributions };
89*4f1223e8SApple OSS Distributions 
90*4f1223e8SApple OSS Distributions 
91*4f1223e8SApple OSS Distributions int vnop_lookup_vp_offsets[] = {
92*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_lookup_args, a_dvp),
93*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
94*4f1223e8SApple OSS Distributions };
95*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_lookup_desc = {
96*4f1223e8SApple OSS Distributions 	0,
97*4f1223e8SApple OSS Distributions 	"vnop_lookup",
98*4f1223e8SApple OSS Distributions 	0,
99*4f1223e8SApple OSS Distributions 	vnop_lookup_vp_offsets,
100*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_lookup_args, a_vpp),
101*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
102*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
103*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_lookup_args, a_cnp),
104*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_lookup_args, a_context),
105*4f1223e8SApple OSS Distributions 	NULL
106*4f1223e8SApple OSS Distributions };
107*4f1223e8SApple OSS Distributions 
108*4f1223e8SApple OSS Distributions int vnop_compound_open_vp_offsets[] = {
109*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_open_args, a_dvp),
110*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
111*4f1223e8SApple OSS Distributions };
112*4f1223e8SApple OSS Distributions 
113*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_compound_open_desc = {
114*4f1223e8SApple OSS Distributions 	0,
115*4f1223e8SApple OSS Distributions 	"vnop_compound_open",
116*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE,
117*4f1223e8SApple OSS Distributions 	vnop_compound_open_vp_offsets,
118*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_open_args, a_vpp),
119*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
120*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
121*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_open_args, a_cnp),
122*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_open_args, a_context),
123*4f1223e8SApple OSS Distributions 	NULL
124*4f1223e8SApple OSS Distributions };
125*4f1223e8SApple OSS Distributions 
126*4f1223e8SApple OSS Distributions int vnop_create_vp_offsets[] = {
127*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_create_args, a_dvp),
128*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
129*4f1223e8SApple OSS Distributions };
130*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_create_desc = {
131*4f1223e8SApple OSS Distributions 	0,
132*4f1223e8SApple OSS Distributions 	"vnop_create",
133*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE,
134*4f1223e8SApple OSS Distributions 	vnop_create_vp_offsets,
135*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_create_args, a_vpp),
136*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
137*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
138*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_create_args, a_cnp),
139*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_create_args, a_context),
140*4f1223e8SApple OSS Distributions 	NULL
141*4f1223e8SApple OSS Distributions };
142*4f1223e8SApple OSS Distributions 
143*4f1223e8SApple OSS Distributions int vnop_whiteout_vp_offsets[] = {
144*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_whiteout_args, a_dvp),
145*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
146*4f1223e8SApple OSS Distributions };
147*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_whiteout_desc = {
148*4f1223e8SApple OSS Distributions 	0,
149*4f1223e8SApple OSS Distributions 	"vnop_whiteout",
150*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE,
151*4f1223e8SApple OSS Distributions 	vnop_whiteout_vp_offsets,
152*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
153*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
154*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
155*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_whiteout_args, a_cnp),
156*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_whiteout_args, a_context),
157*4f1223e8SApple OSS Distributions 	NULL
158*4f1223e8SApple OSS Distributions };
159*4f1223e8SApple OSS Distributions 
160*4f1223e8SApple OSS Distributions int vnop_mknod_vp_offsets[] = {
161*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mknod_args, a_dvp),
162*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
163*4f1223e8SApple OSS Distributions };
164*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_mknod_desc = {
165*4f1223e8SApple OSS Distributions 	0,
166*4f1223e8SApple OSS Distributions 	"vnop_mknod",
167*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE | VDESC_VPP_WILLRELE,
168*4f1223e8SApple OSS Distributions 	vnop_mknod_vp_offsets,
169*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mknod_args, a_vpp),
170*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
171*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
172*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mknod_args, a_cnp),
173*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mknod_args, a_context),
174*4f1223e8SApple OSS Distributions 	NULL
175*4f1223e8SApple OSS Distributions };
176*4f1223e8SApple OSS Distributions 
177*4f1223e8SApple OSS Distributions int vnop_open_vp_offsets[] = {
178*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_open_args, a_vp),
179*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
180*4f1223e8SApple OSS Distributions };
181*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_open_desc = {
182*4f1223e8SApple OSS Distributions 	0,
183*4f1223e8SApple OSS Distributions 	"vnop_open",
184*4f1223e8SApple OSS Distributions 	0,
185*4f1223e8SApple OSS Distributions 	vnop_open_vp_offsets,
186*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
187*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
188*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
189*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
190*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_open_args, a_context),
191*4f1223e8SApple OSS Distributions 	NULL
192*4f1223e8SApple OSS Distributions };
193*4f1223e8SApple OSS Distributions 
194*4f1223e8SApple OSS Distributions int vnop_close_vp_offsets[] = {
195*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_close_args, a_vp),
196*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
197*4f1223e8SApple OSS Distributions };
198*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_close_desc = {
199*4f1223e8SApple OSS Distributions 	0,
200*4f1223e8SApple OSS Distributions 	"vnop_close",
201*4f1223e8SApple OSS Distributions 	0,
202*4f1223e8SApple OSS Distributions 	vnop_close_vp_offsets,
203*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
204*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
205*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
206*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
207*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_close_args, a_context),
208*4f1223e8SApple OSS Distributions 	NULL
209*4f1223e8SApple OSS Distributions };
210*4f1223e8SApple OSS Distributions 
211*4f1223e8SApple OSS Distributions int vnop_access_vp_offsets[] = {
212*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_access_args, a_vp),
213*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
214*4f1223e8SApple OSS Distributions };
215*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_access_desc = {
216*4f1223e8SApple OSS Distributions 	0,
217*4f1223e8SApple OSS Distributions 	"vnop_access",
218*4f1223e8SApple OSS Distributions 	0,
219*4f1223e8SApple OSS Distributions 	vnop_access_vp_offsets,
220*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
221*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
222*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
223*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
224*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_close_args, a_context),
225*4f1223e8SApple OSS Distributions 	NULL
226*4f1223e8SApple OSS Distributions };
227*4f1223e8SApple OSS Distributions 
228*4f1223e8SApple OSS Distributions int vnop_getattr_vp_offsets[] = {
229*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_getattr_args, a_vp),
230*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
231*4f1223e8SApple OSS Distributions };
232*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_getattr_desc = {
233*4f1223e8SApple OSS Distributions 	0,
234*4f1223e8SApple OSS Distributions 	"vnop_getattr",
235*4f1223e8SApple OSS Distributions 	0,
236*4f1223e8SApple OSS Distributions 	vnop_getattr_vp_offsets,
237*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
238*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
239*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
240*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
241*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_getattr_args, a_context),
242*4f1223e8SApple OSS Distributions 	NULL
243*4f1223e8SApple OSS Distributions };
244*4f1223e8SApple OSS Distributions 
245*4f1223e8SApple OSS Distributions int vnop_setattr_vp_offsets[] = {
246*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_setattr_args, a_vp),
247*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
248*4f1223e8SApple OSS Distributions };
249*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_setattr_desc = {
250*4f1223e8SApple OSS Distributions 	0,
251*4f1223e8SApple OSS Distributions 	"vnop_setattr",
252*4f1223e8SApple OSS Distributions 	0,
253*4f1223e8SApple OSS Distributions 	vnop_setattr_vp_offsets,
254*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
255*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
256*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
257*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
258*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_setattr_args, a_context),
259*4f1223e8SApple OSS Distributions 	NULL
260*4f1223e8SApple OSS Distributions };
261*4f1223e8SApple OSS Distributions 
262*4f1223e8SApple OSS Distributions int vnop_read_vp_offsets[] = {
263*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_read_args, a_vp),
264*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
265*4f1223e8SApple OSS Distributions };
266*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_read_desc = {
267*4f1223e8SApple OSS Distributions 	0,
268*4f1223e8SApple OSS Distributions 	"vnop_read",
269*4f1223e8SApple OSS Distributions 	0,
270*4f1223e8SApple OSS Distributions 	vnop_read_vp_offsets,
271*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
272*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
273*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
274*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
275*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_read_args, a_context),
276*4f1223e8SApple OSS Distributions 	NULL
277*4f1223e8SApple OSS Distributions };
278*4f1223e8SApple OSS Distributions 
279*4f1223e8SApple OSS Distributions int vnop_write_vp_offsets[] = {
280*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_write_args, a_vp),
281*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
282*4f1223e8SApple OSS Distributions };
283*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_write_desc = {
284*4f1223e8SApple OSS Distributions 	0,
285*4f1223e8SApple OSS Distributions 	"vnop_write",
286*4f1223e8SApple OSS Distributions 	0,
287*4f1223e8SApple OSS Distributions 	vnop_write_vp_offsets,
288*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
289*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
290*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
291*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
292*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_write_args, a_context),
293*4f1223e8SApple OSS Distributions 	NULL
294*4f1223e8SApple OSS Distributions };
295*4f1223e8SApple OSS Distributions 
296*4f1223e8SApple OSS Distributions int vnop_ioctl_vp_offsets[] = {
297*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_ioctl_args, a_vp),
298*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
299*4f1223e8SApple OSS Distributions };
300*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_ioctl_desc = {
301*4f1223e8SApple OSS Distributions 	0,
302*4f1223e8SApple OSS Distributions 	"vnop_ioctl",
303*4f1223e8SApple OSS Distributions 	0,
304*4f1223e8SApple OSS Distributions 	vnop_ioctl_vp_offsets,
305*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
306*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
307*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
308*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
309*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_ioctl_args, a_context),
310*4f1223e8SApple OSS Distributions 	NULL
311*4f1223e8SApple OSS Distributions };
312*4f1223e8SApple OSS Distributions 
313*4f1223e8SApple OSS Distributions int vnop_select_vp_offsets[] = {
314*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_select_args, a_vp),
315*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
316*4f1223e8SApple OSS Distributions };
317*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_select_desc = {
318*4f1223e8SApple OSS Distributions 	0,
319*4f1223e8SApple OSS Distributions 	"vnop_select",
320*4f1223e8SApple OSS Distributions 	0,
321*4f1223e8SApple OSS Distributions 	vnop_select_vp_offsets,
322*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
323*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
324*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
325*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
326*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_select_args, a_context),
327*4f1223e8SApple OSS Distributions 	NULL
328*4f1223e8SApple OSS Distributions };
329*4f1223e8SApple OSS Distributions 
330*4f1223e8SApple OSS Distributions int vnop_exchange_vp_offsets[] = {
331*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_exchange_args, a_fvp),
332*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_exchange_args, a_tvp),
333*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
334*4f1223e8SApple OSS Distributions };
335*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_exchange_desc = {
336*4f1223e8SApple OSS Distributions 	0,
337*4f1223e8SApple OSS Distributions 	"vnop_exchange",
338*4f1223e8SApple OSS Distributions 	0,
339*4f1223e8SApple OSS Distributions 	vnop_exchange_vp_offsets,
340*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
341*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
342*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
343*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
344*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_exchange_args, a_context),
345*4f1223e8SApple OSS Distributions 	NULL
346*4f1223e8SApple OSS Distributions };
347*4f1223e8SApple OSS Distributions 
348*4f1223e8SApple OSS Distributions int vnop_kqfilt_add_vp_offsets[] = {
349*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_kqfilt_add_args, a_vp),
350*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
351*4f1223e8SApple OSS Distributions };
352*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_kqfilt_add_desc = {
353*4f1223e8SApple OSS Distributions 	0,
354*4f1223e8SApple OSS Distributions 	"vnop_kqfilt_add",
355*4f1223e8SApple OSS Distributions 	0,
356*4f1223e8SApple OSS Distributions 	vnop_kqfilt_add_vp_offsets,
357*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
358*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
359*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
360*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
361*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_kqfilt_add_args, a_context),
362*4f1223e8SApple OSS Distributions 	NULL
363*4f1223e8SApple OSS Distributions };
364*4f1223e8SApple OSS Distributions 
365*4f1223e8SApple OSS Distributions int vnop_kqfilt_remove_vp_offsets[] = {
366*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_kqfilt_remove_args, a_vp),
367*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
368*4f1223e8SApple OSS Distributions };
369*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_kqfilt_remove_desc = {
370*4f1223e8SApple OSS Distributions 	0,
371*4f1223e8SApple OSS Distributions 	"vnop_kqfilt_remove",
372*4f1223e8SApple OSS Distributions 	0,
373*4f1223e8SApple OSS Distributions 	vnop_kqfilt_remove_vp_offsets,
374*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
375*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
376*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
377*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
378*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_kqfilt_remove_args, a_context),
379*4f1223e8SApple OSS Distributions 	NULL
380*4f1223e8SApple OSS Distributions };
381*4f1223e8SApple OSS Distributions 
382*4f1223e8SApple OSS Distributions int vnop_monitor_vp_offsets[] = {
383*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_monitor_args, a_vp),
384*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
385*4f1223e8SApple OSS Distributions };
386*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_monitor_desc = {
387*4f1223e8SApple OSS Distributions 	0,
388*4f1223e8SApple OSS Distributions 	"vnop_monitor",
389*4f1223e8SApple OSS Distributions 	0,
390*4f1223e8SApple OSS Distributions 	vnop_monitor_vp_offsets,
391*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
392*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
393*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
394*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
395*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_monitor_args, a_context),
396*4f1223e8SApple OSS Distributions 	NULL
397*4f1223e8SApple OSS Distributions };
398*4f1223e8SApple OSS Distributions 
399*4f1223e8SApple OSS Distributions int vnop_setlabel_vp_offsets[] = {
400*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_setlabel_args, a_vp),
401*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
402*4f1223e8SApple OSS Distributions };
403*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_setlabel_desc = {
404*4f1223e8SApple OSS Distributions 	0,
405*4f1223e8SApple OSS Distributions 	"vnop_setlabel",
406*4f1223e8SApple OSS Distributions 	0,
407*4f1223e8SApple OSS Distributions 	vnop_setlabel_vp_offsets,
408*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
409*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
410*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
411*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
412*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_setlabel_args, a_context),
413*4f1223e8SApple OSS Distributions 	NULL,
414*4f1223e8SApple OSS Distributions };
415*4f1223e8SApple OSS Distributions 
416*4f1223e8SApple OSS Distributions int vnop_revoke_vp_offsets[] = {
417*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_revoke_args, a_vp),
418*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
419*4f1223e8SApple OSS Distributions };
420*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_revoke_desc = {
421*4f1223e8SApple OSS Distributions 	0,
422*4f1223e8SApple OSS Distributions 	"vnop_revoke",
423*4f1223e8SApple OSS Distributions 	0,
424*4f1223e8SApple OSS Distributions 	vnop_revoke_vp_offsets,
425*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
426*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
427*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
428*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
429*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
430*4f1223e8SApple OSS Distributions 	NULL
431*4f1223e8SApple OSS Distributions };
432*4f1223e8SApple OSS Distributions 
433*4f1223e8SApple OSS Distributions int vnop_mmap_check_vp_offsets[] = {
434*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mmap_check_args, a_vp),
435*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
436*4f1223e8SApple OSS Distributions };
437*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_mmap_check_desc = {
438*4f1223e8SApple OSS Distributions 	0,
439*4f1223e8SApple OSS Distributions 	"vnop_mmap_check",
440*4f1223e8SApple OSS Distributions 	0,
441*4f1223e8SApple OSS Distributions 	vnop_mmap_check_vp_offsets,
442*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
443*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
444*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
445*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
446*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
447*4f1223e8SApple OSS Distributions 	NULL
448*4f1223e8SApple OSS Distributions };
449*4f1223e8SApple OSS Distributions 
450*4f1223e8SApple OSS Distributions int vnop_mmap_vp_offsets[] = {
451*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mmap_args, a_vp),
452*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
453*4f1223e8SApple OSS Distributions };
454*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_mmap_desc = {
455*4f1223e8SApple OSS Distributions 	0,
456*4f1223e8SApple OSS Distributions 	"vnop_mmap",
457*4f1223e8SApple OSS Distributions 	0,
458*4f1223e8SApple OSS Distributions 	vnop_mmap_vp_offsets,
459*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
460*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
461*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
462*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
463*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
464*4f1223e8SApple OSS Distributions 	NULL
465*4f1223e8SApple OSS Distributions };
466*4f1223e8SApple OSS Distributions 
467*4f1223e8SApple OSS Distributions int vnop_mnomap_vp_offsets[] = {
468*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mnomap_args, a_vp),
469*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
470*4f1223e8SApple OSS Distributions };
471*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_mnomap_desc = {
472*4f1223e8SApple OSS Distributions 	0,
473*4f1223e8SApple OSS Distributions 	"vnop_mnomap",
474*4f1223e8SApple OSS Distributions 	0,
475*4f1223e8SApple OSS Distributions 	vnop_mnomap_vp_offsets,
476*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
477*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
478*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
479*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
480*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
481*4f1223e8SApple OSS Distributions 	NULL
482*4f1223e8SApple OSS Distributions };
483*4f1223e8SApple OSS Distributions 
484*4f1223e8SApple OSS Distributions int vnop_fsync_vp_offsets[] = {
485*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_fsync_args, a_vp),
486*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
487*4f1223e8SApple OSS Distributions };
488*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_fsync_desc = {
489*4f1223e8SApple OSS Distributions 	0,
490*4f1223e8SApple OSS Distributions 	"vnop_fsync",
491*4f1223e8SApple OSS Distributions 	0,
492*4f1223e8SApple OSS Distributions 	vnop_fsync_vp_offsets,
493*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
494*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
495*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
496*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
497*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_fsync_args, a_context),
498*4f1223e8SApple OSS Distributions 	NULL
499*4f1223e8SApple OSS Distributions };
500*4f1223e8SApple OSS Distributions 
501*4f1223e8SApple OSS Distributions int vnop_remove_vp_offsets[] = {
502*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_remove_args, a_dvp),
503*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_remove_args, a_vp),
504*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
505*4f1223e8SApple OSS Distributions };
506*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_remove_desc = {
507*4f1223e8SApple OSS Distributions 	0,
508*4f1223e8SApple OSS Distributions 	"vnop_remove",
509*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE,
510*4f1223e8SApple OSS Distributions 	vnop_remove_vp_offsets,
511*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
512*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
513*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
514*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_remove_args, a_cnp),
515*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_remove_args, a_context),
516*4f1223e8SApple OSS Distributions 	NULL
517*4f1223e8SApple OSS Distributions };
518*4f1223e8SApple OSS Distributions 
519*4f1223e8SApple OSS Distributions int vnop_remove_extended_vp_offsets[] = {
520*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_remove_args, a_dvp),
521*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
522*4f1223e8SApple OSS Distributions };
523*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_compound_remove_desc = {
524*4f1223e8SApple OSS Distributions 	0,
525*4f1223e8SApple OSS Distributions 	"vnop_compound_remove",
526*4f1223e8SApple OSS Distributions 	0,
527*4f1223e8SApple OSS Distributions 	vnop_remove_vp_offsets,
528*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_remove_args, a_vpp),
529*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
530*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
531*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_remove_args, a_cnp),
532*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_remove_args, a_context),
533*4f1223e8SApple OSS Distributions 	NULL
534*4f1223e8SApple OSS Distributions };
535*4f1223e8SApple OSS Distributions 
536*4f1223e8SApple OSS Distributions int vnop_link_vp_offsets[] = {
537*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_link_args, a_vp),
538*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_link_args, a_tdvp),
539*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
540*4f1223e8SApple OSS Distributions };
541*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_link_desc = {
542*4f1223e8SApple OSS Distributions 	0,
543*4f1223e8SApple OSS Distributions 	"vnop_link",
544*4f1223e8SApple OSS Distributions 	0 | VDESC_VP1_WILLRELE,
545*4f1223e8SApple OSS Distributions 	vnop_link_vp_offsets,
546*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
547*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
548*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
549*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_link_args, a_cnp),
550*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_link_args, a_context),
551*4f1223e8SApple OSS Distributions 	NULL
552*4f1223e8SApple OSS Distributions };
553*4f1223e8SApple OSS Distributions 
554*4f1223e8SApple OSS Distributions int vnop_rename_vp_offsets[] = {
555*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_rename_args, a_fdvp),
556*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_rename_args, a_fvp),
557*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_rename_args, a_tdvp),
558*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_rename_args, a_tvp),
559*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
560*4f1223e8SApple OSS Distributions };
561*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_rename_desc = {
562*4f1223e8SApple OSS Distributions 	0,
563*4f1223e8SApple OSS Distributions 	"vnop_rename",
564*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE | VDESC_VP2_WILLRELE | VDESC_VP3_WILLRELE,
565*4f1223e8SApple OSS Distributions 	vnop_rename_vp_offsets,
566*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
567*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
568*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
569*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_rename_args, a_fcnp),
570*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_rename_args, a_context),
571*4f1223e8SApple OSS Distributions 	NULL
572*4f1223e8SApple OSS Distributions };
573*4f1223e8SApple OSS Distributions 
574*4f1223e8SApple OSS Distributions int vnop_renamex_vp_offsets[] = {
575*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_renamex_args, a_fdvp),
576*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_renamex_args, a_fvp),
577*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_renamex_args, a_tdvp),
578*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_renamex_args, a_tvp),
579*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
580*4f1223e8SApple OSS Distributions };
581*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_renamex_desc = {
582*4f1223e8SApple OSS Distributions 	0,
583*4f1223e8SApple OSS Distributions 	"vnop_renamex",
584*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE | VDESC_VP2_WILLRELE | VDESC_VP3_WILLRELE,
585*4f1223e8SApple OSS Distributions 	vnop_renamex_vp_offsets,
586*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
587*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
588*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
589*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_renamex_args, a_fcnp),
590*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_renamex_args, a_context),
591*4f1223e8SApple OSS Distributions 	NULL
592*4f1223e8SApple OSS Distributions };
593*4f1223e8SApple OSS Distributions 
594*4f1223e8SApple OSS Distributions int vnop_compound_rename_vp_offsets[] = {
595*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_rename_args, a_fdvp),
596*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_rename_args, a_fvpp),
597*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_rename_args, a_tdvp),
598*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_rename_args, a_tvpp),
599*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
600*4f1223e8SApple OSS Distributions };
601*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_compound_rename_desc = {
602*4f1223e8SApple OSS Distributions 	0,
603*4f1223e8SApple OSS Distributions 	"vnop_compound_rename",
604*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE | VDESC_VP2_WILLRELE | VDESC_VP3_WILLRELE,
605*4f1223e8SApple OSS Distributions 	vnop_compound_rename_vp_offsets,
606*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
607*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
608*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
609*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_rename_args, a_fcnp),
610*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_rename_args, a_context),
611*4f1223e8SApple OSS Distributions 	NULL
612*4f1223e8SApple OSS Distributions };
613*4f1223e8SApple OSS Distributions 
614*4f1223e8SApple OSS Distributions int vnop_mkdir_vp_offsets[] = {
615*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mkdir_args, a_dvp),
616*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
617*4f1223e8SApple OSS Distributions };
618*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_mkdir_desc = {
619*4f1223e8SApple OSS Distributions 	0,
620*4f1223e8SApple OSS Distributions 	"vnop_mkdir",
621*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE,
622*4f1223e8SApple OSS Distributions 	vnop_mkdir_vp_offsets,
623*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mkdir_args, a_vpp),
624*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
625*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
626*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mkdir_args, a_cnp),
627*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_mkdir_args, a_context),
628*4f1223e8SApple OSS Distributions 	NULL
629*4f1223e8SApple OSS Distributions };
630*4f1223e8SApple OSS Distributions 
631*4f1223e8SApple OSS Distributions int vnop_compound_mkdir_vp_offsets[] = {
632*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_mkdir_args, a_dvp),
633*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
634*4f1223e8SApple OSS Distributions };
635*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_compound_mkdir_desc = {
636*4f1223e8SApple OSS Distributions 	0,
637*4f1223e8SApple OSS Distributions 	"vnop_compound_mkdir",
638*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE,
639*4f1223e8SApple OSS Distributions 	vnop_compound_mkdir_vp_offsets,
640*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_mkdir_args, a_vpp),
641*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
642*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
643*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_mkdir_args, a_cnp),
644*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_mkdir_args, a_context),
645*4f1223e8SApple OSS Distributions 	NULL
646*4f1223e8SApple OSS Distributions };
647*4f1223e8SApple OSS Distributions 
648*4f1223e8SApple OSS Distributions 
649*4f1223e8SApple OSS Distributions int vnop_rmdir_vp_offsets[] = {
650*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_rmdir_args, a_dvp),
651*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_rmdir_args, a_vp),
652*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
653*4f1223e8SApple OSS Distributions };
654*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_rmdir_desc = {
655*4f1223e8SApple OSS Distributions 	0,
656*4f1223e8SApple OSS Distributions 	"vnop_rmdir",
657*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE,
658*4f1223e8SApple OSS Distributions 	vnop_rmdir_vp_offsets,
659*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
660*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
661*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
662*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_rmdir_args, a_cnp),
663*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_rmdir_args, a_context),
664*4f1223e8SApple OSS Distributions 	NULL
665*4f1223e8SApple OSS Distributions };
666*4f1223e8SApple OSS Distributions 
667*4f1223e8SApple OSS Distributions int vnop_compound_rmdir_vp_offsets[] = {
668*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_rmdir_args, a_dvp),
669*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
670*4f1223e8SApple OSS Distributions };
671*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_compound_rmdir_desc = {
672*4f1223e8SApple OSS Distributions 	0,
673*4f1223e8SApple OSS Distributions 	"vnop_compound_rmdir",
674*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE,
675*4f1223e8SApple OSS Distributions 	vnop_rmdir_vp_offsets,
676*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
677*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
678*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
679*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_rmdir_args, a_cnp),
680*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_compound_rmdir_args, a_context),
681*4f1223e8SApple OSS Distributions 	NULL
682*4f1223e8SApple OSS Distributions };
683*4f1223e8SApple OSS Distributions 
684*4f1223e8SApple OSS Distributions int vnop_symlink_vp_offsets[] = {
685*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_symlink_args, a_dvp),
686*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
687*4f1223e8SApple OSS Distributions };
688*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_symlink_desc = {
689*4f1223e8SApple OSS Distributions 	0,
690*4f1223e8SApple OSS Distributions 	"vnop_symlink",
691*4f1223e8SApple OSS Distributions 	0 | VDESC_VP0_WILLRELE | VDESC_VPP_WILLRELE,
692*4f1223e8SApple OSS Distributions 	vnop_symlink_vp_offsets,
693*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_symlink_args, a_vpp),
694*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
695*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
696*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_symlink_args, a_cnp),
697*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_symlink_args, a_context),
698*4f1223e8SApple OSS Distributions 	NULL
699*4f1223e8SApple OSS Distributions };
700*4f1223e8SApple OSS Distributions 
701*4f1223e8SApple OSS Distributions int vnop_readdir_vp_offsets[] = {
702*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_readdir_args, a_vp),
703*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
704*4f1223e8SApple OSS Distributions };
705*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_readdir_desc = {
706*4f1223e8SApple OSS Distributions 	0,
707*4f1223e8SApple OSS Distributions 	"vnop_readdir",
708*4f1223e8SApple OSS Distributions 	0,
709*4f1223e8SApple OSS Distributions 	vnop_readdir_vp_offsets,
710*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
711*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
712*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
713*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
714*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_readdir_args, a_context),
715*4f1223e8SApple OSS Distributions 	NULL
716*4f1223e8SApple OSS Distributions };
717*4f1223e8SApple OSS Distributions 
718*4f1223e8SApple OSS Distributions int vnop_readdirattr_vp_offsets[] = {
719*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_readdirattr_args, a_vp),
720*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
721*4f1223e8SApple OSS Distributions };
722*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_readdirattr_desc = {
723*4f1223e8SApple OSS Distributions 	0,
724*4f1223e8SApple OSS Distributions 	"vnop_readdirattr",
725*4f1223e8SApple OSS Distributions 	0,
726*4f1223e8SApple OSS Distributions 	vnop_readdirattr_vp_offsets,
727*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
728*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
729*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
730*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
731*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_readdirattr_args, a_context),
732*4f1223e8SApple OSS Distributions 	NULL
733*4f1223e8SApple OSS Distributions };
734*4f1223e8SApple OSS Distributions 
735*4f1223e8SApple OSS Distributions int vnop_getattrlistbulk_vp_offsets[] = {
736*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_getattrlistbulk_args, a_vp),
737*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
738*4f1223e8SApple OSS Distributions };
739*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_getattrlistbulk_desc = {
740*4f1223e8SApple OSS Distributions 	0,
741*4f1223e8SApple OSS Distributions 	"vnop_getattrlistbulk",
742*4f1223e8SApple OSS Distributions 	0,
743*4f1223e8SApple OSS Distributions 	vnop_getattrlistbulk_vp_offsets,
744*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
745*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
746*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
747*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
748*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_getattrlistbulk_args, a_context),
749*4f1223e8SApple OSS Distributions 	NULL
750*4f1223e8SApple OSS Distributions };
751*4f1223e8SApple OSS Distributions 
752*4f1223e8SApple OSS Distributions int vnop_readlink_vp_offsets[] = {
753*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_readlink_args, a_vp),
754*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
755*4f1223e8SApple OSS Distributions };
756*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_readlink_desc = {
757*4f1223e8SApple OSS Distributions 	0,
758*4f1223e8SApple OSS Distributions 	"vnop_readlink",
759*4f1223e8SApple OSS Distributions 	0,
760*4f1223e8SApple OSS Distributions 	vnop_readlink_vp_offsets,
761*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
762*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
763*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
764*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
765*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_readlink_args, a_context),
766*4f1223e8SApple OSS Distributions 	NULL
767*4f1223e8SApple OSS Distributions };
768*4f1223e8SApple OSS Distributions 
769*4f1223e8SApple OSS Distributions int vnop_inactive_vp_offsets[] = {
770*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_inactive_args, a_vp),
771*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
772*4f1223e8SApple OSS Distributions };
773*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_inactive_desc = {
774*4f1223e8SApple OSS Distributions 	0,
775*4f1223e8SApple OSS Distributions 	"vnop_inactive",
776*4f1223e8SApple OSS Distributions 	0,
777*4f1223e8SApple OSS Distributions 	vnop_inactive_vp_offsets,
778*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
779*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
780*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
781*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
782*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_inactive_args, a_context),
783*4f1223e8SApple OSS Distributions 	NULL
784*4f1223e8SApple OSS Distributions };
785*4f1223e8SApple OSS Distributions 
786*4f1223e8SApple OSS Distributions int vnop_reclaim_vp_offsets[] = {
787*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_reclaim_args, a_vp),
788*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
789*4f1223e8SApple OSS Distributions };
790*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_reclaim_desc = {
791*4f1223e8SApple OSS Distributions 	0,
792*4f1223e8SApple OSS Distributions 	"vnop_reclaim",
793*4f1223e8SApple OSS Distributions 	0,
794*4f1223e8SApple OSS Distributions 	vnop_reclaim_vp_offsets,
795*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
796*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
797*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
798*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
799*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_reclaim_args, a_context),
800*4f1223e8SApple OSS Distributions 	NULL
801*4f1223e8SApple OSS Distributions };
802*4f1223e8SApple OSS Distributions 
803*4f1223e8SApple OSS Distributions int vnop_pathconf_vp_offsets[] = {
804*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_pathconf_args, a_vp),
805*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
806*4f1223e8SApple OSS Distributions };
807*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_pathconf_desc = {
808*4f1223e8SApple OSS Distributions 	0,
809*4f1223e8SApple OSS Distributions 	"vnop_pathconf",
810*4f1223e8SApple OSS Distributions 	0,
811*4f1223e8SApple OSS Distributions 	vnop_pathconf_vp_offsets,
812*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
813*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
814*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
815*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
816*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_pathconf_args, a_context),
817*4f1223e8SApple OSS Distributions 	NULL
818*4f1223e8SApple OSS Distributions };
819*4f1223e8SApple OSS Distributions 
820*4f1223e8SApple OSS Distributions int vnop_advlock_vp_offsets[] = {
821*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_advlock_args, a_vp),
822*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
823*4f1223e8SApple OSS Distributions };
824*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_advlock_desc = {
825*4f1223e8SApple OSS Distributions 	0,
826*4f1223e8SApple OSS Distributions 	"vnop_advlock",
827*4f1223e8SApple OSS Distributions 	0,
828*4f1223e8SApple OSS Distributions 	vnop_advlock_vp_offsets,
829*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
830*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
831*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
832*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
833*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_advlock_args, a_context),
834*4f1223e8SApple OSS Distributions 	NULL
835*4f1223e8SApple OSS Distributions };
836*4f1223e8SApple OSS Distributions 
837*4f1223e8SApple OSS Distributions int vnop_allocate_vp_offsets[] = {
838*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_allocate_args, a_vp),
839*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
840*4f1223e8SApple OSS Distributions };
841*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_allocate_desc = {
842*4f1223e8SApple OSS Distributions 	0,
843*4f1223e8SApple OSS Distributions 	"vnop_allocate",
844*4f1223e8SApple OSS Distributions 	0,
845*4f1223e8SApple OSS Distributions 	vnop_allocate_vp_offsets,
846*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
847*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
848*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
849*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
850*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_allocate_args, a_context),
851*4f1223e8SApple OSS Distributions 	NULL
852*4f1223e8SApple OSS Distributions };
853*4f1223e8SApple OSS Distributions 
854*4f1223e8SApple OSS Distributions int vnop_pagein_vp_offsets[] = {
855*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_pagein_args, a_vp),
856*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
857*4f1223e8SApple OSS Distributions };
858*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_pagein_desc = {
859*4f1223e8SApple OSS Distributions 	0,
860*4f1223e8SApple OSS Distributions 	"vnop_pagein",
861*4f1223e8SApple OSS Distributions 	0,
862*4f1223e8SApple OSS Distributions 	vnop_pagein_vp_offsets,
863*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
864*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
865*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
866*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
867*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_pagein_args, a_context),
868*4f1223e8SApple OSS Distributions 	NULL
869*4f1223e8SApple OSS Distributions };
870*4f1223e8SApple OSS Distributions 
871*4f1223e8SApple OSS Distributions int vnop_pageout_vp_offsets[] = {
872*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_pageout_args, a_vp),
873*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
874*4f1223e8SApple OSS Distributions };
875*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_pageout_desc = {
876*4f1223e8SApple OSS Distributions 	0,
877*4f1223e8SApple OSS Distributions 	"vnop_pageout",
878*4f1223e8SApple OSS Distributions 	0,
879*4f1223e8SApple OSS Distributions 	vnop_pageout_vp_offsets,
880*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
881*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
882*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
883*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
884*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_pageout_args, a_context),
885*4f1223e8SApple OSS Distributions 	NULL
886*4f1223e8SApple OSS Distributions };
887*4f1223e8SApple OSS Distributions 
888*4f1223e8SApple OSS Distributions int vnop_searchfs_vp_offsets[] = {
889*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_searchfs_args, a_vp),
890*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
891*4f1223e8SApple OSS Distributions };
892*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_searchfs_desc = {
893*4f1223e8SApple OSS Distributions 	0,
894*4f1223e8SApple OSS Distributions 	"vnop_searchfs",
895*4f1223e8SApple OSS Distributions 	0,
896*4f1223e8SApple OSS Distributions 	vnop_searchfs_vp_offsets,
897*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
898*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
899*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
900*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
901*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
902*4f1223e8SApple OSS Distributions 	NULL
903*4f1223e8SApple OSS Distributions };
904*4f1223e8SApple OSS Distributions 
905*4f1223e8SApple OSS Distributions int vnop_copyfile_vp_offsets[] = {
906*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_copyfile_args, a_fvp),
907*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_copyfile_args, a_tdvp),
908*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_copyfile_args, a_tvp),
909*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
910*4f1223e8SApple OSS Distributions };
911*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_copyfile_desc = {
912*4f1223e8SApple OSS Distributions 	.vdesc_offset = 0,
913*4f1223e8SApple OSS Distributions 	.vdesc_name = "vnop_copyfile",
914*4f1223e8SApple OSS Distributions 	.vdesc_flags = 0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE | VDESC_VP2_WILLRELE,
915*4f1223e8SApple OSS Distributions 	.vdesc_vp_offsets = vnop_copyfile_vp_offsets,
916*4f1223e8SApple OSS Distributions 	.vdesc_vpp_offset = VDESC_NO_OFFSET,
917*4f1223e8SApple OSS Distributions 	.vdesc_cred_offset = VDESC_NO_OFFSET,
918*4f1223e8SApple OSS Distributions 	.vdesc_proc_offset = VDESC_NO_OFFSET,
919*4f1223e8SApple OSS Distributions 	.vdesc_componentname_offset = VOPARG_OFFSETOF(struct vnop_copyfile_args, a_tcnp),
920*4f1223e8SApple OSS Distributions 	.vdesc_context_offset = VDESC_NO_OFFSET,
921*4f1223e8SApple OSS Distributions 	.vdesc_transports = NULL
922*4f1223e8SApple OSS Distributions };
923*4f1223e8SApple OSS Distributions 
924*4f1223e8SApple OSS Distributions int vnop_clonefile_vp_offsets[] = {
925*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_clonefile_args, a_fvp),
926*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_clonefile_args, a_dvp),
927*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
928*4f1223e8SApple OSS Distributions };
929*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_clonefile_desc = {
930*4f1223e8SApple OSS Distributions 	.vdesc_offset = 0,
931*4f1223e8SApple OSS Distributions 	.vdesc_name = "vnop_clonefile",
932*4f1223e8SApple OSS Distributions 	.vdesc_flags = 0 | VDESC_VP0_WILLRELE | VDESC_VP1_WILLRELE | VDESC_VPP_WILLRELE,
933*4f1223e8SApple OSS Distributions 	.vdesc_vp_offsets = vnop_clonefile_vp_offsets,
934*4f1223e8SApple OSS Distributions 	.vdesc_vpp_offset = VOPARG_OFFSETOF(struct vnop_clonefile_args, a_vpp),
935*4f1223e8SApple OSS Distributions 	.vdesc_cred_offset = VDESC_NO_OFFSET,
936*4f1223e8SApple OSS Distributions 	.vdesc_proc_offset = VDESC_NO_OFFSET,
937*4f1223e8SApple OSS Distributions 	.vdesc_componentname_offset = VOPARG_OFFSETOF(struct vnop_clonefile_args, a_cnp),
938*4f1223e8SApple OSS Distributions 	.vdesc_context_offset = VOPARG_OFFSETOF(struct vnop_clonefile_args, a_context),
939*4f1223e8SApple OSS Distributions 	.vdesc_transports = NULL
940*4f1223e8SApple OSS Distributions };
941*4f1223e8SApple OSS Distributions 
942*4f1223e8SApple OSS Distributions int vop_getxattr_vp_offsets[] = {
943*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_getxattr_args, a_vp),
944*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
945*4f1223e8SApple OSS Distributions };
946*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_getxattr_desc = {
947*4f1223e8SApple OSS Distributions 	0,
948*4f1223e8SApple OSS Distributions 	"vnop_getxattr",
949*4f1223e8SApple OSS Distributions 	0,
950*4f1223e8SApple OSS Distributions 	vop_getxattr_vp_offsets,
951*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
952*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
953*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
954*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
955*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_getxattr_args, a_context),
956*4f1223e8SApple OSS Distributions 	NULL
957*4f1223e8SApple OSS Distributions };
958*4f1223e8SApple OSS Distributions 
959*4f1223e8SApple OSS Distributions int vop_setxattr_vp_offsets[] = {
960*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_setxattr_args, a_vp),
961*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
962*4f1223e8SApple OSS Distributions };
963*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_setxattr_desc = {
964*4f1223e8SApple OSS Distributions 	0,
965*4f1223e8SApple OSS Distributions 	"vnop_setxattr",
966*4f1223e8SApple OSS Distributions 	0,
967*4f1223e8SApple OSS Distributions 	vop_setxattr_vp_offsets,
968*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
969*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
970*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
971*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
972*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_setxattr_args, a_context),
973*4f1223e8SApple OSS Distributions 	NULL
974*4f1223e8SApple OSS Distributions };
975*4f1223e8SApple OSS Distributions 
976*4f1223e8SApple OSS Distributions int vop_removexattr_vp_offsets[] = {
977*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_removexattr_args, a_vp),
978*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
979*4f1223e8SApple OSS Distributions };
980*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_removexattr_desc = {
981*4f1223e8SApple OSS Distributions 	0,
982*4f1223e8SApple OSS Distributions 	"vnop_removexattr",
983*4f1223e8SApple OSS Distributions 	0,
984*4f1223e8SApple OSS Distributions 	vop_removexattr_vp_offsets,
985*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
986*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
987*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
988*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
989*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_removexattr_args, a_context),
990*4f1223e8SApple OSS Distributions 	NULL
991*4f1223e8SApple OSS Distributions };
992*4f1223e8SApple OSS Distributions 
993*4f1223e8SApple OSS Distributions int vop_listxattr_vp_offsets[] = {
994*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_listxattr_args, a_vp),
995*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
996*4f1223e8SApple OSS Distributions };
997*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_listxattr_desc = {
998*4f1223e8SApple OSS Distributions 	0,
999*4f1223e8SApple OSS Distributions 	"vnop_listxattr",
1000*4f1223e8SApple OSS Distributions 	0,
1001*4f1223e8SApple OSS Distributions 	vop_listxattr_vp_offsets,
1002*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1003*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1004*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1005*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1006*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_listxattr_args, a_context),
1007*4f1223e8SApple OSS Distributions 	NULL
1008*4f1223e8SApple OSS Distributions };
1009*4f1223e8SApple OSS Distributions 
1010*4f1223e8SApple OSS Distributions int vnop_blktooff_vp_offsets[] = {
1011*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_blktooff_args, a_vp),
1012*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1013*4f1223e8SApple OSS Distributions };
1014*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_blktooff_desc = {
1015*4f1223e8SApple OSS Distributions 	0,
1016*4f1223e8SApple OSS Distributions 	"vnop_blktooff",
1017*4f1223e8SApple OSS Distributions 	0,
1018*4f1223e8SApple OSS Distributions 	vnop_blktooff_vp_offsets,
1019*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1020*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1021*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1022*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1023*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1024*4f1223e8SApple OSS Distributions 	NULL
1025*4f1223e8SApple OSS Distributions };
1026*4f1223e8SApple OSS Distributions 
1027*4f1223e8SApple OSS Distributions int vnop_offtoblk_vp_offsets[] = {
1028*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_offtoblk_args, a_vp),
1029*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1030*4f1223e8SApple OSS Distributions };
1031*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_offtoblk_desc = {
1032*4f1223e8SApple OSS Distributions 	0,
1033*4f1223e8SApple OSS Distributions 	"vnop_offtoblk",
1034*4f1223e8SApple OSS Distributions 	0,
1035*4f1223e8SApple OSS Distributions 	vnop_offtoblk_vp_offsets,
1036*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1037*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1038*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1039*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1040*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1041*4f1223e8SApple OSS Distributions 	NULL
1042*4f1223e8SApple OSS Distributions };
1043*4f1223e8SApple OSS Distributions 
1044*4f1223e8SApple OSS Distributions int vnop_blockmap_vp_offsets[] = {
1045*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_blockmap_args, a_vp),
1046*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1047*4f1223e8SApple OSS Distributions };
1048*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_blockmap_desc = {
1049*4f1223e8SApple OSS Distributions 	0,
1050*4f1223e8SApple OSS Distributions 	"vnop_blockmap",
1051*4f1223e8SApple OSS Distributions 	0,
1052*4f1223e8SApple OSS Distributions 	vnop_blockmap_vp_offsets,
1053*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1054*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1055*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1056*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1057*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1058*4f1223e8SApple OSS Distributions 	NULL
1059*4f1223e8SApple OSS Distributions };
1060*4f1223e8SApple OSS Distributions 
1061*4f1223e8SApple OSS Distributions #if NAMEDSTREAMS
1062*4f1223e8SApple OSS Distributions int vnop_getnamedstream_vp_offsets[] = {
1063*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_getnamedstream_args, a_vp),
1064*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1065*4f1223e8SApple OSS Distributions };
1066*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_getnamedstream_desc = {
1067*4f1223e8SApple OSS Distributions 	0,
1068*4f1223e8SApple OSS Distributions 	"vnop_getnamedstream",
1069*4f1223e8SApple OSS Distributions 	0,
1070*4f1223e8SApple OSS Distributions 	vnop_getnamedstream_vp_offsets,
1071*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_getnamedstream_args, a_svpp),
1072*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1073*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1074*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_getnamedstream_args, a_name),
1075*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_getnamedstream_args, a_context),
1076*4f1223e8SApple OSS Distributions 	NULL
1077*4f1223e8SApple OSS Distributions };
1078*4f1223e8SApple OSS Distributions 
1079*4f1223e8SApple OSS Distributions int vnop_makenamedstream_vp_offsets[] = {
1080*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_makenamedstream_args, a_vp),
1081*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1082*4f1223e8SApple OSS Distributions };
1083*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_makenamedstream_desc = {
1084*4f1223e8SApple OSS Distributions 	0,
1085*4f1223e8SApple OSS Distributions 	"vnop_makenamedstream",
1086*4f1223e8SApple OSS Distributions 	0, /* flags */
1087*4f1223e8SApple OSS Distributions 	vnop_makenamedstream_vp_offsets,
1088*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_makenamedstream_args, a_svpp),
1089*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1090*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1091*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_makenamedstream_args, a_name),
1092*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_makenamedstream_args, a_context),
1093*4f1223e8SApple OSS Distributions 	NULL
1094*4f1223e8SApple OSS Distributions };
1095*4f1223e8SApple OSS Distributions 
1096*4f1223e8SApple OSS Distributions int vnop_removenamedstream_vp_offsets[] = {
1097*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_removenamedstream_args, a_vp),
1098*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1099*4f1223e8SApple OSS Distributions };
1100*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_removenamedstream_desc = {
1101*4f1223e8SApple OSS Distributions 	0,
1102*4f1223e8SApple OSS Distributions 	"vnop_removenamedstream",
1103*4f1223e8SApple OSS Distributions 	0,
1104*4f1223e8SApple OSS Distributions 	vnop_removenamedstream_vp_offsets,
1105*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1106*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1107*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1108*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_removenamedstream_args, a_name),
1109*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_removenamedstream_args, a_context),
1110*4f1223e8SApple OSS Distributions 	NULL
1111*4f1223e8SApple OSS Distributions };
1112*4f1223e8SApple OSS Distributions #else
1113*4f1223e8SApple OSS Distributions int vnop_getnamedstream_vp_offsets[] = {
1114*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1115*4f1223e8SApple OSS Distributions };
1116*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_getnamedstream_desc = {
1117*4f1223e8SApple OSS Distributions 	0,
1118*4f1223e8SApple OSS Distributions 	"vnop_getnamedstream",
1119*4f1223e8SApple OSS Distributions 	VDESC_DISABLED, /* flags */
1120*4f1223e8SApple OSS Distributions 	vnop_getnamedstream_vp_offsets,
1121*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1122*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1123*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1124*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1125*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1126*4f1223e8SApple OSS Distributions 	NULL
1127*4f1223e8SApple OSS Distributions };
1128*4f1223e8SApple OSS Distributions 
1129*4f1223e8SApple OSS Distributions int vnop_makenamedstream_vp_offsets[] = {
1130*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1131*4f1223e8SApple OSS Distributions };
1132*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_makenamedstream_desc = {
1133*4f1223e8SApple OSS Distributions 	0,
1134*4f1223e8SApple OSS Distributions 	"vnop_makenamedstream",
1135*4f1223e8SApple OSS Distributions 	VDESC_DISABLED, /* flags */
1136*4f1223e8SApple OSS Distributions 	vnop_makenamedstream_vp_offsets,
1137*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1138*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1139*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1140*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1141*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1142*4f1223e8SApple OSS Distributions 	NULL
1143*4f1223e8SApple OSS Distributions };
1144*4f1223e8SApple OSS Distributions 
1145*4f1223e8SApple OSS Distributions int vnop_removenamedstream_vp_offsets[] = {
1146*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1147*4f1223e8SApple OSS Distributions };
1148*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_removenamedstream_desc = {
1149*4f1223e8SApple OSS Distributions 	0,
1150*4f1223e8SApple OSS Distributions 	"vnop_removenamedstream",
1151*4f1223e8SApple OSS Distributions 	VDESC_DISABLED, /* flags */
1152*4f1223e8SApple OSS Distributions 	vnop_removenamedstream_vp_offsets,
1153*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1154*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1155*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1156*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1157*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1158*4f1223e8SApple OSS Distributions 	NULL
1159*4f1223e8SApple OSS Distributions };
1160*4f1223e8SApple OSS Distributions #endif
1161*4f1223e8SApple OSS Distributions 
1162*4f1223e8SApple OSS Distributions /* Special cases: */
1163*4f1223e8SApple OSS Distributions 
1164*4f1223e8SApple OSS Distributions int vnop_strategy_vp_offsets[] = {
1165*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1166*4f1223e8SApple OSS Distributions };
1167*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_strategy_desc = {
1168*4f1223e8SApple OSS Distributions 	0,
1169*4f1223e8SApple OSS Distributions 	"vnop_strategy",
1170*4f1223e8SApple OSS Distributions 	0,
1171*4f1223e8SApple OSS Distributions 	vnop_strategy_vp_offsets,
1172*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1173*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1174*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1175*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1176*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1177*4f1223e8SApple OSS Distributions 	NULL
1178*4f1223e8SApple OSS Distributions };
1179*4f1223e8SApple OSS Distributions 
1180*4f1223e8SApple OSS Distributions int vnop_bwrite_vp_offsets[] = {
1181*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1182*4f1223e8SApple OSS Distributions };
1183*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_bwrite_desc = {
1184*4f1223e8SApple OSS Distributions 	0,
1185*4f1223e8SApple OSS Distributions 	"vnop_bwrite",
1186*4f1223e8SApple OSS Distributions 	0,
1187*4f1223e8SApple OSS Distributions 	vnop_bwrite_vp_offsets,
1188*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1189*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1190*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1191*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1192*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET,
1193*4f1223e8SApple OSS Distributions 	NULL
1194*4f1223e8SApple OSS Distributions };
1195*4f1223e8SApple OSS Distributions 
1196*4f1223e8SApple OSS Distributions int vnop_verify_vp_offsets[] = {
1197*4f1223e8SApple OSS Distributions 	VOPARG_OFFSETOF(struct vnop_verify_args, a_vp),
1198*4f1223e8SApple OSS Distributions 	VDESC_NO_OFFSET
1199*4f1223e8SApple OSS Distributions };
1200*4f1223e8SApple OSS Distributions struct vnodeop_desc vnop_verify_desc = {
1201*4f1223e8SApple OSS Distributions 	.vdesc_offset = 0,
1202*4f1223e8SApple OSS Distributions 	.vdesc_name = "vnop_verify",
1203*4f1223e8SApple OSS Distributions 	.vdesc_flags = 0,
1204*4f1223e8SApple OSS Distributions 	.vdesc_vp_offsets = vnop_verify_vp_offsets,
1205*4f1223e8SApple OSS Distributions 	.vdesc_vpp_offset = VDESC_NO_OFFSET,
1206*4f1223e8SApple OSS Distributions 	.vdesc_cred_offset = VDESC_NO_OFFSET,
1207*4f1223e8SApple OSS Distributions 	.vdesc_proc_offset = VDESC_NO_OFFSET,
1208*4f1223e8SApple OSS Distributions 	.vdesc_componentname_offset = VDESC_NO_OFFSET,
1209*4f1223e8SApple OSS Distributions 	.vdesc_context_offset = VOPARG_OFFSETOF(struct vnop_verify_args, a_context),
1210*4f1223e8SApple OSS Distributions 	.vdesc_transports = NULL
1211*4f1223e8SApple OSS Distributions };
1212*4f1223e8SApple OSS Distributions 
1213*4f1223e8SApple OSS Distributions /* End of special cases. */
1214*4f1223e8SApple OSS Distributions 
1215*4f1223e8SApple OSS Distributions struct vnodeop_desc *vfs_op_descs[] = {
1216*4f1223e8SApple OSS Distributions 	&vnop_default_desc,     /* MUST BE FIRST */
1217*4f1223e8SApple OSS Distributions 	&vnop_strategy_desc,    /* XXX: SPECIAL CASE */
1218*4f1223e8SApple OSS Distributions 	&vnop_bwrite_desc,      /* XXX: SPECIAL CASE */
1219*4f1223e8SApple OSS Distributions 
1220*4f1223e8SApple OSS Distributions 	&vnop_lookup_desc,
1221*4f1223e8SApple OSS Distributions 	&vnop_create_desc,
1222*4f1223e8SApple OSS Distributions 	&vnop_mknod_desc,
1223*4f1223e8SApple OSS Distributions 	&vnop_whiteout_desc,
1224*4f1223e8SApple OSS Distributions 	&vnop_open_desc,
1225*4f1223e8SApple OSS Distributions 	&vnop_compound_open_desc,
1226*4f1223e8SApple OSS Distributions 	&vnop_close_desc,
1227*4f1223e8SApple OSS Distributions 	&vnop_access_desc,
1228*4f1223e8SApple OSS Distributions 	&vnop_getattr_desc,
1229*4f1223e8SApple OSS Distributions 	&vnop_setattr_desc,
1230*4f1223e8SApple OSS Distributions 	&vnop_read_desc,
1231*4f1223e8SApple OSS Distributions 	&vnop_write_desc,
1232*4f1223e8SApple OSS Distributions 	&vnop_ioctl_desc,
1233*4f1223e8SApple OSS Distributions 	&vnop_select_desc,
1234*4f1223e8SApple OSS Distributions 	&vnop_exchange_desc,
1235*4f1223e8SApple OSS Distributions 	&vnop_kqfilt_add_desc,
1236*4f1223e8SApple OSS Distributions 	&vnop_kqfilt_remove_desc,
1237*4f1223e8SApple OSS Distributions 	&vnop_setlabel_desc,
1238*4f1223e8SApple OSS Distributions 	&vnop_revoke_desc,
1239*4f1223e8SApple OSS Distributions 	&vnop_mmap_check_desc,
1240*4f1223e8SApple OSS Distributions 	&vnop_mmap_desc,
1241*4f1223e8SApple OSS Distributions 	&vnop_mnomap_desc,
1242*4f1223e8SApple OSS Distributions 	&vnop_fsync_desc,
1243*4f1223e8SApple OSS Distributions 	&vnop_remove_desc,
1244*4f1223e8SApple OSS Distributions 	&vnop_compound_remove_desc,
1245*4f1223e8SApple OSS Distributions 	&vnop_link_desc,
1246*4f1223e8SApple OSS Distributions 	&vnop_rename_desc,
1247*4f1223e8SApple OSS Distributions 	&vnop_renamex_desc,
1248*4f1223e8SApple OSS Distributions 	&vnop_compound_rename_desc,
1249*4f1223e8SApple OSS Distributions 	&vnop_mkdir_desc,
1250*4f1223e8SApple OSS Distributions 	&vnop_compound_mkdir_desc,
1251*4f1223e8SApple OSS Distributions 	&vnop_rmdir_desc,
1252*4f1223e8SApple OSS Distributions 	&vnop_compound_rmdir_desc,
1253*4f1223e8SApple OSS Distributions 	&vnop_symlink_desc,
1254*4f1223e8SApple OSS Distributions 	&vnop_readdir_desc,
1255*4f1223e8SApple OSS Distributions 	&vnop_readdirattr_desc,
1256*4f1223e8SApple OSS Distributions 	&vnop_getattrlistbulk_desc,
1257*4f1223e8SApple OSS Distributions 	&vnop_readlink_desc,
1258*4f1223e8SApple OSS Distributions 	&vnop_inactive_desc,
1259*4f1223e8SApple OSS Distributions 	&vnop_reclaim_desc,
1260*4f1223e8SApple OSS Distributions 	&vnop_pathconf_desc,
1261*4f1223e8SApple OSS Distributions 	&vnop_advlock_desc,
1262*4f1223e8SApple OSS Distributions 	&vnop_allocate_desc,
1263*4f1223e8SApple OSS Distributions 	&vnop_pagein_desc,
1264*4f1223e8SApple OSS Distributions 	&vnop_pageout_desc,
1265*4f1223e8SApple OSS Distributions 	&vnop_searchfs_desc,
1266*4f1223e8SApple OSS Distributions 	&vnop_copyfile_desc,
1267*4f1223e8SApple OSS Distributions 	&vnop_clonefile_desc,
1268*4f1223e8SApple OSS Distributions 	&vnop_getxattr_desc,
1269*4f1223e8SApple OSS Distributions 	&vnop_setxattr_desc,
1270*4f1223e8SApple OSS Distributions 	&vnop_removexattr_desc,
1271*4f1223e8SApple OSS Distributions 	&vnop_listxattr_desc,
1272*4f1223e8SApple OSS Distributions 	&vnop_blktooff_desc,
1273*4f1223e8SApple OSS Distributions 	&vnop_offtoblk_desc,
1274*4f1223e8SApple OSS Distributions 	&vnop_blockmap_desc,
1275*4f1223e8SApple OSS Distributions 	&vnop_monitor_desc,
1276*4f1223e8SApple OSS Distributions #if !defined(NAMEDSTREAMS)
1277*4f1223e8SApple OSS Distributions 	/*
1278*4f1223e8SApple OSS Distributions 	 * We define the named streams ops descriptors as we _always_ have to
1279*4f1223e8SApple OSS Distributions 	 * have symbols with their names, and as such we really really need
1280*4f1223e8SApple OSS Distributions 	 * those symbols to be valid operations descriptors. However if
1281*4f1223e8SApple OSS Distributions 	 * named streams support is not enabled, we flag these descriptors
1282*4f1223e8SApple OSS Distributions 	 * as ignored.
1283*4f1223e8SApple OSS Distributions 	 */
1284*4f1223e8SApple OSS Distributions #endif
1285*4f1223e8SApple OSS Distributions 	&vnop_getnamedstream_desc,
1286*4f1223e8SApple OSS Distributions 	&vnop_makenamedstream_desc,
1287*4f1223e8SApple OSS Distributions 	&vnop_removenamedstream_desc,
1288*4f1223e8SApple OSS Distributions 	&vnop_verify_desc,
1289*4f1223e8SApple OSS Distributions 	NULL
1290*4f1223e8SApple OSS Distributions };
1291