Lines Matching refs:kev

102 static int	kqueue_register(struct kqueue *kq, struct kevent *kev,
166 static void filt_timertouch(struct knote *kn, struct kevent *kev,
173 static void filt_usertouch(struct knote *kn, struct kevent *kev,
532 struct kevent kev;
540 memset(&kev, 0, sizeof(kev));
578 kev.ident = pid;
579 kev.filter = kn->kn_filter;
580 kev.flags = kn->kn_flags | EV_ADD | EV_ENABLE | EV_ONESHOT |
582 kev.fflags = kn->kn_sfflags;
583 kev.data = kn->kn_id; /* parent */
584 kev.udata = kn->kn_kevent.udata;/* preserve udata */
585 error = kqueue_register(kq, &kev, NULL, M_NOWAIT);
593 kev.ident = pid;
594 kev.filter = kn->kn_filter;
595 kev.flags = kn->kn_flags | EV_ADD | EV_ENABLE | EV_FLAG1;
596 kev.fflags = kn->kn_sfflags;
597 kev.data = kn->kn_id; /* parent */
598 kev.udata = kn->kn_kevent.udata;/* preserve udata */
599 error = kqueue_register(kq, &kev, NULL, M_NOWAIT);
890 filt_timertouch(struct knote *kn, struct kevent *kev, u_long type)
900 if (kev->flags & EV_ADD) {
931 kn->kn_sfflags = kev->fflags;
932 kn->kn_sdata = kev->data;
943 *kev = kn->kn_kevent;
995 filt_usertouch(struct knote *kn, struct kevent *kev, u_long type)
1001 if (kev->fflags & NOTE_TRIGGER)
1004 ffctrl = kev->fflags & NOTE_FFCTRLMASK;
1005 kev->fflags &= NOTE_FFLAGSMASK;
1011 kn->kn_sfflags &= kev->fflags;
1015 kn->kn_sfflags |= kev->fflags;
1019 kn->kn_sfflags = kev->fflags;
1026 kn->kn_sdata = kev->data;
1027 if (kev->flags & EV_CLEAR) {
1035 *kev = kn->kn_kevent;
1036 kev->fflags = kn->kn_sfflags;
1037 kev->data = kn->kn_sdata;
1489 kqueue_register(struct kqueue *kq, struct kevent *kev, struct thread *td,
1499 if ((kev->flags & (EV_ENABLE | EV_DISABLE)) == (EV_ENABLE | EV_DISABLE))
1509 filt = kev->filter;
1514 if (kev->flags & EV_ADD) {
1516 if (kev->flags & EV_KEEPUDATA) {
1535 if (kev->ident > INT_MAX)
1538 error = fget(td, kev->ident, &cap_event_rights, &fp);
1542 if ((kev->flags & EV_ADD) == EV_ADD && kqueue_expand(kq, fops,
1543 kev->ident, M_NOWAIT) != 0) {
1547 error = kqueue_expand(kq, fops, kev->ident, mflag);
1577 if (kev->ident < kq->kq_knlistsize) {
1578 SLIST_FOREACH(kn, &kq->kq_knlist[kev->ident], kn_link)
1579 if (kev->filter == kn->kn_filter)
1583 if ((kev->flags & EV_ADD) == EV_ADD) {
1584 error = kqueue_expand(kq, fops, kev->ident, mflag);
1594 if (kev->filter == EVFILT_PROC &&
1595 (kev->flags & (EV_FLAG1 | EV_FLAG2)) != 0) {
1605 KN_HASH((u_long)kev->ident, kq->kq_knhashmask)];
1607 if (kev->ident == kn->kn_id &&
1608 kev->filter == kn->kn_filter)
1633 if (kev->flags & EV_ADD) {
1651 kn->kn_sfflags = kev->fflags;
1652 kn->kn_sdata = kev->data;
1653 kev->fflags = 0;
1654 kev->data = 0;
1655 kn->kn_kevent = *kev;
1659 if ((kev->flags & EV_DISABLE) != 0)
1684 if (kev->flags & EV_DELETE) {
1691 if (kev->flags & EV_FORCEONESHOT) {
1696 if ((kev->flags & EV_ENABLE) != 0)
1698 else if ((kev->flags & EV_DISABLE) != 0)
1710 if ((kev->flags & EV_KEEPUDATA) == 0)
1711 kn->kn_kevent.udata = kev->udata;
1713 fops->f_touch(kn, kev, EVENT_REGISTER);
1715 kn->kn_sfflags = kev->fflags;
1716 kn->kn_sdata = kev->data;
2808 * Register the kev w/ the kq specified by fd.
2811 kqfd_register(int fd, struct kevent *kev, struct thread *td, int mflag)
2825 error = kqueue_register(kq, kev, td, mflag);