All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Biedl <linux-kernel.bfrz@manchmal.in-ulm.de>
To: linux-kernel@vger.kernel.org
Subject: Re: 2.6.32 stalls as guest in virtualbox
Date: Sat, 30 Jan 2010 19:46:24 +0100	[thread overview]
Message-ID: <1264877041@msgid.manchmal.in-ulm.de> (raw)
In-Reply-To: <1264788823@msgid.manchmal.in-ulm.de>

Christoph Biedl wrote...

(...)

Christian Ehrhard gave me a lot of help understanding the kernel sides
of that issue, thanks for this.  Appearently virtualbox cannot
properly deal with the result of alternative_io in
arch/x86/include/asm/cmpxchg_32.h since this klugdy patch

--- a/arch/x86/include/asm/cmpxchg_32.h
+++ b/arch/x86/include/asm/cmpxchg_32.h
@@ -317,7 +317,7 @@ extern unsigned long long cmpxchg_486_u64(volatile void *, u64, u64);
        __typeof__(*(ptr)) __ret;                               \
        __typeof__(*(ptr)) __old = (o);                         \
        __typeof__(*(ptr)) __new = (n);                         \
-       alternative_io("call cmpxchg8b_emu",                    \
+       alternative_io("lock; cmpxchg8b (%%esi)",               \
                        "lock; cmpxchg8b (%%esi)" ,             \
                       X86_FEATURE_CX8,                         \
                       "=A" (__ret),                            \

fixes the problem, 

Unlike his findings described in
<http://marc.info/?l=linux-kernel&m=121545190107704&w=2>, the guest
does not crash but seems to run into a busy loop instead.

A acceptable workaround is selecting CONFIG_M686 (but not CONFIG_M586).

Now I guess this is rather something to virtualbox guys should take
care of, therefore I've opened a ticket there:
http://www.virtualbox.org/ticket/6100

    Christoph

      reply	other threads:[~2010-01-30 18:46 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-29 18:16 2.6.32 stalls as guest in virtualbox Christoph Biedl
2010-01-30 18:46 ` Christoph Biedl [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1264877041@msgid.manchmal.in-ulm.de \
    --to=linux-kernel.bfrz@manchmal.in-ulm.de \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.