Lines Matching refs:kn

4352 static int	filt_fsattach(struct knote *kn);
4353 static void filt_fsdetach(struct knote *kn);
4354 static int filt_fsevent(struct knote *kn, long hint);
4364 filt_fsattach(struct knote *kn)
4367 kn->kn_flags |= EV_CLEAR;
4368 knlist_add(&fs_knlist, kn, 0);
4373 filt_fsdetach(struct knote *kn)
4376 knlist_remove(&fs_knlist, kn, 0);
4380 filt_fsevent(struct knote *kn, long hint)
4383 kn->kn_fflags |= hint;
4384 return (kn->kn_fflags != 0);
4431 static int filt_vfsread(struct knote *kn, long hint);
4432 static int filt_vfswrite(struct knote *kn, long hint);
4433 static int filt_vfsvnode(struct knote *kn, long hint);
4434 static void filt_vfsdetach(struct knote *kn);
4491 struct knote *kn = ap->a_kn;
4494 switch (kn->kn_filter) {
4496 kn->kn_fop = &vfsread_filtops;
4499 kn->kn_fop = &vfswrite_filtops;
4502 kn->kn_fop = &vfsvnode_filtops;
4508 kn->kn_hook = (caddr_t)vp;
4515 knlist_add(knl, kn, 0);
4524 filt_vfsdetach(struct knote *kn)
4526 struct vnode *vp = (struct vnode *)kn->kn_hook;
4529 knlist_remove(&vp->v_pollinfo->vpi_selinfo.si_note, kn, 0);
4535 filt_vfsread(struct knote *kn, long hint)
4537 struct vnode *vp = (struct vnode *)kn->kn_hook;
4547 kn->kn_flags |= (EV_EOF | EV_ONESHOT);
4556 kn->kn_data = va.va_size - kn->kn_fp->f_offset;
4557 res = (kn->kn_data != 0);
4564 filt_vfswrite(struct knote *kn, long hint)
4566 struct vnode *vp = (struct vnode *)kn->kn_hook;
4575 kn->kn_flags |= (EV_EOF | EV_ONESHOT);
4577 kn->kn_data = 0;
4583 filt_vfsvnode(struct knote *kn, long hint)
4585 struct vnode *vp = (struct vnode *)kn->kn_hook;
4589 if (kn->kn_sfflags & hint)
4590 kn->kn_fflags |= hint;
4592 kn->kn_flags |= EV_EOF;
4596 res = (kn->kn_fflags != 0);