All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Wu <lekensteyn@gmail.com>
To: Jordan Justen <jordan.l.justen@intel.com>, qemu-devel@nongnu.org
Cc: Paolo Bonzini <pbonzini@redhat.com>,
	Anthony Liguori <aliguori@us.ibm.com>,
	Xiao Guangrong <xiaoguangrong@linux.vnet.ibm.com>
Subject: [Qemu-devel] QEMU aborts since "kvm: support using KVM_MEM_READONLY flag for regions"
Date: Mon, 03 Jun 2013 19:23:01 +0200	[thread overview]
Message-ID: <11353237.fLVsHzmD7c@al> (raw)

Hi,

With the current git source (f10acc8b38d65a66ffa0588a036489d7fa6a593e),
`qemu-system-x86_64 -enable-kvm` fails to run with the following error:

    kvm_set_phys_mem: error unregistering overlapping slot: Invalid argument

After this message, qemu aborts. Reverting the following commit on top of
master makes the bug go away. Removing the `-enable-kvm` option also
allows QEMU to operate, but without KVM.

commit 235e8982ad393e5611cb892df54881c872eea9e1
Author: Jordan Justen <jordan.l.justen@intel.com>
Date:   Wed May 29 01:27:26 2013 -0700

    kvm: support using KVM_MEM_READONLY flag for regions
    
    For readonly memory regions and rom devices in romd_mode,
    we make use of the KVM_MEM_READONLY. A slot that uses
    KVM_MEM_READONLY can be read from and code can execute from the
    region, but writes will exit to qemu.
    
    For rom devices with !romd_mode, we force the slot to be
    removed so reads or writes to the region will exit to qemu.
    (Note that a memory region in this state is not executable
    within kvm.)

QEMU was built using GCC 4.8.0, runs on Arch Linux 64-bit with a
custom kernel, Linux 3.9.1. CPU: i5-460M. A backtrace is provided
on the bottom of this message. If you need more details, please ask.

Regards,
Peter

#0  0x00007ffff1a251c9 in raise () from /usr/lib/libc.so.6
#1  0x00007ffff1a265c8 in abort () from /usr/lib/libc.so.6
#2  0x00005555557dd84d in kvm_set_phys_mem (section=0x7fffe6fdca00, add=false) at /tmp/qemu/kvm-all.c:715
#3  0x00005555557e132c in address_space_update_topology_pass (as=as@entry=0x5555564dae00 <address_space_memory>, adding=adding@entry=false, old_view=..., new_view=...) at /tmp/qemu/memory.c:725
#4  0x00005555557e1f13 in address_space_update_topology (as=0x5555564dae00 <address_space_memory>) at /tmp/qemu/memory.c:761
#5  memory_region_transaction_commit () at /tmp/qemu/memory.c:786
#6  0x00005555557dfa42 in access_with_adjusted_size (addr=addr@entry=2, value=value@entry=0x7fffe6fdcc18, size=1, access_size_min=<optimized out>, access_size_max=<optimized out>, 
    access=access@entry=0x5555557e0000 <memory_region_write_accessor>, opaque=opaque@entry=0x55555658c238) at /tmp/qemu/memory.c:399
#7  0x00005555557e0f77 in memory_region_iorange_write (iorange=<optimized out>, offset=2, width=1, data=51) at /tmp/qemu/memory.c:475
#8  0x00005555557de562 in kvm_handle_io (count=1, size=1, direction=1, data=<optimized out>, port=3326) at /tmp/qemu/kvm-all.c:1507
#9  kvm_cpu_exec (env=env@entry=0x55555656f750) at /tmp/qemu/kvm-all.c:1659
#10 0x000055555578da05 in qemu_kvm_cpu_thread_fn (arg=0x55555656f750) at /tmp/qemu/cpus.c:759
#11 0x00007ffff6280dd2 in start_thread () from /usr/lib/libpthread.so.0
#12 0x00007ffff1ad5cdd in clone () from /usr/lib/libc.so.6

             reply	other threads:[~2013-06-03 17:23 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-03 17:23 Peter Wu [this message]
2013-06-03 17:35 ` [Qemu-devel] QEMU aborts since "kvm: support using KVM_MEM_READONLY flag for regions" Jordan Justen
2013-06-03 18:02   ` Peter Wu
2013-06-03 17:49 ` Anthony Liguori
2013-06-03 20:11   ` Paolo Bonzini
2013-06-03 20:20     ` Anthony Liguori
2013-06-04  6:39       ` Gleb Natapov

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=11353237.fLVsHzmD7c@al \
    --to=lekensteyn@gmail.com \
    --cc=aliguori@us.ibm.com \
    --cc=jordan.l.justen@intel.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=xiaoguangrong@linux.vnet.ibm.com \
    /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.