Lines Matching refs:kn
80 ktimer_delete(struct filter *filt, struct knote *kn)
84 if (kn->data.pfd == -1)
87 dbg_printf("removing timerfd %d from %d", kn->data.pfd, filt->kf_pfd);
88 if (epoll_ctl(filt->kf_pfd, EPOLL_CTL_DEL, kn->data.pfd, NULL) < 0) {
92 if (close(kn->data.pfd) < 0) {
97 kn->data.pfd = -1;
130 struct knote *kn;
150 kn = ev->data.ptr;
151 memcpy(dst, &kn->kev, sizeof(*dst));
158 n = read(kn->data.pfd, &expired, sizeof(expired));
165 if (kn->kev.flags & EV_DISPATCH) {
166 KNOTE_DISABLE(kn);
167 ktimer_delete(filt, kn);
168 } else if (kn->kev.flags & EV_ONESHOT) {
169 ktimer_delete(filt, kn);
170 knote_free(filt, kn);
181 evfilt_timer_knote_create(struct filter *filt, struct knote *kn)
187 kn->kev.flags |= EV_CLEAR;
196 convert_msec_to_itimerspec(&ts, kn->kev.data, kn->kev.flags & EV_ONESHOT);
205 ev.data.ptr = kn;
212 kn->data.pfd = tfd;
217 evfilt_timer_knote_modify(struct filter *filt, struct knote *kn,
224 evfilt_timer_knote_delete(struct filter *filt, struct knote *kn)
226 return (ktimer_delete(filt,kn));
230 evfilt_timer_knote_enable(struct filter *filt, struct knote *kn)
232 return evfilt_timer_knote_create(filt, kn);
236 evfilt_timer_knote_disable(struct filter *filt, struct knote *kn)
238 return evfilt_timer_knote_delete(filt, kn);