3 * Copyright (c) 2000-2002 Apple Computer, Inc. All rights reserved.
5 * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
7 * This file contains Original Code and/or Modifications of Original Code
8 * as defined in and that are subject to the Apple Public Source License
9 * Version 2.0 (the 'License'). You may not use this file except in
10 * compliance with the License. The rights granted to you under the License
11 * may not be used to create, or enable the creation or redistribution of,
12 * unlawful or unlicensed copies of an Apple operating system, or to
13 * circumvent, violate, or enable the circumvention or violation of, any
14 * terms of an Apple operating system software license agreement.
16 * Please obtain a copy of the License at
17 * http://www.opensource.apple.com/apsl/ and read it before using this file.
19 * The Original Code and all software distributed under the License are
20 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
21 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
22 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
23 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
24 * Please see the License for the specific language governing rights and
25 * limitations under the License.
27 * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
30 * Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved
31 * Copyright (c) 1992, 1993, 1994, 1995
32 * The Regents of the University of California. All rights reserved.
34 * Redistribution and use in source and binary forms, with or without
35 * modification, are permitted provided that the following conditions
37 * 1. Redistributions of source code must retain the above copyright
38 * notice, this list of conditions and the following disclaimer.
39 * 2. Redistributions in binary form must reproduce the above copyright
40 * notice, this list of conditions and the following disclaimer in the
41 * documentation and/or other materials provided with the distribution.
42 * 3. All advertising materials mentioning features or use of this software
43 * must display the following acknowledgement:
44 * This product includes software developed by the University of
45 * California, Berkeley and its contributors.
46 * 4. Neither the name of the University nor the names of its contributors
47 * may be used to endorse or promote products derived from this software
48 * without specific prior written permission.
50 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS AND
51 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
52 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
53 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
54 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
55 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
56 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
57 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
58 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
59 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
65 * Warning: This file is generated automatically.
66 * (Modifications made here may easily be lost!)
68 * Created by the script:
69 * @(#)vnode_if.sh 8.7 (Berkeley) 5/11/95
73 #include <sys/param.h>
74 #include <sys/mount_internal.h>
76 #include <sys/vnode_internal.h>
78 struct vnodeop_desc vnop_default_desc
= {
92 int vnop_lookup_vp_offsets
[] = {
93 VOPARG_OFFSETOF(struct vnop_lookup_args
,a_dvp
),
96 struct vnodeop_desc vnop_lookup_desc
= {
100 vnop_lookup_vp_offsets
,
101 VOPARG_OFFSETOF(struct vnop_lookup_args
, a_vpp
),
104 VOPARG_OFFSETOF(struct vnop_lookup_args
, a_cnp
),
105 VOPARG_OFFSETOF(struct vnop_lookup_args
, a_context
),
109 int vnop_create_vp_offsets
[] = {
110 VOPARG_OFFSETOF(struct vnop_create_args
,a_dvp
),
113 struct vnodeop_desc vnop_create_desc
= {
116 0 | VDESC_VP0_WILLRELE
,
117 vnop_create_vp_offsets
,
118 VOPARG_OFFSETOF(struct vnop_create_args
, a_vpp
),
121 VOPARG_OFFSETOF(struct vnop_create_args
, a_cnp
),
122 VOPARG_OFFSETOF(struct vnop_create_args
, a_context
),
126 int vnop_whiteout_vp_offsets
[] = {
127 VOPARG_OFFSETOF(struct vnop_whiteout_args
,a_dvp
),
130 struct vnodeop_desc vnop_whiteout_desc
= {
133 0 | VDESC_VP0_WILLRELE
,
134 vnop_whiteout_vp_offsets
,
138 VOPARG_OFFSETOF(struct vnop_whiteout_args
, a_cnp
),
139 VOPARG_OFFSETOF(struct vnop_whiteout_args
, a_context
),
143 int vnop_mknod_vp_offsets
[] = {
144 VOPARG_OFFSETOF(struct vnop_mknod_args
,a_dvp
),
147 struct vnodeop_desc vnop_mknod_desc
= {
150 0 | VDESC_VP0_WILLRELE
| VDESC_VPP_WILLRELE
,
151 vnop_mknod_vp_offsets
,
152 VOPARG_OFFSETOF(struct vnop_mknod_args
, a_vpp
),
155 VOPARG_OFFSETOF(struct vnop_mknod_args
, a_cnp
),
156 VOPARG_OFFSETOF(struct vnop_mknod_args
, a_context
),
160 int vnop_open_vp_offsets
[] = {
161 VOPARG_OFFSETOF(struct vnop_open_args
,a_vp
),
164 struct vnodeop_desc vnop_open_desc
= {
168 vnop_open_vp_offsets
,
173 VOPARG_OFFSETOF(struct vnop_open_args
, a_context
),
177 int vnop_close_vp_offsets
[] = {
178 VOPARG_OFFSETOF(struct vnop_close_args
,a_vp
),
181 struct vnodeop_desc vnop_close_desc
= {
185 vnop_close_vp_offsets
,
190 VOPARG_OFFSETOF(struct vnop_close_args
, a_context
),
194 int vnop_access_vp_offsets
[] = {
195 VOPARG_OFFSETOF(struct vnop_access_args
,a_vp
),
198 struct vnodeop_desc vnop_access_desc
= {
202 vnop_access_vp_offsets
,
207 VOPARG_OFFSETOF(struct vnop_close_args
, a_context
),
211 int vnop_getattr_vp_offsets
[] = {
212 VOPARG_OFFSETOF(struct vnop_getattr_args
,a_vp
),
215 struct vnodeop_desc vnop_getattr_desc
= {
219 vnop_getattr_vp_offsets
,
224 VOPARG_OFFSETOF(struct vnop_getattr_args
, a_context
),
228 int vnop_setattr_vp_offsets
[] = {
229 VOPARG_OFFSETOF(struct vnop_setattr_args
,a_vp
),
232 struct vnodeop_desc vnop_setattr_desc
= {
236 vnop_setattr_vp_offsets
,
241 VOPARG_OFFSETOF(struct vnop_setattr_args
, a_context
),
245 int vnop_read_vp_offsets
[] = {
246 VOPARG_OFFSETOF(struct vnop_read_args
,a_vp
),
249 struct vnodeop_desc vnop_read_desc
= {
253 vnop_read_vp_offsets
,
258 VOPARG_OFFSETOF(struct vnop_read_args
, a_context
),
262 int vnop_write_vp_offsets
[] = {
263 VOPARG_OFFSETOF(struct vnop_write_args
,a_vp
),
266 struct vnodeop_desc vnop_write_desc
= {
270 vnop_write_vp_offsets
,
275 VOPARG_OFFSETOF(struct vnop_write_args
, a_context
),
279 int vnop_ioctl_vp_offsets
[] = {
280 VOPARG_OFFSETOF(struct vnop_ioctl_args
,a_vp
),
283 struct vnodeop_desc vnop_ioctl_desc
= {
287 vnop_ioctl_vp_offsets
,
292 VOPARG_OFFSETOF(struct vnop_ioctl_args
, a_context
),
296 int vnop_select_vp_offsets
[] = {
297 VOPARG_OFFSETOF(struct vnop_select_args
,a_vp
),
300 struct vnodeop_desc vnop_select_desc
= {
304 vnop_select_vp_offsets
,
309 VOPARG_OFFSETOF(struct vnop_select_args
, a_context
),
313 int vnop_exchange_vp_offsets
[] = {
314 VOPARG_OFFSETOF(struct vnop_exchange_args
,a_fvp
),
315 VOPARG_OFFSETOF(struct vnop_exchange_args
,a_tvp
),
318 struct vnodeop_desc vnop_exchange_desc
= {
322 vnop_exchange_vp_offsets
,
327 VOPARG_OFFSETOF(struct vnop_exchange_args
, a_context
),
331 int vnop_kqfilt_add_vp_offsets
[] = {
332 VOPARG_OFFSETOF(struct vnop_kqfilt_add_args
,a_vp
),
335 struct vnodeop_desc vnop_kqfilt_add_desc
= {
339 vnop_kqfilt_add_vp_offsets
,
344 VOPARG_OFFSETOF(struct vnop_kqfilt_add_args
, a_context
),
348 int vnop_kqfilt_remove_vp_offsets
[] = {
349 VOPARG_OFFSETOF(struct vnop_kqfilt_remove_args
,a_vp
),
352 struct vnodeop_desc vnop_kqfilt_remove_desc
= {
354 "vnop_kqfilt_remove",
356 vnop_kqfilt_remove_vp_offsets
,
361 VOPARG_OFFSETOF(struct vnop_kqfilt_remove_args
, a_context
),
365 int vnop_monitor_vp_offsets
[] = {
366 VOPARG_OFFSETOF(struct vnop_monitor_args
,a_vp
),
369 struct vnodeop_desc vnop_monitor_desc
= {
373 vnop_monitor_vp_offsets
,
378 VOPARG_OFFSETOF(struct vnop_monitor_args
, a_context
),
382 int vnop_setlabel_vp_offsets
[] = {
383 VOPARG_OFFSETOF(struct vnop_setlabel_args
,a_vp
),
386 struct vnodeop_desc vnop_setlabel_desc
= {
390 vnop_setlabel_vp_offsets
,
395 VOPARG_OFFSETOF(struct vnop_setlabel_args
, a_context
),
399 int vnop_revoke_vp_offsets
[] = {
400 VOPARG_OFFSETOF(struct vnop_revoke_args
,a_vp
),
403 struct vnodeop_desc vnop_revoke_desc
= {
407 vnop_revoke_vp_offsets
,
417 int vnop_mmap_vp_offsets
[] = {
418 VOPARG_OFFSETOF(struct vnop_mmap_args
,a_vp
),
421 struct vnodeop_desc vnop_mmap_desc
= {
425 vnop_mmap_vp_offsets
,
435 int vnop_mnomap_vp_offsets
[] = {
436 VOPARG_OFFSETOF(struct vnop_mnomap_args
,a_vp
),
439 struct vnodeop_desc vnop_mnomap_desc
= {
443 vnop_mnomap_vp_offsets
,
453 int vnop_fsync_vp_offsets
[] = {
454 VOPARG_OFFSETOF(struct vnop_fsync_args
,a_vp
),
457 struct vnodeop_desc vnop_fsync_desc
= {
461 vnop_fsync_vp_offsets
,
466 VOPARG_OFFSETOF(struct vnop_fsync_args
, a_context
),
470 int vnop_remove_vp_offsets
[] = {
471 VOPARG_OFFSETOF(struct vnop_remove_args
,a_dvp
),
472 VOPARG_OFFSETOF(struct vnop_remove_args
,a_vp
),
475 struct vnodeop_desc vnop_remove_desc
= {
478 0 | VDESC_VP0_WILLRELE
| VDESC_VP1_WILLRELE
,
479 vnop_remove_vp_offsets
,
483 VOPARG_OFFSETOF(struct vnop_remove_args
, a_cnp
),
484 VOPARG_OFFSETOF(struct vnop_remove_args
, a_context
),
488 int vnop_link_vp_offsets
[] = {
489 VOPARG_OFFSETOF(struct vnop_link_args
,a_vp
),
490 VOPARG_OFFSETOF(struct vnop_link_args
,a_tdvp
),
493 struct vnodeop_desc vnop_link_desc
= {
496 0 | VDESC_VP1_WILLRELE
,
497 vnop_link_vp_offsets
,
501 VOPARG_OFFSETOF(struct vnop_link_args
, a_cnp
),
502 VOPARG_OFFSETOF(struct vnop_link_args
, a_context
),
506 int vnop_rename_vp_offsets
[] = {
507 VOPARG_OFFSETOF(struct vnop_rename_args
,a_fdvp
),
508 VOPARG_OFFSETOF(struct vnop_rename_args
,a_fvp
),
509 VOPARG_OFFSETOF(struct vnop_rename_args
,a_tdvp
),
510 VOPARG_OFFSETOF(struct vnop_rename_args
,a_tvp
),
513 struct vnodeop_desc vnop_rename_desc
= {
516 0 | VDESC_VP0_WILLRELE
| VDESC_VP1_WILLRELE
| VDESC_VP2_WILLRELE
| VDESC_VP3_WILLRELE
,
517 vnop_rename_vp_offsets
,
521 VOPARG_OFFSETOF(struct vnop_rename_args
, a_fcnp
),
522 VOPARG_OFFSETOF(struct vnop_rename_args
, a_context
),
526 int vnop_mkdir_vp_offsets
[] = {
527 VOPARG_OFFSETOF(struct vnop_mkdir_args
,a_dvp
),
530 struct vnodeop_desc vnop_mkdir_desc
= {
533 0 | VDESC_VP0_WILLRELE
,
534 vnop_mkdir_vp_offsets
,
535 VOPARG_OFFSETOF(struct vnop_mkdir_args
, a_vpp
),
538 VOPARG_OFFSETOF(struct vnop_mkdir_args
, a_cnp
),
539 VOPARG_OFFSETOF(struct vnop_mkdir_args
, a_context
),
543 int vnop_rmdir_vp_offsets
[] = {
544 VOPARG_OFFSETOF(struct vnop_rmdir_args
,a_dvp
),
545 VOPARG_OFFSETOF(struct vnop_rmdir_args
,a_vp
),
548 struct vnodeop_desc vnop_rmdir_desc
= {
551 0 | VDESC_VP0_WILLRELE
| VDESC_VP1_WILLRELE
,
552 vnop_rmdir_vp_offsets
,
556 VOPARG_OFFSETOF(struct vnop_rmdir_args
, a_cnp
),
557 VOPARG_OFFSETOF(struct vnop_rmdir_args
, a_context
),
561 int vnop_symlink_vp_offsets
[] = {
562 VOPARG_OFFSETOF(struct vnop_symlink_args
,a_dvp
),
565 struct vnodeop_desc vnop_symlink_desc
= {
568 0 | VDESC_VP0_WILLRELE
| VDESC_VPP_WILLRELE
,
569 vnop_symlink_vp_offsets
,
570 VOPARG_OFFSETOF(struct vnop_symlink_args
, a_vpp
),
573 VOPARG_OFFSETOF(struct vnop_symlink_args
, a_cnp
),
574 VOPARG_OFFSETOF(struct vnop_symlink_args
, a_context
),
578 int vnop_readdir_vp_offsets
[] = {
579 VOPARG_OFFSETOF(struct vnop_readdir_args
,a_vp
),
582 struct vnodeop_desc vnop_readdir_desc
= {
586 vnop_readdir_vp_offsets
,
591 VOPARG_OFFSETOF(struct vnop_symlink_args
, a_context
),
595 int vnop_readdirattr_vp_offsets
[] = {
596 VOPARG_OFFSETOF(struct vnop_readdirattr_args
,a_vp
),
599 struct vnodeop_desc vnop_readdirattr_desc
= {
603 vnop_readdirattr_vp_offsets
,
608 VOPARG_OFFSETOF(struct vnop_readdirattr_args
, a_context
),
612 int vnop_readlink_vp_offsets
[] = {
613 VOPARG_OFFSETOF(struct vnop_readlink_args
,a_vp
),
616 struct vnodeop_desc vnop_readlink_desc
= {
620 vnop_readlink_vp_offsets
,
625 VOPARG_OFFSETOF(struct vnop_readlink_args
, a_context
),
629 int vnop_inactive_vp_offsets
[] = {
630 VOPARG_OFFSETOF(struct vnop_inactive_args
,a_vp
),
633 struct vnodeop_desc vnop_inactive_desc
= {
637 vnop_inactive_vp_offsets
,
642 VOPARG_OFFSETOF(struct vnop_inactive_args
, a_context
),
646 int vnop_reclaim_vp_offsets
[] = {
647 VOPARG_OFFSETOF(struct vnop_reclaim_args
,a_vp
),
650 struct vnodeop_desc vnop_reclaim_desc
= {
654 vnop_reclaim_vp_offsets
,
659 VOPARG_OFFSETOF(struct vnop_reclaim_args
, a_context
),
663 int vnop_pathconf_vp_offsets
[] = {
664 VOPARG_OFFSETOF(struct vnop_pathconf_args
,a_vp
),
667 struct vnodeop_desc vnop_pathconf_desc
= {
671 vnop_pathconf_vp_offsets
,
676 VOPARG_OFFSETOF(struct vnop_pathconf_args
, a_context
),
680 int vnop_advlock_vp_offsets
[] = {
681 VOPARG_OFFSETOF(struct vnop_advlock_args
,a_vp
),
684 struct vnodeop_desc vnop_advlock_desc
= {
688 vnop_advlock_vp_offsets
,
693 VOPARG_OFFSETOF(struct vnop_advlock_args
, a_context
),
697 int vnop_allocate_vp_offsets
[] = {
698 VOPARG_OFFSETOF(struct vnop_allocate_args
,a_vp
),
701 struct vnodeop_desc vnop_allocate_desc
= {
705 vnop_allocate_vp_offsets
,
710 VOPARG_OFFSETOF(struct vnop_allocate_args
, a_context
),
714 int vnop_pagein_vp_offsets
[] = {
715 VOPARG_OFFSETOF(struct vnop_pagein_args
,a_vp
),
718 struct vnodeop_desc vnop_pagein_desc
= {
722 vnop_pagein_vp_offsets
,
727 VOPARG_OFFSETOF(struct vnop_pagein_args
, a_context
),
731 int vnop_pageout_vp_offsets
[] = {
732 VOPARG_OFFSETOF(struct vnop_pageout_args
,a_vp
),
735 struct vnodeop_desc vnop_pageout_desc
= {
739 vnop_pageout_vp_offsets
,
744 VOPARG_OFFSETOF(struct vnop_pageout_args
, a_context
),
748 int vnop_searchfs_vp_offsets
[] = {
749 VOPARG_OFFSETOF(struct vnop_searchfs_args
,a_vp
),
752 struct vnodeop_desc vnop_searchfs_desc
= {
756 vnop_searchfs_vp_offsets
,
765 int vnop_copyfile_vp_offsets
[] = {
766 VOPARG_OFFSETOF(struct vnop_copyfile_args
,a_fvp
),
767 VOPARG_OFFSETOF(struct vnop_copyfile_args
,a_tdvp
),
768 VOPARG_OFFSETOF(struct vnop_copyfile_args
,a_tvp
),
771 struct vnodeop_desc vnop_copyfile_desc
= {
774 0 | VDESC_VP0_WILLRELE
| VDESC_VP1_WILLRELE
| VDESC_VP2_WILLRELE
,
775 vnop_copyfile_vp_offsets
,
779 VOPARG_OFFSETOF(struct vnop_copyfile_args
, a_tcnp
),
784 int vop_getxattr_vp_offsets
[] = {
785 VOPARG_OFFSETOF(struct vnop_getxattr_args
,a_vp
),
788 struct vnodeop_desc vnop_getxattr_desc
= {
792 vop_getxattr_vp_offsets
,
797 VOPARG_OFFSETOF(struct vnop_getxattr_args
, a_context
),
801 int vop_setxattr_vp_offsets
[] = {
802 VOPARG_OFFSETOF(struct vnop_setxattr_args
,a_vp
),
805 struct vnodeop_desc vnop_setxattr_desc
= {
809 vop_setxattr_vp_offsets
,
814 VOPARG_OFFSETOF(struct vnop_setxattr_args
, a_context
),
818 int vop_removexattr_vp_offsets
[] = {
819 VOPARG_OFFSETOF(struct vnop_removexattr_args
,a_vp
),
822 struct vnodeop_desc vnop_removexattr_desc
= {
826 vop_removexattr_vp_offsets
,
831 VOPARG_OFFSETOF(struct vnop_removexattr_args
, a_context
),
835 int vop_listxattr_vp_offsets
[] = {
836 VOPARG_OFFSETOF(struct vnop_listxattr_args
,a_vp
),
839 struct vnodeop_desc vnop_listxattr_desc
= {
843 vop_listxattr_vp_offsets
,
848 VOPARG_OFFSETOF(struct vnop_listxattr_args
, a_context
),
852 int vnop_blktooff_vp_offsets
[] = {
853 VOPARG_OFFSETOF(struct vnop_blktooff_args
,a_vp
),
856 struct vnodeop_desc vnop_blktooff_desc
= {
860 vnop_blktooff_vp_offsets
,
869 int vnop_offtoblk_vp_offsets
[] = {
870 VOPARG_OFFSETOF(struct vnop_offtoblk_args
,a_vp
),
873 struct vnodeop_desc vnop_offtoblk_desc
= {
877 vnop_offtoblk_vp_offsets
,
886 int vnop_blockmap_vp_offsets
[] = {
887 VOPARG_OFFSETOF(struct vnop_blockmap_args
,a_vp
),
890 struct vnodeop_desc vnop_blockmap_desc
= {
894 vnop_blockmap_vp_offsets
,
904 int vnop_getnamedstream_vp_offsets
[] = {
905 VOPARG_OFFSETOF(struct vnop_getnamedstream_args
, a_vp
),
908 struct vnodeop_desc vnop_getnamedstream_desc
= {
910 "vnop_getnamedstream",
912 vnop_getnamedstream_vp_offsets
,
913 VOPARG_OFFSETOF(struct vnop_getnamedstream_args
, a_svpp
),
916 VOPARG_OFFSETOF(struct vnop_getnamedstream_args
, a_name
),
917 VOPARG_OFFSETOF(struct vnop_getnamedstream_args
, a_context
),
921 int vnop_makenamedstream_vp_offsets
[] = {
922 VOPARG_OFFSETOF(struct vnop_makenamedstream_args
, a_vp
),
925 struct vnodeop_desc vnop_makenamedstream_desc
= {
927 "vnop_makenamedstream",
929 vnop_makenamedstream_vp_offsets
,
930 VOPARG_OFFSETOF(struct vnop_makenamedstream_args
, a_svpp
),
933 VOPARG_OFFSETOF(struct vnop_makenamedstream_args
, a_name
),
934 VOPARG_OFFSETOF(struct vnop_makenamedstream_args
, a_context
),
938 int vnop_removenamedstream_vp_offsets
[] = {
939 VOPARG_OFFSETOF(struct vnop_removenamedstream_args
, a_vp
),
942 struct vnodeop_desc vnop_removenamedstream_desc
= {
944 "vnop_removenamedstream",
946 vnop_removenamedstream_vp_offsets
,
950 VOPARG_OFFSETOF(struct vnop_removenamedstream_args
, a_name
),
951 VOPARG_OFFSETOF(struct vnop_removenamedstream_args
, a_context
),
955 /* These symbols are in the exports list so they need to always be defined. */
956 int vnop_getnamedstream_desc
;
957 int vnop_makenamedstream_desc
;
958 int vnop_removenamedstream_desc
;
963 int vnop_strategy_vp_offsets
[] = {
966 struct vnodeop_desc vnop_strategy_desc
= {
970 vnop_strategy_vp_offsets
,
979 int vnop_bwrite_vp_offsets
[] = {
982 struct vnodeop_desc vnop_bwrite_desc
= {
986 vnop_bwrite_vp_offsets
,
995 /* End of special cases. */
997 struct vnodeop_desc
*vfs_op_descs
[] = {
998 &vnop_default_desc
, /* MUST BE FIRST */
999 &vnop_strategy_desc
, /* XXX: SPECIAL CASE */
1000 &vnop_bwrite_desc
, /* XXX: SPECIAL CASE */
1005 &vnop_whiteout_desc
,
1015 &vnop_exchange_desc
,
1016 &vnop_kqfilt_add_desc
,
1017 &vnop_kqfilt_remove_desc
,
1018 &vnop_setlabel_desc
,
1030 &vnop_readdirattr_desc
,
1031 &vnop_readlink_desc
,
1032 &vnop_inactive_desc
,
1034 &vnop_pathconf_desc
,
1036 &vnop_allocate_desc
,
1039 &vnop_searchfs_desc
,
1040 &vnop_copyfile_desc
,
1041 &vnop_getxattr_desc
,
1042 &vnop_setxattr_desc
,
1043 &vnop_removexattr_desc
,
1044 &vnop_listxattr_desc
,
1045 &vnop_blktooff_desc
,
1046 &vnop_offtoblk_desc
,
1047 &vnop_blockmap_desc
,
1050 &vnop_getnamedstream_desc
,
1051 &vnop_makenamedstream_desc
,
1052 &vnop_removenamedstream_desc
,