From 4149c6a3ecd5526a6819443c8cfd17cc77bcbb3a Mon Sep 17 00:00:00 2001 From: Konstantin Belousov Date: Wed, 10 Jun 2020 22:30:32 +0000 Subject: [PATCH] Remove double-calls to tc_get_timecount() to warm timecounters. It seems that second call does not add any useful state change for all implemented timecounters. Discussed with: bde Sponsored by: The FreeBSD Foundation MFC after: 3 weeks --- sys/dev/acpica/acpi.c | 1 - sys/dev/acpica/acpi_timer.c | 1 - sys/dev/xen/control/control.c | 1 - sys/kern/kern_tc.c | 3 --- 4 files changed, 6 deletions(-) diff --git a/sys/dev/acpica/acpi.c b/sys/dev/acpica/acpi.c index 7fa4caf1d74..c3da5eb4cbb 100644 --- a/sys/dev/acpica/acpi.c +++ b/sys/dev/acpica/acpi.c @@ -3220,7 +3220,6 @@ acpi_resync_clock(struct acpi_softc *sc) * Warm up timecounter again and reset system clock. */ (void)timecounter->tc_get_timecount(timecounter); - (void)timecounter->tc_get_timecount(timecounter); inittodr(time_second + sc->acpi_sleep_delay); } diff --git a/sys/dev/acpica/acpi_timer.c b/sys/dev/acpica/acpi_timer.c index 20ad87840c7..b15c39ac6bb 100644 --- a/sys/dev/acpica/acpi_timer.c +++ b/sys/dev/acpica/acpi_timer.c @@ -274,7 +274,6 @@ acpi_timer_resume_handler(struct timecounter *newtc) "restoring timecounter, %s -> %s\n", tc->tc_name, newtc->tc_name); (void)newtc->tc_get_timecount(newtc); - (void)newtc->tc_get_timecount(newtc); timecounter = newtc; } } diff --git a/sys/dev/xen/control/control.c b/sys/dev/xen/control/control.c index f569b04dd95..6c71e67eda0 100644 --- a/sys/dev/xen/control/control.c +++ b/sys/dev/xen/control/control.c @@ -303,7 +303,6 @@ xctrl_suspend() * Warm up timecounter again and reset system clock. */ timecounter->tc_get_timecount(timecounter); - timecounter->tc_get_timecount(timecounter); inittodr(time_second); #ifdef EARLY_AP_STARTUP diff --git a/sys/kern/kern_tc.c b/sys/kern/kern_tc.c index 8d943d055aa..467e5cf8ee3 100644 --- a/sys/kern/kern_tc.c +++ b/sys/kern/kern_tc.c @@ -1206,7 +1206,6 @@ tc_init(struct timecounter *tc) tc->tc_frequency < timecounter->tc_frequency) return; (void)tc->tc_get_timecount(tc); - (void)tc->tc_get_timecount(tc); timecounter = tc; } @@ -1469,7 +1468,6 @@ sysctl_kern_timecounter_hardware(SYSCTL_HANDLER_ARGS) /* Warm up new timecounter. */ (void)newtc->tc_get_timecount(newtc); - (void)newtc->tc_get_timecount(newtc); timecounter = newtc; @@ -1963,7 +1961,6 @@ inittimecounter(void *dummy) /* warm up new timecounter (again) and get rolling. */ (void)timecounter->tc_get_timecount(timecounter); - (void)timecounter->tc_get_timecount(timecounter); mtx_lock_spin(&tc_setclock_mtx); tc_windup(NULL); mtx_unlock_spin(&tc_setclock_mtx);