Lines Matching defs:kn
496 filt_genfsdetach(struct knote *kn)
498 struct vnode *vp = (struct vnode *)kn->kn_hook;
500 vn_knote_detach(vp, kn);
504 filt_genfsread(struct knote *kn, long hint)
506 struct vnode *vp = (struct vnode *)kn->kn_hook;
516 knote_set_eof(kn, EV_ONESHOT);
520 kn->kn_data = vp->v_size - ((file_t *)kn->kn_obj)->f_offset;
521 rv = (kn->kn_data != 0);
526 kn->kn_data = vp->v_size - ((file_t *)kn->kn_obj)->f_offset;
527 return (kn->kn_data != 0);
532 filt_genfswrite(struct knote *kn, long hint)
534 struct vnode *vp = (struct vnode *)kn->kn_hook;
543 knote_set_eof(kn, EV_ONESHOT);
547 kn->kn_data = 0;
552 kn->kn_data = 0;
558 filt_genfsvnode(struct knote *kn, long hint)
560 struct vnode *vp = (struct vnode *)kn->kn_hook;
566 knote_set_eof(kn, 0);
567 if ((kn->kn_sfflags & hint) != 0)
568 kn->kn_fflags |= hint;
572 fflags = kn->kn_fflags;
577 if ((kn->kn_sfflags & hint) != 0)
578 kn->kn_fflags |= hint;
579 fflags = kn->kn_fflags;
615 struct knote *kn;
618 kn = ap->a_kn;
619 switch (kn->kn_filter) {
621 kn->kn_fop = &genfsread_filtops;
624 kn->kn_fop = &genfswrite_filtops;
627 kn->kn_fop = &genfsvnode_filtops;
633 kn->kn_hook = vp;
635 vn_knote_attach(vp, kn);