Statistics
| Branch: | Revision:

root @ a1b87fe0

Name Size
  QMP
  audio
  block
  bsd-user
  darwin-user
  default-configs
  docs
  fpu
  fsdev
  gdb-xml
  hw
  linux-user
  net
  pc-bios
  roms
  scripts
  slirp
  sysconfigs
  target-alpha
  target-arm
  target-cris
  target-i386
  target-m68k
  target-microblaze
  target-mips
  target-ppc
  target-s390x
  target-sh4
  target-sparc
  tcg
  tests
  ui
.gitignore 754 Bytes
.gitmodules 174 Bytes
CODING_STYLE 2.9 kB
COPYING 17.6 kB
COPYING.LIB 25.8 kB
Changelog 22.4 kB
HACKING 4.9 kB
LICENSE 637 Bytes
MAINTAINERS 8.9 kB
Makefile 12.7 kB
Makefile.dis 402 Bytes
Makefile.hw 510 Bytes
Makefile.objs 11.1 kB
Makefile.target 10.8 kB
Makefile.user 426 Bytes
README 59 Bytes
TODO 1.1 kB
VERSION 8 Bytes
a.out.h 13.6 kB
acl.c 4.4 kB
acl.h 2.1 kB
aes.c 59.7 kB
aes.h 717 Bytes
aio.c 5.8 kB
alpha-dis.c 79.9 kB
alpha.ld 3.9 kB
arch_init.c 17.5 kB
arch_init.h 861 Bytes
arm-dis.c 157.1 kB
arm-semi.c 15.2 kB
arm.ld 4.6 kB
async.c 5.9 kB
balloon.c 4.3 kB
balloon.h 894 Bytes
block-migration.c 19.6 kB
block-migration.h 504 Bytes
block.c 78 kB
block.h 11.2 kB
block_int.h 9.8 kB
blockdev.c 20.6 kB
blockdev.h 2.1 kB
bswap.h 5.3 kB
bt-host.c 5.2 kB
bt-host.h 123 Bytes
bt-vhci.c 4.5 kB
buffered_file.c 6.4 kB
buffered_file.h 916 Bytes
cache-utils.c 2.1 kB
cache-utils.h 1.1 kB
check-qdict.c 8.9 kB
check-qfloat.c 1.5 kB
check-qint.c 2.1 kB
check-qjson.c 19.9 kB
check-qlist.c 2.8 kB
check-qstring.c 2.8 kB
cmd.c 11.6 kB
cmd.h 2 kB
compatfd.c 2.3 kB
compatfd.h 1.5 kB
config.h 52 Bytes
configure 82.9 kB
console.c 46.8 kB
console.h 11.6 kB
cpu-all.h 23.6 kB
cpu-common.h 5.4 kB
cpu-defs.h 9.1 kB
cpu-exec.c 43.7 kB
cpus.c 22.5 kB
cpus.h 539 Bytes
cris-dis.c 80.3 kB
cursor.c 5.3 kB
cursor_hidden.xpm 1.3 kB
cursor_left_ptr.xpm 1.4 kB
cutils.c 9 kB
def-helper.h 7.2 kB
device_tree.c 2.6 kB
device_tree.h 942 Bytes
dis-asm.h 18.2 kB
disas.c 11.4 kB
disas.h 1.1 kB
dma-helpers.c 4.7 kB
dma.h 1.1 kB
dyngen-exec.h 2.4 kB
elf.h 45.3 kB
envlist.c 5.3 kB
envlist.h 484 Bytes
exec-all.h 11.4 kB
exec.c 126.3 kB
gdbstub.c 68.3 kB
gdbstub.h 1.3 kB
gen-icount.h 1.2 kB
hmp-commands.hx 36 kB
host-utils.c 2.8 kB
host-utils.h 5.4 kB
hpet.h 618 Bytes
hppa-dis.c 100.2 kB
hppa.ld 8 kB
i386-dis.c 159.1 kB
i386.ld 4.7 kB
ia64-dis.c 396.6 kB
ia64.ld 8.2 kB
input.c 7.7 kB
ioport-user.c 1.6 kB
ioport.c 8.8 kB
ioport.h 1.9 kB
iorange.h 663 Bytes
iov.c 1.6 kB
iov.h 638 Bytes
json-lexer.c 7.7 kB
json-lexer.h 977 Bytes
json-parser.c 13.1 kB
json-parser.h 421 Bytes
json-streamer.c 2.2 kB
json-streamer.h 959 Bytes
kvm-all.c 34.4 kB
kvm-stub.c 2.4 kB
kvm.h 5.5 kB
libfdt_env.h 1.1 kB
linux-aio.c 6.6 kB
m68k-dis.c 211.6 kB
m68k-semi.c 12.2 kB
m68k.ld 5.9 kB
microblaze-dis.c 62.1 kB
migration-exec.c 3.1 kB
migration-fd.c 2.8 kB
migration-tcp.c 4.6 kB
migration-unix.c 4.8 kB
migration.c 12.2 kB
migration.h 3.7 kB
mips-dis.c 206.6 kB
mips.ld 8.4 kB
module.c 1.3 kB
module.h 1.1 kB
monitor.c 142.7 kB
monitor.h 1.7 kB
nbd.c 16.4 kB
nbd.h 1.9 kB
net-checksum.c 2.2 kB
net.c 37.7 kB
net.h 5.8 kB
notify.c 814 Bytes
notify.h 857 Bytes
os-posix.c 8.5 kB
os-win32.c 7.1 kB
osdep.c 4 kB
osdep.h 3 kB
oslib-posix.c 4.1 kB
oslib-win32.c 3.3 kB
path.c 4.7 kB
pci-ids.txt 883 Bytes
pflib.c 6.6 kB
pflib.h 496 Bytes
poison.h 1.3 kB
posix-aio-compat.c 15.8 kB
ppc-dis.c 237 kB
ppc.ld 8.5 kB
ppc64.ld 7.8 kB
qbool.c 1.2 kB
qbool.h 535 Bytes
qdict-test-data.txt 88.4 kB
qdict.c 10.5 kB
qdict.h 2.1 kB
qemu-aio.h 2 kB
qemu-barrier.h 226 Bytes
qemu-char.c 67 kB
qemu-char.h 4.3 kB
qemu-common.h 10.3 kB
qemu-config.c 16.8 kB
qemu-config.h 542 Bytes
qemu-doc.texi 76.3 kB
qemu-error.c 4.3 kB
qemu-error.h 1.1 kB
qemu-img-cmds.hx 1.7 kB
qemu-img.c 41.6 kB
qemu-img.texi 8.6 kB
qemu-io.c 37.7 kB
qemu-lock.h 5.8 kB
qemu-log.h 2.1 kB
qemu-malloc.c 2.5 kB
qemu-nbd.c 13.7 kB
qemu-nbd.texi 1.5 kB
qemu-objects.h 506 Bytes
qemu-option.c 24.2 kB
qemu-option.h 5.2 kB
qemu-options.h 1.5 kB
qemu-options.hx 79.3 kB
qemu-os-posix.h 1.8 kB
qemu-os-win32.h 2.2 kB
qemu-queue.h 22 kB
qemu-sockets.c 18.9 kB
qemu-tech.texi 22.3 kB
qemu-thread.c 3.8 kB
qemu-thread.h 1.2 kB
qemu-timer-common.c 2 kB
qemu-timer.c 28.1 kB
qemu-timer.h 8.2 kB
qemu-tool.c 1.6 kB
qemu-x509.h 239 Bytes
qemu.sasl 1.3 kB
qemu_socket.h 1.7 kB
qerror.c 11.8 kB
qerror.h 5.3 kB
qfloat.c 1.3 kB
qfloat.h 562 Bytes
qint.c 1.2 kB
qint.h 539 Bytes
qjson.c 7.3 kB
qjson.h 708 Bytes
qlist.c 3 kB
qlist.h 1.3 kB
qmp-commands.hx 43 kB
qobject.h 2.7 kB
qstring.c 3.1 kB
qstring.h 884 Bytes
range.h 867 Bytes
readline.c 12.8 kB
readline.h 1.5 kB
rules.mak 2 kB
rwhandler.c 2.6 kB
rwhandler.h 981 Bytes
s390-dis.c 93.3 kB
s390.ld 6.9 kB
savevm.c 53.6 kB
sh4-dis.c 82.7 kB
simpletrace.c 5.9 kB
simpletrace.h 1.3 kB
softmmu-semi.h 2 kB
softmmu_defs.h 1.1 kB
softmmu_exec.h 3 kB
softmmu_header.h 4.8 kB
softmmu_template.h 12 kB
sparc-dis.c 171.7 kB
sparc.ld 4.7 kB
sparc64.ld 4.4 kB
spice-qemu-char.c 5.2 kB
sysemu.h 5.3 kB
targphys.h 538 Bytes
tcg-runtime.c 2.2 kB
thunk.c 8.2 kB
thunk.h 4.1 kB
trace-events 15.7 kB
translate-all.c 4.3 kB
uboot_image.h 5.9 kB
usb-bsd.c 17.4 kB
usb-linux.c 44.5 kB
usb-stub.c 1.8 kB
version.rc 749 Bytes
vgafont.h 93.3 kB
vl.c 87.6 kB
x86_64.ld 6.6 kB

Latest revisions

# Date Author Comment
748a680b 02/14/2011 04:39 pm Jan Kiszka

kvm: Report proper error on GET_VCPU_MMAP_SIZE failures

Signed-off-by: Jan Kiszka <>
Signed-off-by: Marcelo Tosatti <>

d31ae052 02/14/2011 04:39 pm Jan Kiszka

kvm: Drop redundant kvm_enabled from kvm_cpu_thread_fn

Signed-off-by: Jan Kiszka <>
Signed-off-by: Marcelo Tosatti <>

84b4915d 02/14/2011 04:39 pm Jan Kiszka

kvm: Handle kvm_init_vcpu errors

Do not ignore errors of kvm_init_vcpu, they are fatal.

Signed-off-by: Jan Kiszka <>
Signed-off-by: Marcelo Tosatti <>

a1b87fe0 02/14/2011 04:39 pm Jan Kiszka

kvm: Provide sigbus services arch-independently

Provide arch-independent kvm_on_sigbus* stubs to remove the #ifdef'ery
from cpus.c. This patch also fixes --disable-kvm build by providing the
missing kvm_on_sigbus_vcpu kvm-stub.

Signed-off-by: Jan Kiszka <>...

aa2c364b 02/14/2011 04:39 pm Jan Kiszka

Prevent abortion on multiple VCPU kicks

If we call qemu_cpu_kick more than once before the target was able to
process the signal, pthread_kill will fail, and qemu will abort. Prevent
this by avoiding the redundant signal.

This logic can be found in qemu-kvm as well....

b4a3d965 02/14/2011 04:39 pm Jan Kiszka

Stop current VCPU on synchronous reset requests

If some I/O operation ends up calling qemu_system_reset_request in VCPU
context, we record this and inform the io-thread, but we do not
terminate the VCPU loop. This can lead to fairly unexpected behavior if...

1745eaaa 02/14/2011 04:39 pm Jan Kiszka

Process vmstop requests in IO thread

A pending vmstop request is also a reason to leave the inner main loop.
So far we ignored it, and pending stop requests issued over VCPU threads
were simply ignored.

Signed-off-by: Jan Kiszka <>...

38145df2 02/14/2011 04:39 pm Jan Kiszka

Trigger exit from cpu_exec_all on pending IO events

Except for timer events, we currently do not leave the loop over all
VCPUs if an IO event was filed. That may cause unexpected IO latencies
under !CONFIG_IOTHREAD in SMP scenarios. Fix it by setting the global...

8e1b90ec 02/14/2011 04:39 pm Jan Kiszka

Leave inner main_loop faster on pending requests

If there is any pending request that requires us to leave the inner loop
if main_loop, makes sure we do this as soon as possible by enforcing
non-blocking IO processing.

At this change, move variable definitions out of the inner loop to...

46481d39 02/14/2011 04:39 pm Jan Kiszka

Flatten the main loop

First of all, vm_can_run is a misnomer, it actually means "no request
pending". Moreover, there is no need to check all pending requests
twice, the first time via the inner loop check and then again when
actually processing the requests. We can simply remove the inner loop...

View all revisions | View revisions

Also available in: Atom