vnode_if.c

来自「基于组件方式开发操作系统的OSKIT源代码」· C语言 代码 · 共 806 行 · 第 1/2 页

C
806
字号
	VOPARG_OFFSETOF(struct vop_readdir_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_readdir_desc = {	0,	"vop_readdir",	0,	vop_readdir_vp_offsets,	VDESC_NO_OFFSET,	VOPARG_OFFSETOF(struct vop_readdir_args, a_cred),	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_readlink_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_readlink_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_readlink_desc = {	0,	"vop_readlink",	0,	vop_readlink_vp_offsets,	VDESC_NO_OFFSET,	VOPARG_OFFSETOF(struct vop_readlink_args, a_cred),	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_abortop_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_abortop_args,a_dvp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_abortop_desc = {	0,	"vop_abortop",	0,	vop_abortop_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VOPARG_OFFSETOF(struct vop_abortop_args, a_cnp),	NULL,};int vop_inactive_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_inactive_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_inactive_desc = {	0,	"vop_inactive",	0,	vop_inactive_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_reclaim_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_reclaim_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_reclaim_desc = {	0,	"vop_reclaim",	0,	vop_reclaim_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_lock_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_lock_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_lock_desc = {	0,	"vop_lock",	0,	vop_lock_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_unlock_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_unlock_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_unlock_desc = {	0,	"vop_unlock",	0,	vop_unlock_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_bmap_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_bmap_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_bmap_desc = {	0,	"vop_bmap",	0,	vop_bmap_vp_offsets,	VOPARG_OFFSETOF(struct vop_bmap_args, a_vpp),	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_print_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_print_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_print_desc = {	0,	"vop_print",	0,	vop_print_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_islocked_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_islocked_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_islocked_desc = {	0,	"vop_islocked",	0,	vop_islocked_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_pathconf_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_pathconf_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_pathconf_desc = {	0,	"vop_pathconf",	0,	vop_pathconf_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_advlock_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_advlock_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_advlock_desc = {	0,	"vop_advlock",	0,	vop_advlock_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_blkatoff_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_blkatoff_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_blkatoff_desc = {	0,	"vop_blkatoff",	0,	vop_blkatoff_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_valloc_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_valloc_args,a_pvp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_valloc_desc = {	0,	"vop_valloc",	0,	vop_valloc_vp_offsets,	VOPARG_OFFSETOF(struct vop_valloc_args, a_vpp),	VOPARG_OFFSETOF(struct vop_valloc_args, a_cred),	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_reallocblks_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_reallocblks_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_reallocblks_desc = {	0,	"vop_reallocblks",	0,	vop_reallocblks_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_vfree_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_vfree_args,a_pvp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_vfree_desc = {	0,	"vop_vfree",	0,	vop_vfree_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_truncate_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_truncate_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_truncate_desc = {	0,	"vop_truncate",	0,	vop_truncate_vp_offsets,	VDESC_NO_OFFSET,	VOPARG_OFFSETOF(struct vop_truncate_args, a_cred),	VOPARG_OFFSETOF(struct vop_truncate_args, a_p),	VDESC_NO_OFFSET,	NULL,};int vop_update_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_update_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_update_desc = {	0,	"vop_update",	0,	vop_update_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_lease_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_lease_args,a_vp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_lease_desc = {	0,	"vop_lease",	0,	vop_lease_vp_offsets,	VDESC_NO_OFFSET,	VOPARG_OFFSETOF(struct vop_lease_args, a_cred),	VOPARG_OFFSETOF(struct vop_lease_args, a_p),	VDESC_NO_OFFSET,	NULL,};int vop_whiteout_vp_offsets[] = {	VOPARG_OFFSETOF(struct vop_whiteout_args,a_dvp),	VDESC_NO_OFFSET};struct vnodeop_desc vop_whiteout_desc = {	0,	"vop_whiteout",	0,	vop_whiteout_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VOPARG_OFFSETOF(struct vop_whiteout_args, a_cnp),	NULL,};/* Special cases: */int vop_strategy_vp_offsets[] = {	VDESC_NO_OFFSET};struct vnodeop_desc vop_strategy_desc = {	0,	"vop_strategy",	0,	vop_strategy_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};int vop_bwrite_vp_offsets[] = {	VDESC_NO_OFFSET};struct vnodeop_desc vop_bwrite_desc = {	0,	"vop_bwrite",	0,	vop_bwrite_vp_offsets,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	VDESC_NO_OFFSET,	NULL,};/* End of special cases. */struct vnodeop_desc *vfs_op_descs[] = {	&vop_default_desc,	/* MUST BE FIRST */	&vop_strategy_desc,	/* XXX: SPECIAL CASE */	&vop_bwrite_desc,	/* XXX: SPECIAL CASE */	&vop_lookup_desc,	&vop_create_desc,	&vop_mknod_desc,	&vop_open_desc,	&vop_close_desc,	&vop_access_desc,	&vop_getattr_desc,	&vop_setattr_desc,	&vop_read_desc,	&vop_write_desc,	&vop_ioctl_desc,	&vop_select_desc,	&vop_mmap_desc,	&vop_fsync_desc,	&vop_seek_desc,	&vop_remove_desc,	&vop_link_desc,	&vop_rename_desc,	&vop_mkdir_desc,	&vop_rmdir_desc,	&vop_symlink_desc,	&vop_readdir_desc,	&vop_readlink_desc,	&vop_abortop_desc,	&vop_inactive_desc,	&vop_reclaim_desc,	&vop_lock_desc,	&vop_unlock_desc,	&vop_bmap_desc,	&vop_print_desc,	&vop_islocked_desc,	&vop_pathconf_desc,	&vop_advlock_desc,	&vop_blkatoff_desc,	&vop_valloc_desc,	&vop_reallocblks_desc,	&vop_vfree_desc,	&vop_truncate_desc,	&vop_update_desc,	&vop_lease_desc,	&vop_whiteout_desc,	NULL};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?