Messages in this thread | | | Date | Sun, 18 Apr 2021 09:20:50 -0700 | From | "Paul E. McKenney" <> | Subject | Re: [PATCH v8 clocksource 3/5] clocksource: Check per-CPU clock synchronization when marked unstable |
| |
On Sat, Apr 17, 2021 at 04:51:36PM -0700, Paul E. McKenney wrote: > On Sat, Apr 17, 2021 at 02:47:18PM +0200, Thomas Gleixner wrote:
[ . . . ]
> > > + delta = (s64)((csnow_mid - csnow_begin) & cs->mask); > > > + if (delta < 0) > > > + cpumask_set_cpu(cpu, &cpus_behind); > > > + delta = (csnow_end - csnow_mid) & cs->mask; > > > + if (delta < 0) > > > + cpumask_set_cpu(cpu, &cpus_ahead); > > > + delta = clocksource_delta(csnow_end, csnow_begin, cs->mask); > > > + cs_nsec = clocksource_cyc2ns(delta, cs->mult, cs->shift); > > > > > + if (firsttime || cs_nsec > cs_nsec_max) > > > + cs_nsec_max = cs_nsec; > > > + if (firsttime || cs_nsec < cs_nsec_min) > > > + cs_nsec_min = cs_nsec; > > > + firsttime = 0; > > > > int64_t cs_nsec_max = 0, cs_nsec_min = LLONG_MAX; > > > > and then the firsttime muck is not needed at all. > > Good point, will fix! > > And again, thank you for looking all of this over.
And overnight testing with a 50-microsecond WATCHDOG_MAX_SKEW was uneventful. However, I managed to miss printing when a retry was necessary, so all that says is that no more than three retries were ever required. So I added test code to print a message whenever two or more retries are required and restarted the tests. Shorter run, but more systems, so hopefully similar coverage.
If that works OK, I will resend the series this evening, Pacific Time.
Thanx, Paul
| |