Add a wrapper for the fifo kqfilter which falls through to the ufs routine.

This permits the fifo to inherit the ufs VNODE kqfilter.
This commit is contained in:
Jonathan Lemon 2001-06-06 17:40:57 +00:00
parent 2247e23a97
commit 3b6e32b01e

View File

@ -102,6 +102,7 @@ static int ufs_strategy __P((struct vop_strategy_args *));
static int ufs_symlink __P((struct vop_symlink_args *));
static int ufs_whiteout __P((struct vop_whiteout_args *));
static int ufsfifo_close __P((struct vop_close_args *));
static int ufsfifo_kqfilter __P((struct vop_kqfilter_args *));
static int ufsfifo_read __P((struct vop_read_args *));
static int ufsfifo_write __P((struct vop_write_args *));
static int ufsspec_close __P((struct vop_close_args *));
@ -2087,6 +2088,23 @@ ufsfifo_close(ap)
return (VOCALL(fifo_vnodeop_p, VOFFSET(vop_close), ap));
}
/*
* Kqfilter wrapper for fifos.
*
* Fall through to ufs kqfilter routines if needed
*/
int
ufsfifo_kqfilter(ap)
struct vop_kqfilter_args *ap;
{
int error;
error = VOCALL(fifo_vnodeop_p, VOFFSET(vop_kqfilter), ap);
if (error)
error = ufs_kqfilter(ap);
return (error);
}
/*
* Return POSIX pathconf information applicable to ufs filesystems.
*/
@ -2579,6 +2597,7 @@ static struct vnodeopv_entry_desc ufs_fifoop_entries[] = {
{ &vop_getattr_desc, (vop_t *) ufs_getattr },
{ &vop_inactive_desc, (vop_t *) ufs_inactive },
{ &vop_islocked_desc, (vop_t *) vop_stdislocked },
{ &vop_kqfilter_desc, (vop_t *) ufsfifo_kqfilter },
{ &vop_lock_desc, (vop_t *) vop_stdlock },
{ &vop_print_desc, (vop_t *) ufs_print },
{ &vop_read_desc, (vop_t *) ufsfifo_read },