Lines Matching refs:kev

95 static int	kqueue_register(struct kqueue *kq, struct kevent *kev,
154 static void filt_usertouch(struct knote *kn, struct kevent *kev,
459 struct kevent kev;
502 kev.ident = pid;
503 kev.filter = kn->kn_filter;
504 kev.flags = kn->kn_flags | EV_ADD | EV_ENABLE | EV_FLAG1;
505 kev.fflags = kn->kn_sfflags;
506 kev.data = kn->kn_id; /* parent */
507 kev.udata = kn->kn_kevent.udata;/* preserve udata */
508 error = kqueue_register(kq, &kev, NULL, 0);
675 filt_usertouch(struct knote *kn, struct kevent *kev, u_long type)
681 if (kev->fflags & NOTE_TRIGGER)
684 ffctrl = kev->fflags & NOTE_FFCTRLMASK;
685 kev->fflags &= NOTE_FFLAGSMASK;
691 kn->kn_sfflags &= kev->fflags;
695 kn->kn_sfflags |= kev->fflags;
699 kn->kn_sfflags = kev->fflags;
706 kn->kn_sdata = kev->data;
707 if (kev->flags & EV_CLEAR) {
715 *kev = kn->kn_kevent;
716 kev->fflags = kn->kn_sfflags;
717 kev->data = kn->kn_sdata;
1014 kqueue_register(struct kqueue *kq, struct kevent *kev, struct thread *td, int waitok)
1029 filt = kev->filter;
1039 error = fget(td, kev->ident,
1044 if ((kev->flags & EV_ADD) == EV_ADD && kqueue_expand(kq, fops,
1045 kev->ident, 0) != 0) {
1049 error = kqueue_expand(kq, fops, kev->ident, waitok);
1079 if (kev->ident < kq->kq_knlistsize) {
1080 SLIST_FOREACH(kn, &kq->kq_knlist[kev->ident], kn_link)
1081 if (kev->filter == kn->kn_filter)
1085 if ((kev->flags & EV_ADD) == EV_ADD)
1086 kqueue_expand(kq, fops, kev->ident, waitok);
1093 KN_HASH((u_long)kev->ident, kq->kq_knhashmask)];
1095 if (kev->ident == kn->kn_id &&
1096 kev->filter == kn->kn_filter)
1121 if (kev->flags & EV_ADD) {
1139 kn->kn_sfflags = kev->fflags;
1140 kn->kn_sdata = kev->data;
1141 kev->fflags = 0;
1142 kev->data = 0;
1143 kn->kn_kevent = *kev;
1169 if (kev->flags & EV_DELETE) {
1186 kn->kn_kevent.udata = kev->udata;
1188 fops->f_touch(kn, kev, EVENT_REGISTER);
1190 kn->kn_sfflags = kev->fflags;
1191 kn->kn_sdata = kev->data;
1209 if ((kev->flags & EV_DISABLE) &&
1214 if ((kev->flags & EV_ENABLE) && (kn->kn_status & KN_DISABLED)) {
2320 * Register the kev w/ the kq specified by fd.
2323 kqfd_register(int fd, struct kevent *kev, struct thread *td, int waitok)
2336 error = kqueue_register(kq, kev, td, waitok);