Re: 2.6.{26.2,27-rc} oops on virtualbox

From: Mathieu Desnoyers
Date: Tue Aug 26 2008 - 13:18:37 EST


* Luiz Fernando N. Capitulino (lcapitulino@xxxxxxxxxxxxxxx) wrote:
> Em Tue, 26 Aug 2008 10:53:38 -0400
> Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxx> escreveu:
>
> | Then, after having tested (2), try this on top of it :
> |
> | In arch/x86/kernel/alternative.c, alternatives_smp_switch()
> |
> | Add unsigned long flags;
> | Change
> | spin_lock -> spin_lock_irqsave(&smp_alt, flags);
> | spin_unlock(&smp_alt); -> spin_unlock_irqrestore(&smp_alt, flags);
>
> Hmm, I can't find spin_lock functions in alternatives_smp_switch()
> looks like the current implementation is now using mutexes.
>

Sorry, I was looking directly at the commit which caused the problem.
Yes, these modif should go on top of the text_poke -> text_poke_early.

So in current mainline, change, in alternatives_smp_switch() :

mutex_lock(&smp_alt);
...

mutex_unlock(&smp_alt);

to

mutex_lock(&smp_alt);
local_irq_save(flags);
...

local_irq_restore(flags);
mutex_unlock(&smp_alt);

Thanks,

Mathieu

> What tree are you referring to?
>
> --
> Luiz Fernando N. Capitulino

--
Mathieu Desnoyers
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
--
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/