lkml.org 
[lkml]   [2008]   [Aug]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: 2.6.{26.2,27-rc} oops on virtualbox
* Luiz Fernando N. Capitulino (lcapitulino@mandriva.com.br) wrote:
> Em Tue, 26 Aug 2008 22:34:49 +0200
> Gerhard Brauer <gerhard.brauer@web.de> escreveu:
>
> | On Tue, Aug 26, 2008 at 02:15:58PM -0400, Mathieu Desnoyers wrote:
> | >
> | > Ok, it might still be caused by paravirt and alternatives instruction
> | > patching. What if you also do :
> | >
> | > alternative_instructions()
> | >
> | > + unsigned long flags;
> | > /* The patching is not fully atomic, so try to avoid local interruptions
> | > that might execute the to be patched code.
> | > Other CPUs are not running. */
> | > stop_nmi();
> | > #ifdef CONFIG_X86_MCE
> | > stop_mce();
> | > #endif
> | > + local_irq_save(flags);
> | >
> | >
> | > ...
> | > + local_irq_restore(flags);
> | > restart_nmi();
> | > #ifdef CONFIG_X86_MCE
> | > restart_mce();
> | > #endif
> | >
> | > ?
> |
> | Hej! This last changes (in addition to the others you mentioned) seems
> | to be a good shot. I could reboot 8 times the guest, compile several
> | packages (something which always leeds to the oops) and currently i
> | build two big packages simultan. So this is heavy IO.
>
> Yeah, it works for me too and it's good to know that you are doing
> additional tests. I'm doing only boot tests... I was testing lots of
> kernels and doing additional tests would take a lot of time.
>
> Now, what does this mean? Is VirtualBox issuing interrupts when it
> shouldn't or should this section of the code be better protected?
>

Since this problem appears while we are using a simple memcpy (the
text_poke_early version), but disappears when we disable interrupts for
a longer period of this, I suspect a problem with irq disabling in
Virtualbox.

We could try to add some nsleep() or msleep() calls within text_poke and
text_poke_early before and after the code modificatoin to see if the
problem disappears. If it does, then that would somewhat confirm the
racy irq disable thesis.

Mathieu

> --
> Luiz Fernando N. Capitulino

--
Mathieu Desnoyers
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68


\
 
 \ /
  Last update: 2008-08-28 01:35    [W:0.104 / U:8.692 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site