On Thu, Jul 19, 2018 at 6:40 AM Peter Zijlstra <pet...@infradead.org> wrote: > > On Tue, Jul 17, 2018 at 10:22:10PM -0400, Pavel Tatashin wrote: > > > diff --git a/kernel/sched/clock.c b/kernel/sched/clock.c > > index 0e9dbb2d9aea..7a8a63b940ee 100644 > > --- a/kernel/sched/clock.c > > +++ b/kernel/sched/clock.c > > @@ -202,7 +202,15 @@ static void __sched_clock_gtod_offset(void) > > > > void __init sched_clock_init(void) > > { > > + unsigned long flags; > > + > > sched_clock_running = 1; > > + > > + /* Adjust __gtod_offset for contigious transition from early clock */ > > + local_irq_save(flags); > > + sched_clock_tick(); > > + local_irq_restore(flags); > > + __sched_clock_gtod_offset(); > > I think we want to keep __sched_clock_gtod_offset() inside the IRQ > disabled region.
Fixed. > > And I just looked at my patch: > > > https://lkml.kernel.org/r/20180626090003.ga2...@hirez.programming.kicks-ass.net > > and that had a comment about how we wanted to set the gtod offset > _before_ setting sched_clock_running, yet here you do it the other way > around. Hmm? Fixed, and added your comment. Thank you, Pavel