lkml.org 
[lkml]   [2015]   [Jun]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [BUG, bisect] hrtimer: severe lag after suspend & resume
Thomas,

On Thu, Jun 04, 2015 at 01:22:45PM +0200, Thomas Gleixner wrote:
> On Wed, 3 Jun 2015, Jeremiah Mahler wrote:
[...]
>
> I had to wrap my head around that for quite a while, but I think I
> have decoded the issue. Can you please test the patch below whether it
> solves your problem?
>
> Thanks,
>
> tglx
>
> ------------------------>
>
> diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c
> index 278d4b36fd94..e9dfcd0b8c41 100644
> --- a/kernel/time/hrtimer.c
> +++ b/kernel/time/hrtimer.c
> @@ -1492,6 +1492,12 @@ static void init_hrtimers_cpu(int cpu)
>
> cpu_base->cpu = cpu;
> hrtimer_init_hres(cpu_base);
> + /*
> + * Force an update by setting the clock was set sequence to an
> + * odd value.
> + */
> + cpu_base->clock_was_set_seq = 1;
> + hrtimer_update_base(cpu_base);
> }
>
> #ifdef CONFIG_HOTPLUG_CPU
> diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
> index 90ed5db67c1d..c97710137a9e 100644
> --- a/kernel/time/timekeeping.c
> +++ b/kernel/time/timekeeping.c
> @@ -593,7 +593,7 @@ static void timekeeping_update(struct timekeeper *tk, unsigned int action)
> update_fast_timekeeper(&tk->tkr_raw, &tk_fast_raw);
>
> if (action & TK_CLOCK_WAS_SET)
> - tk->clock_was_set_seq++;
> + tk->clock_was_set_seq += 2;
> }
>
> /**

With this change it won't boot. It just hangs at "Booting the kernel".

--
- Jeremiah Mahler


\
 
 \ /
  Last update: 2015-06-04 22:41    [W:0.101 / U:0.260 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site