clockintr_cpu_init: fix clockintr staggering
authorcheloha <cheloha@openbsd.org>
Fri, 21 Apr 2023 03:03:50 +0000 (03:03 +0000)
committercheloha <cheloha@openbsd.org>
Fri, 21 Apr 2023 03:03:50 +0000 (03:03 +0000)
Use reset_cq_intrclock as a stand-in for the CQ_INTRCLOCK flag when
deciding whether to stagger clockintr expirations across CPUs.

sys/kern/kern_clockintr.c

index 1bb957b..af6198c 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: kern_clockintr.c,v 1.14 2023/04/21 02:41:06 cheloha Exp $ */
+/* $OpenBSD: kern_clockintr.c,v 1.15 2023/04/21 03:03:50 cheloha Exp $ */
 /*
  * Copyright (c) 2003 Dale Rahn <drahn@openbsd.org>
  * Copyright (c) 2020 Mark Kettenis <kettenis@openbsd.org>
@@ -158,7 +158,7 @@ clockintr_cpu_init(const struct intrclock *ic)
         * anyway.  The primary CPU's starting offset is always zero, so
         * leave the multiplier zero.
         */
-       if (!CPU_IS_PRIMARY(ci) && ISSET(cq->cq_flags, CQ_INTRCLOCK))
+       if (!CPU_IS_PRIMARY(ci) && reset_cq_intrclock)
                multiplier = CPU_INFO_UNIT(ci);
 
        cq->cq_uptime = nsecuptime();