| 760 | } |
| 761 | |
| 762 | static void |
| 763 | filt_timerstart(struct knote *kn, sbintime_t to) |
| 764 | { |
| 765 | struct kq_timer_cb_data *kc; |
| 766 | |
| 767 | kc = kn->kn_ptr.p_v; |
| 768 | if ((kn->kn_sfflags & NOTE_ABSTIME) != 0) { |
| 769 | kc->next = to; |
| 770 | kc->to = 0; |
| 771 | } else { |
| 772 | kc->next = to + sbinuptime(); |
| 773 | kc->to = to; |
| 774 | } |
| 775 | callout_reset_sbt_on(&kc->c, kc->next, 0, filt_timerexpire, kn, |
| 776 | PCPU_GET(cpuid), C_ABSOLUTE); |
| 777 | } |
| 778 | |
| 779 | static void |
| 780 | filt_timerdetach(struct knote *kn) |
no test coverage detected