Re: v3.13-rc6+ regression (ARM board)

From: John Stultz
Date: Thu Jan 02 2014 - 15:03:11 EST


On 01/02/2014 11:38 AM, Linus Torvalds wrote:
> On Thu, Jan 2, 2014 at 4:07 AM, Krzysztof HaÅasa <khalasa@xxxxxxx> wrote:
>> This means these two commits don't like each other:
>>
>> seqcount: Add lockdep functionality to seqcount/seqlock structures
>> sched_clock: Use seqcount instead of rolling our own
> Does something like this fix it for you?
>
> --- a/kernel/time/sched_clock.c
> +++ b/kernel/time/sched_clock.c
> @@ -36,6 +36,7 @@ core_param(irqtime, irqtime, int, 0400);
>
> static struct clock_data cd = {
> .mult = NSEC_PER_SEC / HZ,
> + .seq = SEQCNT_ZERO(cd.seq),
> };
>
> static u64 __read_mostly sched_clock_mask;
>
> (The above is not even compile-tested, because x86 doesn't use
> GENERIC_SCHED_CLOCK. So I did the patch blindly, but I think you get
> the idea..)

Sheesh. Just finishing up holiday email backlog and Linus already has a
fix. :)

This looks like it should fix the issue, and does build for me.

Assuming it works for Krzysztof,

Acked-by: John Stultz <john.stultz@xxxxxxxxxx>

I'll do another grep pass through -rc6 to make sure no other new
uninitialized seqlock usage was added.

thanks
-john

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/