Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/vfs_subr.c
Show First 20 Lines • Show All 6,166 Lines • ▼ Show 20 Lines | |||||
int | int | ||||
vfs_kqfilter(struct vop_kqfilter_args *ap) | vfs_kqfilter(struct vop_kqfilter_args *ap) | ||||
{ | { | ||||
struct vnode *vp = ap->a_vp; | struct vnode *vp = ap->a_vp; | ||||
struct knote *kn = ap->a_kn; | struct knote *kn = ap->a_kn; | ||||
struct knlist *knl; | struct knlist *knl; | ||||
KASSERT(vp->v_type != VFIFO || (kn->kn_filter != EVFILT_READ && | |||||
kn->kn_filter != EVFILT_WRITE), | |||||
("READ/WRITE filter on a FIFO leaked through")); | |||||
switch (kn->kn_filter) { | switch (kn->kn_filter) { | ||||
case EVFILT_READ: | case EVFILT_READ: | ||||
kn->kn_fop = &vfsread_filtops; | kn->kn_fop = &vfsread_filtops; | ||||
break; | break; | ||||
case EVFILT_WRITE: | case EVFILT_WRITE: | ||||
kn->kn_fop = &vfswrite_filtops; | kn->kn_fop = &vfswrite_filtops; | ||||
break; | break; | ||||
case EVFILT_VNODE: | case EVFILT_VNODE: | ||||
▲ Show 20 Lines • Show All 773 Lines • Show Last 20 Lines |