Re: [PATCH v2 1/3] x86, sched: check for counters overflow in frequency invariant accounting

From: Peter Zijlstra
Date: Thu Oct 22 2020 - 08:30:55 EST


On Thu, Oct 22, 2020 at 02:21:58PM +0200, Giovanni Gherdovich wrote:
> On Thu, 2020-10-22 at 10:46 +0200, Peter Zijlstra wrote:
> > On Sun, May 31, 2020 at 08:24:51PM +0200, Giovanni Gherdovich wrote:
> >
> > Hi Giovanni!
> >
> > > +error:
> > > + pr_warn("Scheduler frequency invariance went wobbly, disabling!\n");
> > > + schedule_work(&disable_freq_invariance_work);
> > > +}
> >
> > I'm getting reports that we trigger this on resume. Would it make sense
> > to hook into tsc_{save,restore}_sched_clock_state() (or somewhere near
> > there) to reset the state (basically call init_counter_refs() again to
> > ensure we're not having to deal with crazy ?
>
> Hello,
>
> right, if the counters keep running while the machine is suspended then the
> current code thinks it's a runtime overflow. I'll prepare a patch to fix that,
> thanks for the heads-up and the hint.

Either keep running, get reset, get scrambled, everything is possible.

Thanks!