[PATCH 1/6] pps: Load timecounter once in pps_capture()
- In reply to: Sebastian Huber : "[PATCH 0/6] Simplify pps_capture() and pps_event()"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 07 Jul 2022 15:25:01 UTC
This ensures that the timecounter and the tc_get_timecount handler belong
together.
---
sys/kern/kern_tc.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/sys/kern/kern_tc.c b/sys/kern/kern_tc.c
index 37287df4d1fd..20520adc0aba 100644
--- a/sys/kern/kern_tc.c
+++ b/sys/kern/kern_tc.c
@@ -1761,6 +1761,7 @@ void
pps_capture(struct pps_state *pps)
{
struct timehands *th;
+ struct timecounter *tc;
KASSERT(pps != NULL, ("NULL pps pointer in pps_capture"));
th = timehands;
@@ -1769,7 +1770,8 @@ pps_capture(struct pps_state *pps)
#ifdef FFCLOCK
pps->capffth = fftimehands;
#endif
- pps->capcount = th->th_counter->tc_get_timecount(th->th_counter);
+ tc = th->th_counter;
+ pps->capcount = tc->tc_get_timecount(tc);
atomic_thread_fence_acq();
if (pps->capgen != th->th_generation)
pps->capgen = 0;
--
2.35.3