Stop exposing fifofs internals and leave only fifo_vnodeop_p visible.
This commit is contained in:
parent
0f5235579c
commit
242bf1c3e7
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: cd9660_vnops.c,v 1.38 2009/07/03 21:17:40 elad Exp $ */
|
||||
/* $NetBSD: cd9660_vnops.c,v 1.39 2010/03/29 13:11:32 pooka Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1994
|
||||
|
@ -37,7 +37,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: cd9660_vnops.c,v 1.38 2009/07/03 21:17:40 elad Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: cd9660_vnops.c,v 1.39 2010/03/29 13:11:32 pooka Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
|
@ -948,45 +948,45 @@ const struct vnodeopv_desc cd9660_specop_opv_desc =
|
|||
int (**cd9660_fifoop_p)(void *);
|
||||
const struct vnodeopv_entry_desc cd9660_fifoop_entries[] = {
|
||||
{ &vop_default_desc, vn_default_error },
|
||||
{ &vop_lookup_desc, fifo_lookup }, /* lookup */
|
||||
{ &vop_create_desc, fifo_create }, /* create */
|
||||
{ &vop_mknod_desc, fifo_mknod }, /* mknod */
|
||||
{ &vop_open_desc, fifo_open }, /* open */
|
||||
{ &vop_close_desc, fifo_close }, /* close */
|
||||
{ &vop_lookup_desc, vn_fifo_bypass }, /* lookup */
|
||||
{ &vop_create_desc, vn_fifo_bypass }, /* create */
|
||||
{ &vop_mknod_desc, vn_fifo_bypass }, /* mknod */
|
||||
{ &vop_open_desc, vn_fifo_bypass }, /* open */
|
||||
{ &vop_close_desc, vn_fifo_bypass }, /* close */
|
||||
{ &vop_access_desc, cd9660_access }, /* access */
|
||||
{ &vop_getattr_desc, cd9660_getattr }, /* getattr */
|
||||
{ &vop_setattr_desc, cd9660_setattr }, /* setattr */
|
||||
{ &vop_read_desc, fifo_read }, /* read */
|
||||
{ &vop_write_desc, fifo_write }, /* write */
|
||||
{ &vop_read_desc, vn_fifo_bypass }, /* read */
|
||||
{ &vop_write_desc, vn_fifo_bypass }, /* write */
|
||||
{ &vop_fcntl_desc, genfs_fcntl }, /* fcntl */
|
||||
{ &vop_ioctl_desc, fifo_ioctl }, /* ioctl */
|
||||
{ &vop_poll_desc, fifo_poll }, /* poll */
|
||||
{ &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */
|
||||
{ &vop_revoke_desc, fifo_revoke }, /* revoke */
|
||||
{ &vop_mmap_desc, fifo_mmap }, /* mmap */
|
||||
{ &vop_fsync_desc, fifo_fsync }, /* fsync */
|
||||
{ &vop_seek_desc, fifo_seek }, /* seek */
|
||||
{ &vop_remove_desc, fifo_remove }, /* remove */
|
||||
{ &vop_link_desc, fifo_link } , /* link */
|
||||
{ &vop_rename_desc, fifo_rename }, /* rename */
|
||||
{ &vop_mkdir_desc, fifo_mkdir }, /* mkdir */
|
||||
{ &vop_rmdir_desc, fifo_rmdir }, /* rmdir */
|
||||
{ &vop_symlink_desc, fifo_symlink }, /* symlink */
|
||||
{ &vop_readdir_desc, fifo_readdir }, /* readdir */
|
||||
{ &vop_readlink_desc, fifo_readlink }, /* readlink */
|
||||
{ &vop_abortop_desc, fifo_abortop }, /* abortop */
|
||||
{ &vop_ioctl_desc, vn_fifo_bypass }, /* ioctl */
|
||||
{ &vop_poll_desc, vn_fifo_bypass }, /* poll */
|
||||
{ &vop_kqfilter_desc, vn_fifo_bypass }, /* kqfilter */
|
||||
{ &vop_revoke_desc, vn_fifo_bypass }, /* revoke */
|
||||
{ &vop_mmap_desc, vn_fifo_bypass }, /* mmap */
|
||||
{ &vop_fsync_desc, vn_fifo_bypass }, /* fsync */
|
||||
{ &vop_seek_desc, vn_fifo_bypass }, /* seek */
|
||||
{ &vop_remove_desc, vn_fifo_bypass }, /* remove */
|
||||
{ &vop_link_desc, vn_fifo_bypass } , /* link */
|
||||
{ &vop_rename_desc, vn_fifo_bypass }, /* rename */
|
||||
{ &vop_mkdir_desc, vn_fifo_bypass }, /* mkdir */
|
||||
{ &vop_rmdir_desc, vn_fifo_bypass }, /* rmdir */
|
||||
{ &vop_symlink_desc, vn_fifo_bypass }, /* symlink */
|
||||
{ &vop_readdir_desc, vn_fifo_bypass }, /* readdir */
|
||||
{ &vop_readlink_desc, vn_fifo_bypass }, /* readlink */
|
||||
{ &vop_abortop_desc, vn_fifo_bypass }, /* abortop */
|
||||
{ &vop_inactive_desc, cd9660_inactive }, /* inactive */
|
||||
{ &vop_reclaim_desc, cd9660_reclaim }, /* reclaim */
|
||||
{ &vop_lock_desc, genfs_lock }, /* lock */
|
||||
{ &vop_unlock_desc, genfs_unlock }, /* unlock */
|
||||
{ &vop_bmap_desc, fifo_bmap }, /* bmap */
|
||||
{ &vop_strategy_desc, fifo_strategy }, /* strategy */
|
||||
{ &vop_bmap_desc, vn_fifo_bypass }, /* bmap */
|
||||
{ &vop_strategy_desc, vn_fifo_bypass }, /* strategy */
|
||||
{ &vop_print_desc, cd9660_print }, /* print */
|
||||
{ &vop_islocked_desc, genfs_islocked }, /* islocked */
|
||||
{ &vop_pathconf_desc, fifo_pathconf }, /* pathconf */
|
||||
{ &vop_advlock_desc, fifo_advlock }, /* advlock */
|
||||
{ &vop_pathconf_desc, vn_fifo_bypass }, /* pathconf */
|
||||
{ &vop_advlock_desc, vn_fifo_bypass }, /* advlock */
|
||||
{ &vop_bwrite_desc, vn_bwrite }, /* bwrite */
|
||||
{ &vop_putpages_desc, fifo_putpages }, /* putpages */
|
||||
{ &vop_putpages_desc, vn_fifo_bypass }, /* putpages */
|
||||
{ NULL, NULL }
|
||||
};
|
||||
const struct vnodeopv_desc cd9660_fifoop_opv_desc =
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: efs_vnops.c,v 1.20 2009/07/03 22:25:51 pooka Exp $ */
|
||||
/* $NetBSD: efs_vnops.c,v 1.21 2010/03/29 13:11:32 pooka Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2006 Stephen M. Rumble <rumble@ephemeral.org>
|
||||
|
@ -17,7 +17,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: efs_vnops.c,v 1.20 2009/07/03 22:25:51 pooka Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: efs_vnops.c,v 1.21 2010/03/29 13:11:32 pooka Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
|
@ -910,42 +910,42 @@ const struct vnodeopv_desc efs_specop_opv_desc = {
|
|||
int (**efs_fifoop_p)(void *);
|
||||
const struct vnodeopv_entry_desc efs_fifoop_entries[] = {
|
||||
{ &vop_default_desc, vn_default_error}, /* error handler */
|
||||
{ &vop_lookup_desc, fifo_lookup }, /* lookup */
|
||||
{ &vop_create_desc, fifo_create }, /* create */
|
||||
{ &vop_mknod_desc, fifo_mknod }, /* mknod */
|
||||
{ &vop_open_desc, fifo_open }, /* open */
|
||||
{ &vop_close_desc, fifo_close }, /* close */
|
||||
{ &vop_lookup_desc, vn_fifo_bypass }, /* lookup */
|
||||
{ &vop_create_desc, vn_fifo_bypass }, /* create */
|
||||
{ &vop_mknod_desc, vn_fifo_bypass }, /* mknod */
|
||||
{ &vop_open_desc, vn_fifo_bypass }, /* open */
|
||||
{ &vop_close_desc, vn_fifo_bypass }, /* close */
|
||||
{ &vop_access_desc, efs_access }, /* access */
|
||||
{ &vop_getattr_desc, efs_getattr }, /* getattr */
|
||||
{ &vop_setattr_desc, genfs_eopnotsupp}, /* setattr */
|
||||
{ &vop_read_desc, fifo_read }, /* read */
|
||||
{ &vop_write_desc, fifo_write }, /* write */
|
||||
{ &vop_ioctl_desc, fifo_ioctl }, /* ioctl */
|
||||
{ &vop_read_desc, vn_fifo_bypass }, /* read */
|
||||
{ &vop_write_desc, vn_fifo_bypass }, /* write */
|
||||
{ &vop_ioctl_desc, vn_fifo_bypass }, /* ioctl */
|
||||
{ &vop_fcntl_desc, genfs_fcntl }, /* fcntl */
|
||||
{ &vop_poll_desc, fifo_poll }, /* poll */
|
||||
{ &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */
|
||||
{ &vop_revoke_desc, fifo_revoke }, /* revoke */
|
||||
{ &vop_mmap_desc, fifo_mmap }, /* mmap */
|
||||
{ &vop_fsync_desc, fifo_fsync }, /* fsync */
|
||||
{ &vop_seek_desc, fifo_seek }, /* seek */
|
||||
{ &vop_remove_desc, fifo_remove }, /* remove */
|
||||
{ &vop_link_desc, fifo_link }, /* link */
|
||||
{ &vop_rename_desc, fifo_rename }, /* rename */
|
||||
{ &vop_mkdir_desc, fifo_mkdir }, /* mkdir */
|
||||
{ &vop_rmdir_desc, fifo_rmdir }, /* rmdir */
|
||||
{ &vop_symlink_desc, fifo_symlink }, /* symlink */
|
||||
{ &vop_readdir_desc, fifo_readdir }, /* readdir */
|
||||
{ &vop_readlink_desc, fifo_readlink }, /* readlink */
|
||||
{ &vop_abortop_desc, fifo_abortop }, /* abortop */
|
||||
{ &vop_poll_desc, vn_fifo_bypass }, /* poll */
|
||||
{ &vop_kqfilter_desc, vn_fifo_bypass }, /* kqfilter */
|
||||
{ &vop_revoke_desc, vn_fifo_bypass }, /* revoke */
|
||||
{ &vop_mmap_desc, vn_fifo_bypass }, /* mmap */
|
||||
{ &vop_fsync_desc, vn_fifo_bypass }, /* fsync */
|
||||
{ &vop_seek_desc, vn_fifo_bypass }, /* seek */
|
||||
{ &vop_remove_desc, vn_fifo_bypass }, /* remove */
|
||||
{ &vop_link_desc, vn_fifo_bypass }, /* link */
|
||||
{ &vop_rename_desc, vn_fifo_bypass }, /* rename */
|
||||
{ &vop_mkdir_desc, vn_fifo_bypass }, /* mkdir */
|
||||
{ &vop_rmdir_desc, vn_fifo_bypass }, /* rmdir */
|
||||
{ &vop_symlink_desc, vn_fifo_bypass }, /* symlink */
|
||||
{ &vop_readdir_desc, vn_fifo_bypass }, /* readdir */
|
||||
{ &vop_readlink_desc, vn_fifo_bypass }, /* readlink */
|
||||
{ &vop_abortop_desc, vn_fifo_bypass }, /* abortop */
|
||||
{ &vop_inactive_desc, efs_inactive }, /* inactive */
|
||||
{ &vop_reclaim_desc, efs_reclaim }, /* reclaim */
|
||||
{ &vop_lock_desc, genfs_lock, }, /* lock */
|
||||
{ &vop_unlock_desc, genfs_unlock, }, /* unlock */
|
||||
{ &vop_islocked_desc, genfs_islocked, }, /* islocked */
|
||||
{ &vop_bmap_desc, fifo_bmap }, /* bmap */
|
||||
{ &vop_bmap_desc, vn_fifo_bypass }, /* bmap */
|
||||
{ &vop_print_desc, efs_print }, /* print */
|
||||
{ &vop_pathconf_desc, fifo_pathconf }, /* pathconf */
|
||||
{ &vop_advlock_desc, fifo_advlock }, /* advlock */
|
||||
{ &vop_pathconf_desc, vn_fifo_bypass }, /* pathconf */
|
||||
{ &vop_advlock_desc, vn_fifo_bypass }, /* advlock */
|
||||
/* blkatoff */
|
||||
/* valloc */
|
||||
/* balloc */
|
||||
|
@ -953,7 +953,7 @@ const struct vnodeopv_entry_desc efs_fifoop_entries[] = {
|
|||
/* truncate */
|
||||
/* whiteout */
|
||||
{ &vop_bwrite_desc, vn_bwrite }, /* bwrite */
|
||||
{ &vop_strategy_desc, fifo_strategy }, /* strategy */
|
||||
{ &vop_strategy_desc, vn_fifo_bypass }, /* strategy */
|
||||
{ NULL, NULL }
|
||||
};
|
||||
const struct vnodeopv_desc efs_fifoop_opv_desc = {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: hfs_vnops.c,v 1.16 2010/01/08 11:35:08 pooka Exp $ */
|
||||
/* $NetBSD: hfs_vnops.c,v 1.17 2010/03/29 13:11:33 pooka Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2005, 2007 The NetBSD Foundation, Inc.
|
||||
|
@ -101,7 +101,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: hfs_vnops.c,v 1.16 2010/01/08 11:35:08 pooka Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: hfs_vnops.c,v 1.17 2010/03/29 13:11:33 pooka Exp $");
|
||||
|
||||
#ifdef _KERNEL_OPT
|
||||
#include "opt_ipsec.h"
|
||||
|
@ -259,45 +259,45 @@ const struct vnodeopv_desc hfs_specop_opv_desc =
|
|||
int (**hfs_fifoop_p) (void *);
|
||||
const struct vnodeopv_entry_desc hfs_fifoop_entries[] = {
|
||||
{ &vop_default_desc, vn_default_error },
|
||||
{ &vop_lookup_desc, fifo_lookup }, /* lookup */
|
||||
{ &vop_create_desc, fifo_create }, /* create */
|
||||
{ &vop_mknod_desc, fifo_mknod }, /* mknod */
|
||||
{ &vop_open_desc, fifo_open }, /* open */
|
||||
{ &vop_close_desc, fifo_close }, /* close */
|
||||
{ &vop_lookup_desc, vn_fifo_bypass }, /* lookup */
|
||||
{ &vop_create_desc, vn_fifo_bypass }, /* create */
|
||||
{ &vop_mknod_desc, vn_fifo_bypass }, /* mknod */
|
||||
{ &vop_open_desc, vn_fifo_bypass }, /* open */
|
||||
{ &vop_close_desc, vn_fifo_bypass }, /* close */
|
||||
{ &vop_access_desc, hfs_vop_access }, /* access */
|
||||
{ &vop_getattr_desc, hfs_vop_getattr }, /* getattr */
|
||||
{ &vop_setattr_desc, hfs_vop_setattr }, /* setattr */
|
||||
{ &vop_read_desc, fifo_read }, /* read */
|
||||
{ &vop_write_desc, fifo_write }, /* write */
|
||||
{ &vop_ioctl_desc, fifo_ioctl }, /* ioctl */
|
||||
{ &vop_read_desc, vn_fifo_bypass }, /* read */
|
||||
{ &vop_write_desc, vn_fifo_bypass }, /* write */
|
||||
{ &vop_ioctl_desc, vn_fifo_bypass }, /* ioctl */
|
||||
{ &vop_fcntl_desc, genfs_fcntl }, /* fcntl */
|
||||
{ &vop_poll_desc, fifo_poll }, /* poll */
|
||||
{ &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */
|
||||
{ &vop_revoke_desc, fifo_revoke }, /* revoke */
|
||||
{ &vop_mmap_desc, fifo_mmap }, /* mmap */
|
||||
{ &vop_fsync_desc, fifo_fsync }, /* fsync */
|
||||
{ &vop_seek_desc, fifo_seek }, /* seek */
|
||||
{ &vop_remove_desc, fifo_remove }, /* remove */
|
||||
{ &vop_link_desc, fifo_link }, /* link */
|
||||
{ &vop_rename_desc, fifo_rename }, /* rename */
|
||||
{ &vop_mkdir_desc, fifo_mkdir }, /* mkdir */
|
||||
{ &vop_rmdir_desc, fifo_rmdir }, /* rmdir */
|
||||
{ &vop_symlink_desc, fifo_symlink }, /* symlink */
|
||||
{ &vop_readdir_desc, fifo_readdir }, /* readdir */
|
||||
{ &vop_readlink_desc, fifo_readlink }, /* readlink */
|
||||
{ &vop_abortop_desc, fifo_abortop }, /* abortop */
|
||||
{ &vop_poll_desc, vn_fifo_bypass }, /* poll */
|
||||
{ &vop_kqfilter_desc, vn_fifo_bypass }, /* kqfilter */
|
||||
{ &vop_revoke_desc, vn_fifo_bypass }, /* revoke */
|
||||
{ &vop_mmap_desc, vn_fifo_bypass }, /* mmap */
|
||||
{ &vop_fsync_desc, vn_fifo_bypass }, /* fsync */
|
||||
{ &vop_seek_desc, vn_fifo_bypass }, /* seek */
|
||||
{ &vop_remove_desc, vn_fifo_bypass }, /* remove */
|
||||
{ &vop_link_desc, vn_fifo_bypass }, /* link */
|
||||
{ &vop_rename_desc, vn_fifo_bypass }, /* rename */
|
||||
{ &vop_mkdir_desc, vn_fifo_bypass }, /* mkdir */
|
||||
{ &vop_rmdir_desc, vn_fifo_bypass }, /* rmdir */
|
||||
{ &vop_symlink_desc, vn_fifo_bypass }, /* symlink */
|
||||
{ &vop_readdir_desc, vn_fifo_bypass }, /* readdir */
|
||||
{ &vop_readlink_desc, vn_fifo_bypass }, /* readlink */
|
||||
{ &vop_abortop_desc, vn_fifo_bypass }, /* abortop */
|
||||
{ &vop_inactive_desc, genfs_eopnotsupp }, /* inactive */
|
||||
{ &vop_reclaim_desc, hfs_vop_reclaim }, /* reclaim */
|
||||
{ &vop_lock_desc, genfs_lock }, /* lock */
|
||||
{ &vop_unlock_desc, genfs_unlock }, /* unlock */
|
||||
{ &vop_bmap_desc, fifo_bmap }, /* bmap */
|
||||
{ &vop_strategy_desc, fifo_strategy }, /* strategy */
|
||||
{ &vop_bmap_desc, vn_fifo_bypass }, /* bmap */
|
||||
{ &vop_strategy_desc, vn_fifo_bypass }, /* strategy */
|
||||
{ &vop_print_desc, hfs_vop_print }, /* print */
|
||||
{ &vop_islocked_desc, genfs_islocked }, /* islocked */
|
||||
{ &vop_pathconf_desc, fifo_pathconf }, /* pathconf */
|
||||
{ &vop_advlock_desc, fifo_advlock }, /* advlock */
|
||||
{ &vop_pathconf_desc, vn_fifo_bypass }, /* pathconf */
|
||||
{ &vop_advlock_desc, vn_fifo_bypass }, /* advlock */
|
||||
{ &vop_bwrite_desc, vn_bwrite }, /* bwrite */
|
||||
{ &vop_putpages_desc, fifo_putpages }, /* putpages */
|
||||
{ &vop_putpages_desc, vn_fifo_bypass }, /* putpages */
|
||||
#if 0
|
||||
{ &vop_openextattr_desc, ffs_openextattr }, /* openextattr */
|
||||
{ &vop_closeextattr_desc, ffs_closeextattr }, /* closeextattr */
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: puffs_vnops.c,v 1.143 2010/03/27 02:37:35 pooka Exp $ */
|
||||
/* $NetBSD: puffs_vnops.c,v 1.144 2010/03/29 13:11:33 pooka Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, 2006, 2007 Antti Kantee. All Rights Reserved.
|
||||
|
@ -30,7 +30,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: puffs_vnops.c,v 1.143 2010/03/27 02:37:35 pooka Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: puffs_vnops.c,v 1.144 2010/03/29 13:11:33 pooka Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/buf.h>
|
||||
|
@ -202,45 +202,45 @@ const struct vnodeopv_desc puffs_specop_opv_desc =
|
|||
int (**puffs_fifoop_p)(void *);
|
||||
const struct vnodeopv_entry_desc puffs_fifoop_entries[] = {
|
||||
{ &vop_default_desc, vn_default_error },
|
||||
{ &vop_lookup_desc, fifo_lookup }, /* lookup, ENOTDIR */
|
||||
{ &vop_create_desc, fifo_create }, /* genfs_badop */
|
||||
{ &vop_mknod_desc, fifo_mknod }, /* genfs_badop */
|
||||
{ &vop_open_desc, fifo_open }, /* open */
|
||||
{ &vop_close_desc, fifo_close }, /* close */
|
||||
{ &vop_lookup_desc, vn_fifo_bypass }, /* lookup, ENOTDIR */
|
||||
{ &vop_create_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_mknod_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_open_desc, vn_fifo_bypass }, /* open */
|
||||
{ &vop_close_desc, vn_fifo_bypass }, /* close */
|
||||
{ &vop_access_desc, puffs_vnop_checkop }, /* access */
|
||||
{ &vop_getattr_desc, puffs_vnop_checkop }, /* getattr */
|
||||
{ &vop_setattr_desc, puffs_vnop_checkop }, /* setattr */
|
||||
{ &vop_read_desc, puffs_vnop_fifo_read }, /* read, update */
|
||||
{ &vop_write_desc, puffs_vnop_fifo_write }, /* write, update */
|
||||
{ &vop_ioctl_desc, fifo_ioctl }, /* ioctl */
|
||||
{ &vop_ioctl_desc, vn_fifo_bypass }, /* ioctl */
|
||||
{ &vop_fcntl_desc, genfs_fcntl }, /* dummy */
|
||||
{ &vop_poll_desc, fifo_poll }, /* poll */
|
||||
{ &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */
|
||||
{ &vop_revoke_desc, fifo_revoke }, /* genfs_revoke */
|
||||
{ &vop_mmap_desc, fifo_mmap }, /* genfs_badop */
|
||||
{ &vop_fsync_desc, fifo_fsync }, /* genfs_nullop*/
|
||||
{ &vop_seek_desc, fifo_seek }, /* genfs_badop */
|
||||
{ &vop_remove_desc, fifo_remove }, /* genfs_badop */
|
||||
{ &vop_link_desc, fifo_link }, /* genfs_badop */
|
||||
{ &vop_rename_desc, fifo_rename }, /* genfs_badop */
|
||||
{ &vop_mkdir_desc, fifo_mkdir }, /* genfs_badop */
|
||||
{ &vop_rmdir_desc, fifo_rmdir }, /* genfs_badop */
|
||||
{ &vop_symlink_desc, fifo_symlink }, /* genfs_badop */
|
||||
{ &vop_readdir_desc, fifo_readdir }, /* genfs_badop */
|
||||
{ &vop_readlink_desc, fifo_readlink }, /* genfs_badop */
|
||||
{ &vop_abortop_desc, fifo_abortop }, /* genfs_badop */
|
||||
{ &vop_poll_desc, vn_fifo_bypass }, /* poll */
|
||||
{ &vop_kqfilter_desc, vn_fifo_bypass }, /* kqfilter */
|
||||
{ &vop_revoke_desc, vn_fifo_bypass }, /* genfs_revoke */
|
||||
{ &vop_mmap_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_fsync_desc, vn_fifo_bypass }, /* genfs_nullop*/
|
||||
{ &vop_seek_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_remove_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_link_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_rename_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_mkdir_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_rmdir_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_symlink_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_readdir_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_readlink_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_abortop_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_inactive_desc, puffs_vnop_inactive }, /* REAL inactive */
|
||||
{ &vop_reclaim_desc, puffs_vnop_reclaim }, /* REAL reclaim */
|
||||
{ &vop_lock_desc, puffs_vnop_lock }, /* REAL lock */
|
||||
{ &vop_unlock_desc, puffs_vnop_unlock }, /* REAL unlock */
|
||||
{ &vop_bmap_desc, fifo_bmap }, /* dummy */
|
||||
{ &vop_strategy_desc, fifo_strategy }, /* genfs_badop */
|
||||
{ &vop_bmap_desc, vn_fifo_bypass }, /* dummy */
|
||||
{ &vop_strategy_desc, vn_fifo_bypass }, /* genfs_badop */
|
||||
{ &vop_print_desc, puffs_vnop_print }, /* REAL print */
|
||||
{ &vop_islocked_desc, puffs_vnop_islocked }, /* REAL islocked */
|
||||
{ &vop_pathconf_desc, fifo_pathconf }, /* pathconf */
|
||||
{ &vop_advlock_desc, fifo_advlock }, /* genfs_einval */
|
||||
{ &vop_pathconf_desc, vn_fifo_bypass }, /* pathconf */
|
||||
{ &vop_advlock_desc, vn_fifo_bypass }, /* genfs_einval */
|
||||
{ &vop_bwrite_desc, vn_bwrite }, /* bwrite */
|
||||
{ &vop_putpages_desc, fifo_putpages }, /* genfs_null_putpages*/
|
||||
{ &vop_putpages_desc, vn_fifo_bypass }, /* genfs_null_putpages*/
|
||||
#if 0
|
||||
{ &vop_openextattr_desc, _openextattr }, /* openextattr */
|
||||
{ &vop_closeextattr_desc, _closeextattr }, /* closeextattr */
|
||||
|
@ -2055,10 +2055,10 @@ puffs_vnop_print(void *v)
|
|||
int error;
|
||||
|
||||
/* kernel portion */
|
||||
printf("tag VT_PUFFS, vnode %p, puffs node: %p"
|
||||
" userspace cookie: %p\n", vp, pn, pn->pn_cookie);
|
||||
printf("tag VT_PUFFS, vnode %p, puffs node: %p,\n"
|
||||
"\tuserspace cookie: %p", vp, pn, pn->pn_cookie);
|
||||
if (vp->v_type == VFIFO)
|
||||
fifo_printinfo(vp);
|
||||
VOCALL(fifo_vnodeop_p, VOFFSET(vop_print), v);
|
||||
printf("\n");
|
||||
|
||||
/* userspace portion */
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: tmpfs_fifoops.h,v 1.6 2008/04/28 20:24:02 martin Exp $ */
|
||||
/* $NetBSD: tmpfs_fifoops.h,v 1.7 2010/03/29 13:11:33 pooka Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005 The NetBSD Foundation, Inc.
|
||||
|
@ -48,10 +48,10 @@
|
|||
|
||||
extern int (**tmpfs_fifoop_p)(void *);
|
||||
|
||||
#define tmpfs_fifo_lookup fifo_lookup
|
||||
#define tmpfs_fifo_create fifo_create
|
||||
#define tmpfs_fifo_mknod fifo_mknod
|
||||
#define tmpfs_fifo_open fifo_open
|
||||
#define tmpfs_fifo_lookup vn_fifo_bypass
|
||||
#define tmpfs_fifo_create vn_fifo_bypass
|
||||
#define tmpfs_fifo_mknod vn_fifo_bypass
|
||||
#define tmpfs_fifo_open vn_fifo_bypass
|
||||
int tmpfs_fifo_close (void *);
|
||||
#define tmpfs_fifo_access tmpfs_access
|
||||
#define tmpfs_fifo_getattr tmpfs_getattr
|
||||
|
@ -59,35 +59,35 @@ int tmpfs_fifo_close (void *);
|
|||
int tmpfs_fifo_read (void *);
|
||||
int tmpfs_fifo_write (void *);
|
||||
#define tmpfs_fifo_fcntl tmpfs_fcntl
|
||||
#define tmpfs_fifo_ioctl fifo_ioctl
|
||||
#define tmpfs_fifo_poll fifo_poll
|
||||
#define tmpfs_fifo_kqfilter fifo_kqfilter
|
||||
#define tmpfs_fifo_revoke fifo_revoke
|
||||
#define tmpfs_fifo_mmap fifo_mmap
|
||||
#define tmpfs_fifo_fsync fifo_fsync
|
||||
#define tmpfs_fifo_seek fifo_seek
|
||||
#define tmpfs_fifo_remove fifo_remove
|
||||
#define tmpfs_fifo_link fifo_link
|
||||
#define tmpfs_fifo_rename fifo_rename
|
||||
#define tmpfs_fifo_mkdir fifo_mkdir
|
||||
#define tmpfs_fifo_rmdir fifo_rmdir
|
||||
#define tmpfs_fifo_symlink fifo_symlink
|
||||
#define tmpfs_fifo_readdir fifo_readdir
|
||||
#define tmpfs_fifo_readlink fifo_readlink
|
||||
#define tmpfs_fifo_abortop fifo_abortop
|
||||
#define tmpfs_fifo_ioctl vn_fifo_bypass
|
||||
#define tmpfs_fifo_poll vn_fifo_bypass
|
||||
#define tmpfs_fifo_kqfilter vn_fifo_bypass
|
||||
#define tmpfs_fifo_revoke vn_fifo_bypass
|
||||
#define tmpfs_fifo_mmap vn_fifo_bypass
|
||||
#define tmpfs_fifo_fsync vn_fifo_bypass
|
||||
#define tmpfs_fifo_seek vn_fifo_bypass
|
||||
#define tmpfs_fifo_remove vn_fifo_bypass
|
||||
#define tmpfs_fifo_link vn_fifo_bypass
|
||||
#define tmpfs_fifo_rename vn_fifo_bypass
|
||||
#define tmpfs_fifo_mkdir vn_fifo_bypass
|
||||
#define tmpfs_fifo_rmdir vn_fifo_bypass
|
||||
#define tmpfs_fifo_symlink vn_fifo_bypass
|
||||
#define tmpfs_fifo_readdir vn_fifo_bypass
|
||||
#define tmpfs_fifo_readlink vn_fifo_bypass
|
||||
#define tmpfs_fifo_abortop vn_fifo_bypass
|
||||
#define tmpfs_fifo_inactive tmpfs_inactive
|
||||
#define tmpfs_fifo_reclaim tmpfs_reclaim
|
||||
#define tmpfs_fifo_lock tmpfs_lock
|
||||
#define tmpfs_fifo_unlock tmpfs_unlock
|
||||
#define tmpfs_fifo_bmap fifo_bmap
|
||||
#define tmpfs_fifo_strategy fifo_strategy
|
||||
#define tmpfs_fifo_bmap vn_fifo_bypass
|
||||
#define tmpfs_fifo_strategy vn_fifo_bypass
|
||||
#define tmpfs_fifo_print tmpfs_print
|
||||
#define tmpfs_fifo_pathconf fifo_pathconf
|
||||
#define tmpfs_fifo_pathconf vn_fifo_bypass
|
||||
#define tmpfs_fifo_islocked tmpfs_islocked
|
||||
#define tmpfs_fifo_advlock fifo_advlock
|
||||
#define tmpfs_fifo_advlock vn_fifo_bypass
|
||||
#define tmpfs_fifo_bwrite tmpfs_bwrite
|
||||
#define tmpfs_fifo_getpages genfs_badop
|
||||
#define tmpfs_fifo_putpages fifo_putpages
|
||||
#define tmpfs_fifo_putpages vn_fifo_bypass
|
||||
|
||||
/* --------------------------------------------------------------------- */
|
||||
#endif /* _FS_TMPFS_TMPFS_FIFOOPS_H_ */
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: tmpfs_vnops.c,v 1.67 2010/03/27 02:37:34 pooka Exp $ */
|
||||
/* $NetBSD: tmpfs_vnops.c,v 1.68 2010/03/29 13:11:33 pooka Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2005, 2006, 2007 The NetBSD Foundation, Inc.
|
||||
|
@ -35,7 +35,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: tmpfs_vnops.c,v 1.67 2010/03/27 02:37:34 pooka Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: tmpfs_vnops.c,v 1.68 2010/03/29 13:11:33 pooka Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/dirent.h>
|
||||
|
@ -1340,7 +1340,7 @@ tmpfs_print(void *v)
|
|||
node->tn_mode, node->tn_uid, node->tn_gid,
|
||||
(uintmax_t)node->tn_size, node->tn_status);
|
||||
if (vp->v_type == VFIFO)
|
||||
fifo_printinfo(vp);
|
||||
VOCALL(fifo_vnodeop_p, VOFFSET(vop_print), v);
|
||||
printf("\n");
|
||||
|
||||
return 0;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: vfs_vnops.c,v 1.169 2010/01/08 11:35:10 pooka Exp $ */
|
||||
/* $NetBSD: vfs_vnops.c,v 1.170 2010/03/29 13:11:32 pooka Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2009 The NetBSD Foundation, Inc.
|
||||
|
@ -66,7 +66,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: vfs_vnops.c,v 1.169 2010/01/08 11:35:10 pooka Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: vfs_vnops.c,v 1.170 2010/03/29 13:11:32 pooka Exp $");
|
||||
|
||||
#include "veriexec.h"
|
||||
|
||||
|
@ -91,6 +91,7 @@ __KERNEL_RCSID(0, "$NetBSD: vfs_vnops.c,v 1.169 2010/01/08 11:35:10 pooka Exp $"
|
|||
#include <sys/wapbl.h>
|
||||
|
||||
#include <miscfs/specfs/specdev.h>
|
||||
#include <miscfs/fifofs/fifo.h>
|
||||
|
||||
#include <uvm/uvm_extern.h>
|
||||
#include <uvm/uvm_readahead.h>
|
||||
|
@ -924,3 +925,11 @@ vn_ra_allocctx(struct vnode *vp)
|
|||
uvm_ra_freectx(ra);
|
||||
}
|
||||
}
|
||||
|
||||
int
|
||||
vn_fifo_bypass(void *v)
|
||||
{
|
||||
struct vop_generic_args *ap = v;
|
||||
|
||||
return VOCALL(fifo_vnodeop_p, ap->a_desc->vdesc_offset, v);
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: fifo.h,v 1.25 2008/01/25 14:32:15 ad Exp $ */
|
||||
/* $NetBSD: fifo.h,v 1.26 2010/03/29 13:11:33 pooka Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1991, 1993
|
||||
|
@ -31,48 +31,4 @@
|
|||
* @(#)fifo.h 8.6 (Berkeley) 5/21/95
|
||||
*/
|
||||
|
||||
/*
|
||||
* Prototypes for fifo operations on vnodes.
|
||||
*/
|
||||
int fifo_lookup(void *);
|
||||
#define fifo_create genfs_badop
|
||||
#define fifo_mknod genfs_badop
|
||||
int fifo_open(void *);
|
||||
int fifo_close(void *);
|
||||
#define fifo_access genfs_ebadf
|
||||
#define fifo_getattr genfs_ebadf
|
||||
#define fifo_setattr genfs_ebadf
|
||||
int fifo_read(void *);
|
||||
int fifo_write(void *);
|
||||
int fifo_ioctl(void *);
|
||||
int fifo_poll(void *);
|
||||
int fifo_kqfilter(void *);
|
||||
#define fifo_revoke genfs_revoke
|
||||
#define fifo_mmap genfs_badop
|
||||
#define fifo_fsync genfs_nullop
|
||||
#define fifo_seek genfs_badop
|
||||
#define fifo_remove genfs_badop
|
||||
#define fifo_link genfs_badop
|
||||
#define fifo_rename genfs_badop
|
||||
#define fifo_mkdir genfs_badop
|
||||
#define fifo_rmdir genfs_badop
|
||||
#define fifo_symlink genfs_badop
|
||||
#define fifo_readdir genfs_badop
|
||||
#define fifo_readlink genfs_badop
|
||||
#define fifo_abortop genfs_badop
|
||||
#define fifo_reclaim genfs_nullop
|
||||
#define fifo_lock genfs_lock
|
||||
#define fifo_unlock genfs_unlock
|
||||
int fifo_inactive(void *);
|
||||
int fifo_bmap(void *);
|
||||
#define fifo_strategy genfs_badop
|
||||
int fifo_print(void *);
|
||||
#define fifo_islocked genfs_islocked
|
||||
int fifo_pathconf(void *);
|
||||
#define fifo_advlock genfs_einval
|
||||
#define fifo_bwrite genfs_nullop
|
||||
#define fifo_putpages genfs_null_putpages
|
||||
|
||||
void fifo_printinfo(struct vnode *);
|
||||
|
||||
extern int (**fifo_vnodeop_p)(void *);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: fifo_vnops.c,v 1.67 2010/03/27 02:33:11 pooka Exp $ */
|
||||
/* $NetBSD: fifo_vnops.c,v 1.68 2010/03/29 13:11:33 pooka Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2008 The NetBSD Foundation, Inc.
|
||||
|
@ -58,7 +58,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: fifo_vnops.c,v 1.67 2010/03/27 02:33:11 pooka Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: fifo_vnops.c,v 1.68 2010/03/29 13:11:33 pooka Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
|
@ -95,57 +95,11 @@ struct fifoinfo {
|
|||
int fi_writers;
|
||||
};
|
||||
|
||||
int (**fifo_vnodeop_p)(void *);
|
||||
const struct vnodeopv_entry_desc fifo_vnodeop_entries[] = {
|
||||
{ &vop_default_desc, vn_default_error },
|
||||
{ &vop_lookup_desc, fifo_lookup }, /* lookup */
|
||||
{ &vop_create_desc, fifo_create }, /* create */
|
||||
{ &vop_mknod_desc, fifo_mknod }, /* mknod */
|
||||
{ &vop_open_desc, fifo_open }, /* open */
|
||||
{ &vop_close_desc, fifo_close }, /* close */
|
||||
{ &vop_access_desc, fifo_access }, /* access */
|
||||
{ &vop_getattr_desc, fifo_getattr }, /* getattr */
|
||||
{ &vop_setattr_desc, fifo_setattr }, /* setattr */
|
||||
{ &vop_read_desc, fifo_read }, /* read */
|
||||
{ &vop_write_desc, fifo_write }, /* write */
|
||||
{ &vop_ioctl_desc, fifo_ioctl }, /* ioctl */
|
||||
{ &vop_poll_desc, fifo_poll }, /* poll */
|
||||
{ &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */
|
||||
{ &vop_revoke_desc, fifo_revoke }, /* revoke */
|
||||
{ &vop_mmap_desc, fifo_mmap }, /* mmap */
|
||||
{ &vop_fsync_desc, fifo_fsync }, /* fsync */
|
||||
{ &vop_seek_desc, fifo_seek }, /* seek */
|
||||
{ &vop_remove_desc, fifo_remove }, /* remove */
|
||||
{ &vop_link_desc, fifo_link }, /* link */
|
||||
{ &vop_rename_desc, fifo_rename }, /* rename */
|
||||
{ &vop_mkdir_desc, fifo_mkdir }, /* mkdir */
|
||||
{ &vop_rmdir_desc, fifo_rmdir }, /* rmdir */
|
||||
{ &vop_symlink_desc, fifo_symlink }, /* symlink */
|
||||
{ &vop_readdir_desc, fifo_readdir }, /* readdir */
|
||||
{ &vop_readlink_desc, fifo_readlink }, /* readlink */
|
||||
{ &vop_abortop_desc, fifo_abortop }, /* abortop */
|
||||
{ &vop_inactive_desc, fifo_inactive }, /* inactive */
|
||||
{ &vop_reclaim_desc, fifo_reclaim }, /* reclaim */
|
||||
{ &vop_lock_desc, fifo_lock }, /* lock */
|
||||
{ &vop_unlock_desc, fifo_unlock }, /* unlock */
|
||||
{ &vop_bmap_desc, fifo_bmap }, /* bmap */
|
||||
{ &vop_strategy_desc, fifo_strategy }, /* strategy */
|
||||
{ &vop_print_desc, fifo_print }, /* print */
|
||||
{ &vop_islocked_desc, fifo_islocked }, /* islocked */
|
||||
{ &vop_pathconf_desc, fifo_pathconf }, /* pathconf */
|
||||
{ &vop_advlock_desc, fifo_advlock }, /* advlock */
|
||||
{ &vop_bwrite_desc, fifo_bwrite }, /* bwrite */
|
||||
{ &vop_putpages_desc, fifo_putpages }, /* putpages */
|
||||
{ (struct vnodeop_desc*)NULL, (int(*)(void *))NULL }
|
||||
};
|
||||
const struct vnodeopv_desc fifo_vnodeop_opv_desc =
|
||||
{ &fifo_vnodeop_p, fifo_vnodeop_entries };
|
||||
|
||||
/*
|
||||
* Trivial lookup routine that always fails.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
int
|
||||
static int
|
||||
fifo_lookup(void *v)
|
||||
{
|
||||
struct vop_lookup_args /* {
|
||||
|
@ -163,7 +117,7 @@ fifo_lookup(void *v)
|
|||
* to find an active instance of a fifo.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
int
|
||||
static int
|
||||
fifo_open(void *v)
|
||||
{
|
||||
struct vop_open_args /* {
|
||||
|
@ -278,7 +232,7 @@ fifo_open(void *v)
|
|||
* Vnode op for read
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
int
|
||||
static int
|
||||
fifo_read(void *v)
|
||||
{
|
||||
struct vop_read_args /* {
|
||||
|
@ -326,7 +280,7 @@ fifo_read(void *v)
|
|||
* Vnode op for write
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
int
|
||||
static int
|
||||
fifo_write(void *v)
|
||||
{
|
||||
struct vop_write_args /* {
|
||||
|
@ -359,7 +313,7 @@ fifo_write(void *v)
|
|||
* Device ioctl operation.
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
int
|
||||
static int
|
||||
fifo_ioctl(void *v)
|
||||
{
|
||||
struct vop_ioctl_args /* {
|
||||
|
@ -391,7 +345,7 @@ fifo_ioctl(void *v)
|
|||
}
|
||||
|
||||
/* ARGSUSED */
|
||||
int
|
||||
static int
|
||||
fifo_poll(void *v)
|
||||
{
|
||||
struct vop_poll_args /* {
|
||||
|
@ -417,7 +371,7 @@ fifo_poll(void *v)
|
|||
return (revents);
|
||||
}
|
||||
|
||||
int
|
||||
static int
|
||||
fifo_inactive(void *v)
|
||||
{
|
||||
struct vop_inactive_args /* {
|
||||
|
@ -432,7 +386,7 @@ fifo_inactive(void *v)
|
|||
/*
|
||||
* This is a noop, simply returning what one has been given.
|
||||
*/
|
||||
int
|
||||
static int
|
||||
fifo_bmap(void *v)
|
||||
{
|
||||
struct vop_bmap_args /* {
|
||||
|
@ -456,7 +410,7 @@ fifo_bmap(void *v)
|
|||
* Device close routine
|
||||
*/
|
||||
/* ARGSUSED */
|
||||
int
|
||||
static int
|
||||
fifo_close(void *v)
|
||||
{
|
||||
struct vop_close_args /* {
|
||||
|
@ -504,40 +458,45 @@ fifo_close(void *v)
|
|||
return (0);
|
||||
}
|
||||
|
||||
/*
|
||||
* Print out internal contents of a fifo vnode.
|
||||
*/
|
||||
static void
|
||||
fifo_printinfo(struct vnode *vp)
|
||||
{
|
||||
struct fifoinfo *fip;
|
||||
|
||||
fip = vp->v_fifoinfo;
|
||||
printf(", fifo with %d readers and %d writers",
|
||||
fip->fi_readers, fip->fi_writers);
|
||||
}
|
||||
|
||||
/*
|
||||
* Print out the contents of a fifo vnode.
|
||||
*/
|
||||
int
|
||||
static int
|
||||
fifo_print(void *v)
|
||||
{
|
||||
struct vop_print_args /* {
|
||||
struct vnode *a_vp;
|
||||
} */ *ap = v;
|
||||
|
||||
/*
|
||||
* We are most likely being called with the vnode belonging
|
||||
* to some file system and this is not printed.
|
||||
*/
|
||||
if (ap->a_vp->v_tag == VT_NON)
|
||||
printf("tag VT_NON");
|
||||
|
||||
fifo_printinfo(ap->a_vp);
|
||||
printf("\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Print out internal contents of a fifo vnode.
|
||||
*/
|
||||
void
|
||||
fifo_printinfo(struct vnode *vp)
|
||||
{
|
||||
struct fifoinfo *fip;
|
||||
|
||||
if ((fip = vp->v_fifoinfo) != NULL) {
|
||||
printf(", fifo with %d readers and %d writers",
|
||||
fip->fi_readers, fip->fi_writers);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Return POSIX pathconf information applicable to fifo's.
|
||||
*/
|
||||
int
|
||||
static int
|
||||
fifo_pathconf(void *v)
|
||||
{
|
||||
struct vop_pathconf_args /* {
|
||||
|
@ -641,7 +600,7 @@ static const struct filterops fifowrite_filtops =
|
|||
{ 1, NULL, filt_fifowdetach, filt_fifowrite };
|
||||
|
||||
/* ARGSUSED */
|
||||
int
|
||||
static int
|
||||
fifo_kqfilter(void *v)
|
||||
{
|
||||
struct vop_kqfilter_args /* {
|
||||
|
@ -674,3 +633,49 @@ fifo_kqfilter(void *v)
|
|||
|
||||
return (0);
|
||||
}
|
||||
|
||||
int (**fifo_vnodeop_p)(void *);
|
||||
const struct vnodeopv_entry_desc fifo_vnodeop_entries[] = {
|
||||
{ &vop_default_desc, vn_default_error },
|
||||
{ &vop_lookup_desc, fifo_lookup }, /* lookup */
|
||||
{ &vop_create_desc, genfs_badop }, /* create */
|
||||
{ &vop_mknod_desc, genfs_badop }, /* mknod */
|
||||
{ &vop_open_desc, fifo_open }, /* open */
|
||||
{ &vop_close_desc, fifo_close }, /* close */
|
||||
{ &vop_access_desc, genfs_ebadf }, /* access */
|
||||
{ &vop_getattr_desc, genfs_ebadf }, /* getattr */
|
||||
{ &vop_setattr_desc, genfs_ebadf }, /* setattr */
|
||||
{ &vop_read_desc, fifo_read }, /* read */
|
||||
{ &vop_write_desc, fifo_write }, /* write */
|
||||
{ &vop_ioctl_desc, fifo_ioctl }, /* ioctl */
|
||||
{ &vop_poll_desc, fifo_poll }, /* poll */
|
||||
{ &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */
|
||||
{ &vop_revoke_desc, genfs_revoke }, /* revoke */
|
||||
{ &vop_mmap_desc, genfs_badop }, /* mmap */
|
||||
{ &vop_fsync_desc, genfs_nullop }, /* fsync */
|
||||
{ &vop_seek_desc, genfs_badop }, /* seek */
|
||||
{ &vop_remove_desc, genfs_badop }, /* remove */
|
||||
{ &vop_link_desc, genfs_badop }, /* link */
|
||||
{ &vop_rename_desc, genfs_badop }, /* rename */
|
||||
{ &vop_mkdir_desc, genfs_badop }, /* mkdir */
|
||||
{ &vop_rmdir_desc, genfs_badop }, /* rmdir */
|
||||
{ &vop_symlink_desc, genfs_badop }, /* symlink */
|
||||
{ &vop_readdir_desc, genfs_badop }, /* readdir */
|
||||
{ &vop_readlink_desc, genfs_badop }, /* readlink */
|
||||
{ &vop_abortop_desc, genfs_badop }, /* abortop */
|
||||
{ &vop_inactive_desc, fifo_inactive }, /* inactive */
|
||||
{ &vop_reclaim_desc, genfs_nullop }, /* reclaim */
|
||||
{ &vop_lock_desc, genfs_lock }, /* lock */
|
||||
{ &vop_unlock_desc, genfs_unlock }, /* unlock */
|
||||
{ &vop_bmap_desc, fifo_bmap }, /* bmap */
|
||||
{ &vop_strategy_desc, genfs_badop }, /* strategy */
|
||||
{ &vop_print_desc, fifo_print }, /* print */
|
||||
{ &vop_islocked_desc, genfs_islocked }, /* islocked */
|
||||
{ &vop_pathconf_desc, fifo_pathconf }, /* pathconf */
|
||||
{ &vop_advlock_desc, genfs_einval }, /* advlock */
|
||||
{ &vop_bwrite_desc, genfs_nullop }, /* bwrite */
|
||||
{ &vop_putpages_desc, genfs_null_putpages }, /* putpages */
|
||||
{ (struct vnodeop_desc*)NULL, (int(*)(void *))NULL }
|
||||
};
|
||||
const struct vnodeopv_desc fifo_vnodeop_opv_desc =
|
||||
{ &fifo_vnodeop_p, fifo_vnodeop_entries };
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: nfs_vnops.c,v 1.282 2010/01/08 11:35:11 pooka Exp $ */
|
||||
/* $NetBSD: nfs_vnops.c,v 1.283 2010/03/29 13:11:33 pooka Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1989, 1993
|
||||
|
@ -39,7 +39,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: nfs_vnops.c,v 1.282 2010/01/08 11:35:11 pooka Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: nfs_vnops.c,v 1.283 2010/03/29 13:11:33 pooka Exp $");
|
||||
|
||||
#ifdef _KERNEL_OPT
|
||||
#include "opt_nfs.h"
|
||||
|
@ -195,10 +195,10 @@ const struct vnodeopv_desc spec_nfsv2nodeop_opv_desc =
|
|||
int (**fifo_nfsv2nodeop_p)(void *);
|
||||
const struct vnodeopv_entry_desc fifo_nfsv2nodeop_entries[] = {
|
||||
{ &vop_default_desc, vn_default_error },
|
||||
{ &vop_lookup_desc, fifo_lookup }, /* lookup */
|
||||
{ &vop_create_desc, fifo_create }, /* create */
|
||||
{ &vop_mknod_desc, fifo_mknod }, /* mknod */
|
||||
{ &vop_open_desc, fifo_open }, /* open */
|
||||
{ &vop_lookup_desc, vn_fifo_bypass }, /* lookup */
|
||||
{ &vop_create_desc, vn_fifo_bypass }, /* create */
|
||||
{ &vop_mknod_desc, vn_fifo_bypass }, /* mknod */
|
||||
{ &vop_open_desc, vn_fifo_bypass }, /* open */
|
||||
{ &vop_close_desc, nfsfifo_close }, /* close */
|
||||
{ &vop_access_desc, nfsspec_access }, /* access */
|
||||
{ &vop_getattr_desc, nfs_getattr }, /* getattr */
|
||||
|
@ -206,34 +206,34 @@ const struct vnodeopv_entry_desc fifo_nfsv2nodeop_entries[] = {
|
|||
{ &vop_read_desc, nfsfifo_read }, /* read */
|
||||
{ &vop_write_desc, nfsfifo_write }, /* write */
|
||||
{ &vop_fcntl_desc, genfs_fcntl }, /* fcntl */
|
||||
{ &vop_ioctl_desc, fifo_ioctl }, /* ioctl */
|
||||
{ &vop_poll_desc, fifo_poll }, /* poll */
|
||||
{ &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */
|
||||
{ &vop_revoke_desc, fifo_revoke }, /* revoke */
|
||||
{ &vop_mmap_desc, fifo_mmap }, /* mmap */
|
||||
{ &vop_ioctl_desc, vn_fifo_bypass }, /* ioctl */
|
||||
{ &vop_poll_desc, vn_fifo_bypass }, /* poll */
|
||||
{ &vop_kqfilter_desc, vn_fifo_bypass }, /* kqfilter */
|
||||
{ &vop_revoke_desc, vn_fifo_bypass }, /* revoke */
|
||||
{ &vop_mmap_desc, vn_fifo_bypass }, /* mmap */
|
||||
{ &vop_fsync_desc, nfs_fsync }, /* fsync */
|
||||
{ &vop_seek_desc, fifo_seek }, /* seek */
|
||||
{ &vop_remove_desc, fifo_remove }, /* remove */
|
||||
{ &vop_link_desc, fifo_link }, /* link */
|
||||
{ &vop_rename_desc, fifo_rename }, /* rename */
|
||||
{ &vop_mkdir_desc, fifo_mkdir }, /* mkdir */
|
||||
{ &vop_rmdir_desc, fifo_rmdir }, /* rmdir */
|
||||
{ &vop_symlink_desc, fifo_symlink }, /* symlink */
|
||||
{ &vop_readdir_desc, fifo_readdir }, /* readdir */
|
||||
{ &vop_readlink_desc, fifo_readlink }, /* readlink */
|
||||
{ &vop_abortop_desc, fifo_abortop }, /* abortop */
|
||||
{ &vop_seek_desc, vn_fifo_bypass }, /* seek */
|
||||
{ &vop_remove_desc, vn_fifo_bypass }, /* remove */
|
||||
{ &vop_link_desc, vn_fifo_bypass }, /* link */
|
||||
{ &vop_rename_desc, vn_fifo_bypass }, /* rename */
|
||||
{ &vop_mkdir_desc, vn_fifo_bypass }, /* mkdir */
|
||||
{ &vop_rmdir_desc, vn_fifo_bypass }, /* rmdir */
|
||||
{ &vop_symlink_desc, vn_fifo_bypass }, /* symlink */
|
||||
{ &vop_readdir_desc, vn_fifo_bypass }, /* readdir */
|
||||
{ &vop_readlink_desc, vn_fifo_bypass }, /* readlink */
|
||||
{ &vop_abortop_desc, vn_fifo_bypass }, /* abortop */
|
||||
{ &vop_inactive_desc, nfs_inactive }, /* inactive */
|
||||
{ &vop_reclaim_desc, nfs_reclaim }, /* reclaim */
|
||||
{ &vop_lock_desc, nfs_lock }, /* lock */
|
||||
{ &vop_unlock_desc, nfs_unlock }, /* unlock */
|
||||
{ &vop_bmap_desc, fifo_bmap }, /* bmap */
|
||||
{ &vop_bmap_desc, vn_fifo_bypass }, /* bmap */
|
||||
{ &vop_strategy_desc, genfs_badop }, /* strategy */
|
||||
{ &vop_print_desc, nfs_print }, /* print */
|
||||
{ &vop_islocked_desc, nfs_islocked }, /* islocked */
|
||||
{ &vop_pathconf_desc, fifo_pathconf }, /* pathconf */
|
||||
{ &vop_advlock_desc, fifo_advlock }, /* advlock */
|
||||
{ &vop_pathconf_desc, vn_fifo_bypass }, /* pathconf */
|
||||
{ &vop_advlock_desc, vn_fifo_bypass }, /* advlock */
|
||||
{ &vop_bwrite_desc, genfs_badop }, /* bwrite */
|
||||
{ &vop_putpages_desc, fifo_putpages }, /* putpages */
|
||||
{ &vop_putpages_desc, vn_fifo_bypass }, /* putpages */
|
||||
{ NULL, NULL }
|
||||
};
|
||||
const struct vnodeopv_desc fifo_nfsv2nodeop_opv_desc =
|
||||
|
@ -3336,7 +3336,7 @@ nfs_print(void *v)
|
|||
(unsigned long long)np->n_vattr->va_fileid,
|
||||
(unsigned long long)np->n_vattr->va_fsid);
|
||||
if (vp->v_type == VFIFO)
|
||||
fifo_printinfo(vp);
|
||||
VOCALL(fifo_vnodeop_p, VOFFSET(vop_print), v);
|
||||
printf("\n");
|
||||
return (0);
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: vnode.h,v 1.214 2010/02/11 23:16:35 haad Exp $ */
|
||||
/* $NetBSD: vnode.h,v 1.215 2010/03/29 13:11:32 pooka Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2008 The NetBSD Foundation, Inc.
|
||||
|
@ -643,6 +643,7 @@ int vn_extattr_set(struct vnode *, int, int, const char *, size_t,
|
|||
const void *, struct lwp *);
|
||||
int vn_extattr_rm(struct vnode *, int, int, const char *, struct lwp *);
|
||||
void vn_ra_allocctx(struct vnode *);
|
||||
int vn_fifo_bypass(void *);
|
||||
|
||||
/* initialise global vnode management */
|
||||
void vntblinit(void);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: ext2fs_vnops.c,v 1.91 2009/10/21 17:37:21 pooka Exp $ */
|
||||
/* $NetBSD: ext2fs_vnops.c,v 1.92 2010/03/29 13:11:33 pooka Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1982, 1986, 1989, 1993
|
||||
|
@ -65,7 +65,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: ext2fs_vnops.c,v 1.91 2009/10/21 17:37:21 pooka Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: ext2fs_vnops.c,v 1.92 2010/03/29 13:11:33 pooka Exp $");
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/systm.h>
|
||||
|
@ -1612,45 +1612,45 @@ const struct vnodeopv_desc ext2fs_specop_opv_desc =
|
|||
int (**ext2fs_fifoop_p)(void *);
|
||||
const struct vnodeopv_entry_desc ext2fs_fifoop_entries[] = {
|
||||
{ &vop_default_desc, vn_default_error },
|
||||
{ &vop_lookup_desc, fifo_lookup }, /* lookup */
|
||||
{ &vop_create_desc, fifo_create }, /* create */
|
||||
{ &vop_mknod_desc, fifo_mknod }, /* mknod */
|
||||
{ &vop_open_desc, fifo_open }, /* open */
|
||||
{ &vop_lookup_desc, vn_fifo_bypass }, /* lookup */
|
||||
{ &vop_create_desc, vn_fifo_bypass }, /* create */
|
||||
{ &vop_mknod_desc, vn_fifo_bypass }, /* mknod */
|
||||
{ &vop_open_desc, vn_fifo_bypass }, /* open */
|
||||
{ &vop_close_desc, ufsfifo_close }, /* close */
|
||||
{ &vop_access_desc, ext2fs_access }, /* access */
|
||||
{ &vop_getattr_desc, ext2fs_getattr }, /* getattr */
|
||||
{ &vop_setattr_desc, ext2fs_setattr }, /* setattr */
|
||||
{ &vop_read_desc, ufsfifo_read }, /* read */
|
||||
{ &vop_write_desc, ufsfifo_write }, /* write */
|
||||
{ &vop_ioctl_desc, fifo_ioctl }, /* ioctl */
|
||||
{ &vop_ioctl_desc, vn_fifo_bypass }, /* ioctl */
|
||||
{ &vop_fcntl_desc, ufs_fcntl }, /* fcntl */
|
||||
{ &vop_poll_desc, fifo_poll }, /* poll */
|
||||
{ &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */
|
||||
{ &vop_revoke_desc, fifo_revoke }, /* revoke */
|
||||
{ &vop_mmap_desc, fifo_mmap }, /* mmap */
|
||||
{ &vop_poll_desc, vn_fifo_bypass }, /* poll */
|
||||
{ &vop_kqfilter_desc, vn_fifo_bypass }, /* kqfilter */
|
||||
{ &vop_revoke_desc, vn_fifo_bypass }, /* revoke */
|
||||
{ &vop_mmap_desc, vn_fifo_bypass }, /* mmap */
|
||||
{ &vop_fsync_desc, ext2fs_fsync }, /* fsync */
|
||||
{ &vop_seek_desc, fifo_seek }, /* seek */
|
||||
{ &vop_remove_desc, fifo_remove }, /* remove */
|
||||
{ &vop_link_desc, fifo_link }, /* link */
|
||||
{ &vop_rename_desc, fifo_rename }, /* rename */
|
||||
{ &vop_mkdir_desc, fifo_mkdir }, /* mkdir */
|
||||
{ &vop_rmdir_desc, fifo_rmdir }, /* rmdir */
|
||||
{ &vop_symlink_desc, fifo_symlink }, /* symlink */
|
||||
{ &vop_readdir_desc, fifo_readdir }, /* readdir */
|
||||
{ &vop_readlink_desc, fifo_readlink }, /* readlink */
|
||||
{ &vop_abortop_desc, fifo_abortop }, /* abortop */
|
||||
{ &vop_seek_desc, vn_fifo_bypass }, /* seek */
|
||||
{ &vop_remove_desc, vn_fifo_bypass }, /* remove */
|
||||
{ &vop_link_desc, vn_fifo_bypass }, /* link */
|
||||
{ &vop_rename_desc, vn_fifo_bypass }, /* rename */
|
||||
{ &vop_mkdir_desc, vn_fifo_bypass }, /* mkdir */
|
||||
{ &vop_rmdir_desc, vn_fifo_bypass }, /* rmdir */
|
||||
{ &vop_symlink_desc, vn_fifo_bypass }, /* symlink */
|
||||
{ &vop_readdir_desc, vn_fifo_bypass }, /* readdir */
|
||||
{ &vop_readlink_desc, vn_fifo_bypass }, /* readlink */
|
||||
{ &vop_abortop_desc, vn_fifo_bypass }, /* abortop */
|
||||
{ &vop_inactive_desc, ext2fs_inactive }, /* inactive */
|
||||
{ &vop_reclaim_desc, ext2fs_reclaim }, /* reclaim */
|
||||
{ &vop_lock_desc, ufs_lock }, /* lock */
|
||||
{ &vop_unlock_desc, ufs_unlock }, /* unlock */
|
||||
{ &vop_bmap_desc, fifo_bmap }, /* bmap */
|
||||
{ &vop_strategy_desc, fifo_strategy }, /* strategy */
|
||||
{ &vop_bmap_desc, vn_fifo_bypass }, /* bmap */
|
||||
{ &vop_strategy_desc, vn_fifo_bypass }, /* strategy */
|
||||
{ &vop_print_desc, ufs_print }, /* print */
|
||||
{ &vop_islocked_desc, ufs_islocked }, /* islocked */
|
||||
{ &vop_pathconf_desc, fifo_pathconf }, /* pathconf */
|
||||
{ &vop_advlock_desc, fifo_advlock }, /* advlock */
|
||||
{ &vop_pathconf_desc, vn_fifo_bypass }, /* pathconf */
|
||||
{ &vop_advlock_desc, vn_fifo_bypass }, /* advlock */
|
||||
{ &vop_bwrite_desc, vn_bwrite }, /* bwrite */
|
||||
{ &vop_putpages_desc, fifo_putpages }, /* putpages */
|
||||
{ &vop_putpages_desc, vn_fifo_bypass }, /* putpages */
|
||||
{ NULL, NULL }
|
||||
};
|
||||
const struct vnodeopv_desc ext2fs_fifoop_opv_desc =
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: ffs_vnops.c,v 1.113 2009/11/04 09:45:05 hannken Exp $ */
|
||||
/* $NetBSD: ffs_vnops.c,v 1.114 2010/03/29 13:11:33 pooka Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2008, 2009 The NetBSD Foundation, Inc.
|
||||
|
@ -61,7 +61,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: ffs_vnops.c,v 1.113 2009/11/04 09:45:05 hannken Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: ffs_vnops.c,v 1.114 2010/03/29 13:11:33 pooka Exp $");
|
||||
|
||||
#if defined(_KERNEL_OPT)
|
||||
#include "opt_ffs.h"
|
||||
|
@ -213,45 +213,45 @@ const struct vnodeopv_desc ffs_specop_opv_desc =
|
|||
int (**ffs_fifoop_p)(void *);
|
||||
const struct vnodeopv_entry_desc ffs_fifoop_entries[] = {
|
||||
{ &vop_default_desc, vn_default_error },
|
||||
{ &vop_lookup_desc, fifo_lookup }, /* lookup */
|
||||
{ &vop_create_desc, fifo_create }, /* create */
|
||||
{ &vop_mknod_desc, fifo_mknod }, /* mknod */
|
||||
{ &vop_open_desc, fifo_open }, /* open */
|
||||
{ &vop_lookup_desc, vn_fifo_bypass }, /* lookup */
|
||||
{ &vop_create_desc, vn_fifo_bypass }, /* create */
|
||||
{ &vop_mknod_desc, vn_fifo_bypass }, /* mknod */
|
||||
{ &vop_open_desc, vn_fifo_bypass }, /* open */
|
||||
{ &vop_close_desc, ufsfifo_close }, /* close */
|
||||
{ &vop_access_desc, ufs_access }, /* access */
|
||||
{ &vop_getattr_desc, ufs_getattr }, /* getattr */
|
||||
{ &vop_setattr_desc, ufs_setattr }, /* setattr */
|
||||
{ &vop_read_desc, ufsfifo_read }, /* read */
|
||||
{ &vop_write_desc, ufsfifo_write }, /* write */
|
||||
{ &vop_ioctl_desc, fifo_ioctl }, /* ioctl */
|
||||
{ &vop_ioctl_desc, vn_fifo_bypass }, /* ioctl */
|
||||
{ &vop_fcntl_desc, ufs_fcntl }, /* fcntl */
|
||||
{ &vop_poll_desc, fifo_poll }, /* poll */
|
||||
{ &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */
|
||||
{ &vop_revoke_desc, fifo_revoke }, /* revoke */
|
||||
{ &vop_mmap_desc, fifo_mmap }, /* mmap */
|
||||
{ &vop_poll_desc, vn_fifo_bypass }, /* poll */
|
||||
{ &vop_kqfilter_desc, vn_fifo_bypass }, /* kqfilter */
|
||||
{ &vop_revoke_desc, vn_fifo_bypass }, /* revoke */
|
||||
{ &vop_mmap_desc, vn_fifo_bypass }, /* mmap */
|
||||
{ &vop_fsync_desc, ffs_fsync }, /* fsync */
|
||||
{ &vop_seek_desc, fifo_seek }, /* seek */
|
||||
{ &vop_remove_desc, fifo_remove }, /* remove */
|
||||
{ &vop_link_desc, fifo_link }, /* link */
|
||||
{ &vop_rename_desc, fifo_rename }, /* rename */
|
||||
{ &vop_mkdir_desc, fifo_mkdir }, /* mkdir */
|
||||
{ &vop_rmdir_desc, fifo_rmdir }, /* rmdir */
|
||||
{ &vop_symlink_desc, fifo_symlink }, /* symlink */
|
||||
{ &vop_readdir_desc, fifo_readdir }, /* readdir */
|
||||
{ &vop_readlink_desc, fifo_readlink }, /* readlink */
|
||||
{ &vop_abortop_desc, fifo_abortop }, /* abortop */
|
||||
{ &vop_seek_desc, vn_fifo_bypass }, /* seek */
|
||||
{ &vop_remove_desc, vn_fifo_bypass }, /* remove */
|
||||
{ &vop_link_desc, vn_fifo_bypass }, /* link */
|
||||
{ &vop_rename_desc, vn_fifo_bypass }, /* rename */
|
||||
{ &vop_mkdir_desc, vn_fifo_bypass }, /* mkdir */
|
||||
{ &vop_rmdir_desc, vn_fifo_bypass }, /* rmdir */
|
||||
{ &vop_symlink_desc, vn_fifo_bypass }, /* symlink */
|
||||
{ &vop_readdir_desc, vn_fifo_bypass }, /* readdir */
|
||||
{ &vop_readlink_desc, vn_fifo_bypass }, /* readlink */
|
||||
{ &vop_abortop_desc, vn_fifo_bypass }, /* abortop */
|
||||
{ &vop_inactive_desc, ufs_inactive }, /* inactive */
|
||||
{ &vop_reclaim_desc, ffs_reclaim }, /* reclaim */
|
||||
{ &vop_lock_desc, ufs_lock }, /* lock */
|
||||
{ &vop_unlock_desc, ufs_unlock }, /* unlock */
|
||||
{ &vop_bmap_desc, fifo_bmap }, /* bmap */
|
||||
{ &vop_strategy_desc, fifo_strategy }, /* strategy */
|
||||
{ &vop_bmap_desc, vn_fifo_bypass }, /* bmap */
|
||||
{ &vop_strategy_desc, vn_fifo_bypass }, /* strategy */
|
||||
{ &vop_print_desc, ufs_print }, /* print */
|
||||
{ &vop_islocked_desc, ufs_islocked }, /* islocked */
|
||||
{ &vop_pathconf_desc, fifo_pathconf }, /* pathconf */
|
||||
{ &vop_advlock_desc, fifo_advlock }, /* advlock */
|
||||
{ &vop_pathconf_desc, vn_fifo_bypass }, /* pathconf */
|
||||
{ &vop_advlock_desc, vn_fifo_bypass }, /* advlock */
|
||||
{ &vop_bwrite_desc, vn_bwrite }, /* bwrite */
|
||||
{ &vop_putpages_desc, fifo_putpages }, /* putpages */
|
||||
{ &vop_putpages_desc, vn_fifo_bypass }, /* putpages */
|
||||
{ &vop_openextattr_desc, ffs_openextattr }, /* openextattr */
|
||||
{ &vop_closeextattr_desc, ffs_closeextattr }, /* closeextattr */
|
||||
{ &vop_getextattr_desc, ffs_getextattr }, /* getextattr */
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: lfs_vnops.c,v 1.226 2009/12/07 04:12:10 eeh Exp $ */
|
||||
/* $NetBSD: lfs_vnops.c,v 1.227 2010/03/29 13:11:34 pooka Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1999, 2000, 2001, 2002, 2003 The NetBSD Foundation, Inc.
|
||||
|
@ -60,7 +60,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: lfs_vnops.c,v 1.226 2009/12/07 04:12:10 eeh Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: lfs_vnops.c,v 1.227 2010/03/29 13:11:34 pooka Exp $");
|
||||
|
||||
#ifdef _KERNEL_OPT
|
||||
#include "opt_compat_netbsd.h"
|
||||
|
@ -204,45 +204,45 @@ const struct vnodeopv_desc lfs_specop_opv_desc =
|
|||
int (**lfs_fifoop_p)(void *);
|
||||
const struct vnodeopv_entry_desc lfs_fifoop_entries[] = {
|
||||
{ &vop_default_desc, vn_default_error },
|
||||
{ &vop_lookup_desc, fifo_lookup }, /* lookup */
|
||||
{ &vop_create_desc, fifo_create }, /* create */
|
||||
{ &vop_mknod_desc, fifo_mknod }, /* mknod */
|
||||
{ &vop_open_desc, fifo_open }, /* open */
|
||||
{ &vop_lookup_desc, vn_fifo_bypass }, /* lookup */
|
||||
{ &vop_create_desc, vn_fifo_bypass }, /* create */
|
||||
{ &vop_mknod_desc, vn_fifo_bypass }, /* mknod */
|
||||
{ &vop_open_desc, vn_fifo_bypass }, /* open */
|
||||
{ &vop_close_desc, lfsfifo_close }, /* close */
|
||||
{ &vop_access_desc, ufs_access }, /* access */
|
||||
{ &vop_getattr_desc, lfs_getattr }, /* getattr */
|
||||
{ &vop_setattr_desc, lfs_setattr }, /* setattr */
|
||||
{ &vop_read_desc, ufsfifo_read }, /* read */
|
||||
{ &vop_write_desc, ufsfifo_write }, /* write */
|
||||
{ &vop_ioctl_desc, fifo_ioctl }, /* ioctl */
|
||||
{ &vop_ioctl_desc, vn_fifo_bypass }, /* ioctl */
|
||||
{ &vop_fcntl_desc, ufs_fcntl }, /* fcntl */
|
||||
{ &vop_poll_desc, fifo_poll }, /* poll */
|
||||
{ &vop_kqfilter_desc, fifo_kqfilter }, /* kqfilter */
|
||||
{ &vop_revoke_desc, fifo_revoke }, /* revoke */
|
||||
{ &vop_mmap_desc, fifo_mmap }, /* mmap */
|
||||
{ &vop_fsync_desc, fifo_fsync }, /* fsync */
|
||||
{ &vop_seek_desc, fifo_seek }, /* seek */
|
||||
{ &vop_remove_desc, fifo_remove }, /* remove */
|
||||
{ &vop_link_desc, fifo_link }, /* link */
|
||||
{ &vop_rename_desc, fifo_rename }, /* rename */
|
||||
{ &vop_mkdir_desc, fifo_mkdir }, /* mkdir */
|
||||
{ &vop_rmdir_desc, fifo_rmdir }, /* rmdir */
|
||||
{ &vop_symlink_desc, fifo_symlink }, /* symlink */
|
||||
{ &vop_readdir_desc, fifo_readdir }, /* readdir */
|
||||
{ &vop_readlink_desc, fifo_readlink }, /* readlink */
|
||||
{ &vop_abortop_desc, fifo_abortop }, /* abortop */
|
||||
{ &vop_poll_desc, vn_fifo_bypass }, /* poll */
|
||||
{ &vop_kqfilter_desc, vn_fifo_bypass }, /* kqfilter */
|
||||
{ &vop_revoke_desc, vn_fifo_bypass }, /* revoke */
|
||||
{ &vop_mmap_desc, vn_fifo_bypass }, /* mmap */
|
||||
{ &vop_fsync_desc, vn_fifo_bypass }, /* fsync */
|
||||
{ &vop_seek_desc, vn_fifo_bypass }, /* seek */
|
||||
{ &vop_remove_desc, vn_fifo_bypass }, /* remove */
|
||||
{ &vop_link_desc, vn_fifo_bypass }, /* link */
|
||||
{ &vop_rename_desc, vn_fifo_bypass }, /* rename */
|
||||
{ &vop_mkdir_desc, vn_fifo_bypass }, /* mkdir */
|
||||
{ &vop_rmdir_desc, vn_fifo_bypass }, /* rmdir */
|
||||
{ &vop_symlink_desc, vn_fifo_bypass }, /* symlink */
|
||||
{ &vop_readdir_desc, vn_fifo_bypass }, /* readdir */
|
||||
{ &vop_readlink_desc, vn_fifo_bypass }, /* readlink */
|
||||
{ &vop_abortop_desc, vn_fifo_bypass }, /* abortop */
|
||||
{ &vop_inactive_desc, lfs_inactive }, /* inactive */
|
||||
{ &vop_reclaim_desc, lfs_reclaim }, /* reclaim */
|
||||
{ &vop_lock_desc, ufs_lock }, /* lock */
|
||||
{ &vop_unlock_desc, ufs_unlock }, /* unlock */
|
||||
{ &vop_bmap_desc, fifo_bmap }, /* bmap */
|
||||
{ &vop_strategy_desc, fifo_strategy }, /* strategy */
|
||||
{ &vop_bmap_desc, vn_fifo_bypass }, /* bmap */
|
||||
{ &vop_strategy_desc, vn_fifo_bypass }, /* strategy */
|
||||
{ &vop_print_desc, ufs_print }, /* print */
|
||||
{ &vop_islocked_desc, ufs_islocked }, /* islocked */
|
||||
{ &vop_pathconf_desc, fifo_pathconf }, /* pathconf */
|
||||
{ &vop_advlock_desc, fifo_advlock }, /* advlock */
|
||||
{ &vop_pathconf_desc, vn_fifo_bypass }, /* pathconf */
|
||||
{ &vop_advlock_desc, vn_fifo_bypass }, /* advlock */
|
||||
{ &vop_bwrite_desc, lfs_bwrite }, /* bwrite */
|
||||
{ &vop_putpages_desc, fifo_putpages }, /* putpages */
|
||||
{ &vop_putpages_desc, vn_fifo_bypass }, /* putpages */
|
||||
{ NULL, NULL }
|
||||
};
|
||||
const struct vnodeopv_desc lfs_fifoop_opv_desc =
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: ufs_vnops.c,v 1.180 2009/10/14 09:40:27 hannken Exp $ */
|
||||
/* $NetBSD: ufs_vnops.c,v 1.181 2010/03/29 13:11:34 pooka Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 2008 The NetBSD Foundation, Inc.
|
||||
|
@ -66,7 +66,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: ufs_vnops.c,v 1.180 2009/10/14 09:40:27 hannken Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: ufs_vnops.c,v 1.181 2010/03/29 13:11:34 pooka Exp $");
|
||||
|
||||
#if defined(_KERNEL_OPT)
|
||||
#include "opt_ffs.h"
|
||||
|
@ -1908,7 +1908,7 @@ ufs_print(void *v)
|
|||
ip->i_mode, ip->i_uid, ip->i_gid,
|
||||
(long long)ip->i_size);
|
||||
if (vp->v_type == VFIFO)
|
||||
fifo_printinfo(vp);
|
||||
VOCALL(fifo_vnodeop_p, VOFFSET(vop_print), v);
|
||||
printf("\n");
|
||||
return (0);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue