On Tue, Jan 31, 2017 at 02:33:29PM +0100, Thomas Gleixner wrote:
> On Tue, 31 Jan 2017, Thomas Gleixner wrote:
> > +static void mce_start_timer(struct timer_list *t)
> >  {
> >     unsigned long iv = check_interval * HZ;
> >  
> >     if (mca_cfg.ignore_ce || !iv)
> >             return;
> >  
> > -   per_cpu(mce_next_interval, cpu) = iv;
> > -
> > -   t->expires = round_jiffies(jiffies + iv);
> > -   add_timer_on(t, cpu);
> > +   this_cpu_write(mce_next_interval, iv);
> > +   __start_timer(t, jiffies + iv);
> 
> Bah. That's wrong. Delta patch below:
> 
> --- a/arch/x86/kernel/cpu/mcheck/mce.c
> +++ b/arch/x86/kernel/cpu/mcheck/mce.c
> @@ -1782,7 +1782,7 @@ static void mce_start_timer(struct timer
>               return;
>  
>       this_cpu_write(mce_next_interval, iv);
> -     __start_timer(t, jiffies + iv);
> +     __start_timer(t, iv);
>  }
>  
>  static void __mcheck_cpu_setup_timer(void)

With that hunk merged in:

Reviewed-by: Borislav Petkov <[email protected]>
Tested-by: Borislav Petkov <[email protected]>

Thanks!

-- 
Regards/Gruss,
    Boris.

Good mailing practices for 400: avoid top-posting and trim the reply.

Reply via email to