| 1706 | } |
| 1707 | |
| 1708 | void |
| 1709 | pps_capture(struct pps_state *pps) |
| 1710 | { |
| 1711 | struct timehands *th; |
| 1712 | |
| 1713 | KASSERT(pps != NULL, ("NULL pps pointer in pps_capture")); |
| 1714 | th = timehands; |
| 1715 | pps->capgen = atomic_load_acq_int(&th->th_generation); |
| 1716 | pps->capth = th; |
| 1717 | #ifdef FFCLOCK |
| 1718 | pps->capffth = fftimehands; |
| 1719 | #endif |
| 1720 | pps->capcount = th->th_counter->tc_get_timecount(th->th_counter); |
| 1721 | atomic_thread_fence_acq(); |
| 1722 | if (pps->capgen != th->th_generation) |
| 1723 | pps->capgen = 0; |
| 1724 | } |
| 1725 | |
| 1726 | void |
| 1727 | pps_event(struct pps_state *pps, int event) |
no test coverage detected