All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Lieven <pl@dlhnet.de>
To: Avi Kivity <avi@redhat.com>
Cc: Jan Kiszka <jan.kiszka@siemens.com>,
	qemu-devel@nongnu.org, kvm@vger.kernel.org,
	Gleb Natapov <gleb@redhat.com>
Subject: Re: race between kvm-kmod-3.0 and kvm-kmod-3.3 // was: race condition in qemu-kvm-1.0.1
Date: Mon, 02 Jul 2012 17:57:32 +0200	[thread overview]
Message-ID: <4FF1C4EC.8080109@dlhnet.de> (raw)
In-Reply-To: <4FF1B8A6.2020101@redhat.com>

On 02.07.2012 17:05, Avi Kivity wrote:
> On 06/28/2012 12:38 PM, Peter Lieven wrote:
>> does anyone know whats that here in handle_mmio?
>>
>>      /* hack: Red Hat 7.1 generates these weird accesses. */
>>      if ((addr>  0xa0000-4&&  addr<= 0xa0000)&&  kvm_run->mmio.len == 3)
>>          return 0;
>>
> Just what it says.  There is a 4-byte access to address 0x9ffff.  The
> first byte lies in RAM, the next three bytes are in mmio.  qemu is
> geared to power-of-two accesses even though x86 can generate accesses to
> any number of bytes between 1 and 8.
I just stumbled across the word "hack" in the comment. When the race
occurs the CPU is basically reading from 0xa0000 in an endless loop.
> It appears that this has happened with your guest.  It's not impossible
> that it's genuine.
>
I had a lot to do the last days, but I update our build environment to
Ubuntu LTS 12.04 64-bit Server which is based on Linux 3.2.0. I still
see the issue. If I use the kvm Module provided with the kernel it is
working correctly. If I use kvm-kmod-3.4 with qemu-kvm-1.0.1 (both
from sourceforge) I can reproduce the race condition.

I will keep you posted when I have more evidence.

Thanks,
Peter

WARNING: multiple messages have this Message-ID (diff)
From: Peter Lieven <pl@dlhnet.de>
To: Avi Kivity <avi@redhat.com>
Cc: Jan Kiszka <jan.kiszka@siemens.com>,
	Gleb Natapov <gleb@redhat.com>,
	qemu-devel@nongnu.org, kvm@vger.kernel.org
Subject: Re: [Qemu-devel] race between kvm-kmod-3.0 and kvm-kmod-3.3 // was: race condition in qemu-kvm-1.0.1
Date: Mon, 02 Jul 2012 17:57:32 +0200	[thread overview]
Message-ID: <4FF1C4EC.8080109@dlhnet.de> (raw)
In-Reply-To: <4FF1B8A6.2020101@redhat.com>

On 02.07.2012 17:05, Avi Kivity wrote:
> On 06/28/2012 12:38 PM, Peter Lieven wrote:
>> does anyone know whats that here in handle_mmio?
>>
>>      /* hack: Red Hat 7.1 generates these weird accesses. */
>>      if ((addr>  0xa0000-4&&  addr<= 0xa0000)&&  kvm_run->mmio.len == 3)
>>          return 0;
>>
> Just what it says.  There is a 4-byte access to address 0x9ffff.  The
> first byte lies in RAM, the next three bytes are in mmio.  qemu is
> geared to power-of-two accesses even though x86 can generate accesses to
> any number of bytes between 1 and 8.
I just stumbled across the word "hack" in the comment. When the race
occurs the CPU is basically reading from 0xa0000 in an endless loop.
> It appears that this has happened with your guest.  It's not impossible
> that it's genuine.
>
I had a lot to do the last days, but I update our build environment to
Ubuntu LTS 12.04 64-bit Server which is based on Linux 3.2.0. I still
see the issue. If I use the kvm Module provided with the kernel it is
working correctly. If I use kvm-kmod-3.4 with qemu-kvm-1.0.1 (both
from sourceforge) I can reproduce the race condition.

I will keep you posted when I have more evidence.

Thanks,
Peter

  reply	other threads:[~2012-07-02 15:57 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-27 15:39 race between kvm-kmod-3.0 and kvm-kmod-3.3 // was: race condition in qemu-kvm-1.0.1 Peter Lieven
2012-06-27 16:54 ` Jan Kiszka
2012-06-28  9:11   ` Peter Lieven
2012-06-28  9:21     ` Jan Kiszka
2012-06-28  9:31       ` Peter Lieven
2012-06-28  9:38         ` Peter Lieven
2012-07-02 15:05           ` Avi Kivity
2012-07-02 15:05             ` [Qemu-devel] " Avi Kivity
2012-07-02 15:57             ` Peter Lieven [this message]
2012-07-02 15:57               ` Peter Lieven
2012-07-03 13:01             ` Peter Lieven
2012-07-03 13:01               ` [Qemu-devel] " Peter Lieven
2012-07-03 13:13               ` Avi Kivity
2012-07-03 13:13                 ` [Qemu-devel] " Avi Kivity
2012-07-03 13:15                 ` Peter Lieven
2012-07-03 13:15                   ` [Qemu-devel] " Peter Lieven
2012-07-03 13:25                   ` Avi Kivity
2012-07-03 13:25                     ` [Qemu-devel] " Avi Kivity
2012-07-04 14:57                     ` Peter Lieven
2012-07-04 14:57                       ` [Qemu-devel] " Peter Lieven
2012-07-04 23:12                 ` Peter Lieven
2012-07-04 23:12                   ` [Qemu-devel] " Peter Lieven
2012-07-05  6:48                   ` Xiao Guangrong
2012-07-05  6:48                     ` [Qemu-devel] " Xiao Guangrong
2012-06-28  9:39         ` Jan Kiszka
2012-06-28 10:13           ` Peter Lieven
2012-06-28 10:34           ` Peter Lieven
2012-07-05  8:51     ` Xiao Guangrong
2012-07-05  8:51       ` [Qemu-devel] " Xiao Guangrong
2012-07-05 12:42       ` Peter Lieven
2012-07-05 12:42         ` [Qemu-devel] " Peter Lieven

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=4FF1C4EC.8080109@dlhnet.de \
    --to=pl@dlhnet.de \
    --cc=avi@redhat.com \
    --cc=gleb@redhat.com \
    --cc=jan.kiszka@siemens.com \
    --cc=kvm@vger.kernel.org \
    --cc=qemu-devel@nongnu.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.