Re: Bisected KVM hang on x86-32 between v3.12 and v3.13

From: Frederic Weisbecker
Date: Mon Apr 07 2014 - 15:00:33 EST

On Mon, Apr 07, 2014 at 08:16:24PM +0200, Toralf Förster wrote:
> Hash: SHA256
> On 04/07/2014 05:07 PM, Peter Zijlstra wrote:
> > On Mon, Apr 07, 2014 at 05:03:37PM +0200, Peter Zijlstra wrote:
> >> So what I suspect at this point is that because i386 and x86_64
> >> have a difference in current_thread_info() (i386 is stack based),
> >> we end up setting the TIF_NEED_RESCHED bit on the wrong stack.
> >>
> >> Now I have some vague memories of propagating the TIF flags on
> >> stack switch, but I cannot remember what arch we did that for.
> >> Let me stare at this a little more.
> >>
> >> Also, IFF this is the case, then the fingered patch above (and
> >> your suggested 'fix') aren't the real curlpit/cure but simply
> >> make it more/less likely to happen.
> >>
> >> Now, Steve had a patch somewhere that would make i386 use
> >> per-cpu variables for current_thread_info() just like x86_64
> >> already does I think. Let me go find them too.
> >
> > Ohh, goodie, they're already in Linus' tree. Could you see if
> > current git still suffers this problem?
> >
> v3.14-10353-g2b3a8fd works fine AFAICS
> (BTW the fix is stable material, right ?)

If we are reffering to 198d208df4371734ac4728f69cb585c284d20a15
(x86: Keep thread_info on thread stack in x86_32) it doesn't
carry a stable tag.

So to be clear, you are saying that v3.14 is fine but other release
are buggy? Which ones are these?

If a backport is needed, 198d208df4371734ac4728f69cb585c284d20a15 looks too large...
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at