QEMU With E2K User Support
Go to file
David Hildenbrand 75973bfe41 s390x/kvm: introduce proper states for s390 cpus
Until now, when a s390 cpu was stopped or halted, the number of running
CPUs was tracked in a global variable. This was problematic for migration,
so Jason came up with a per-cpu running state.
As it turns out, we want to track the full logical state of a target vcpu,
so we need real s390 cpu states.

This patch is based on an initial patch by Jason Herne, but was heavily
rewritten when adding the cpu states STOPPED and OPERATING. On the way we
move add_del_running to cpu.c (the declaration is already in cpu.h) and
modify the users where appropriate.

Please note that the cpu is still set to be stopped when it is
halted, which is wrong. This will be fixed in the next patch. The LOAD and
CHECK-STOP state will not be used in the first step.

Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
[folded Jason's patch into David's patch to avoid add/remove same lines]
Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
CC: Andreas Faerber <afaerber@suse.de>
Tested-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
2014-10-10 10:37:47 +02:00
audio
backends pci, pc, virtio, misc bugfixes 2014-09-18 20:02:01 +01:00
block qapi: Add corrupt field to ImageInfoSpecificQCow2 2014-10-04 19:18:17 +01:00
bsd-user
default-configs PPC: Fix default config ordering and add eTSEC for ppc64 2014-09-08 12:50:54 +02:00
disas tcg-sparc: Use UMULXHI instruction 2014-09-29 14:55:27 -04:00
docs Block patches 2014-09-29 12:26:15 +01:00
dtc@bc895d6d09
fpu fpu: softfloat: drop INLINE macro 2014-06-23 11:00:12 -04:00
fsdev
gdb-xml s390x/gdb: add the feature xml files for s390x 2014-09-01 09:45:19 +02:00
hw s390x/kvm: introduce proper states for s390 cpus 2014-10-10 10:37:47 +02:00
include Four changes here. Polling for reconnection of character devices, 2014-10-09 15:09:05 +01:00
libcacard Fix typos and misspellings in comments 2014-09-20 17:55:53 +04:00
libdecnumber libdecnumber: Fix warnings from smatch (missing static, boolean operations) 2014-08-24 13:21:06 +04:00
linux-headers linux-headers: update to 3.17-rc7 2014-10-10 10:37:47 +02:00
linux-user translate-all.c: memory walker initial address miscalculation 2014-10-06 21:53:35 +03:00
net Net patches 2014-09-04 17:39:07 +01:00
pc-bios linuxboot: compute initrd loading address 2014-10-09 15:36:15 +02:00
pixman@87eea99e44 pixman: update internal copy to pixman-0.32.6 2014-09-15 08:14:19 +02:00
po po: fix conflict with %.mo rule in rules.mak 2014-09-26 13:35:08 +02:00
qapi qapi: Add corrupt field to ImageInfoSpecificQCow2 2014-10-04 19:18:17 +01:00
qga channel-posix: using qemu_set_nonblock() instead of fcntl(O_NONBLOCK) 2014-08-15 18:03:13 +01:00
qobject json-lexer: fix escaped backslash in single-quoted string 2014-06-23 11:01:24 -04:00
qom qom: Add cpu_exec_interrupt hook 2014-09-25 18:54:21 +01:00
roms Update OpenBIOS images 2014-09-25 13:34:03 +01:00
scripts Merge remote-tracking branch 'remotes/qmp-unstable/queue/qmp' into staging 2014-09-29 18:18:29 +01:00
slirp slirp: udp: fix NULL pointer dereference because of uninitialized socket 2014-09-23 19:15:05 +01:00
stubs block: Keep DriveInfo alive until BlockDriverState dies 2014-09-25 15:24:14 +02:00
sysconfigs/target
target-alpha target-alpha: Use cpu_exec_interrupt qom hook 2014-09-25 18:54:21 +01:00
target-arm gdbstub: Allow target CPUs to specify watchpoint STOP_BEFORE_ACCESS flag 2014-10-06 14:25:43 +01:00
target-cris gdbstub: Allow target CPUs to specify watchpoint STOP_BEFORE_ACCESS flag 2014-10-06 14:25:43 +01:00
target-i386 Usual mix of patches, the most important being Alex and Marcelo's 2014-09-26 15:41:50 +01:00
target-lm32 gdbstub: Allow target CPUs to specify watchpoint STOP_BEFORE_ACCESS flag 2014-10-06 14:25:43 +01:00
target-m68k target-m68k: Use cpu_exec_interrupt qom hook 2014-09-25 18:54:21 +01:00
target-microblaze target-microblaze: Use cpu_exec_interrupt qom hook 2014-09-25 18:54:22 +01:00
target-mips gdbstub: Allow target CPUs to specify watchpoint STOP_BEFORE_ACCESS flag 2014-10-06 14:25:43 +01:00
target-moxie
target-openrisc target-openrisc: Use cpu_exec_interrupt qom hook 2014-09-25 18:54:22 +01:00
target-ppc target-ppc: Use cpu_exec_interrupt qom hook 2014-09-25 18:54:22 +01:00
target-s390x s390x/kvm: introduce proper states for s390 cpus 2014-10-10 10:37:47 +02:00
target-sh4 target-sh4: Use cpu_exec_interrupt qom hook 2014-09-25 18:54:22 +01:00
target-sparc target-sparc: Use cpu_exec_interrupt qom hook 2014-09-25 18:54:22 +01:00
target-tricore target-tricore: Remove the dummy interrupt boilerplate 2014-09-25 18:54:22 +01:00
target-unicore32 target-unicore32: Use cpu_exec_interrupt qom hook 2014-09-25 18:54:22 +01:00
target-xtensa gdbstub: Allow target CPUs to specify watchpoint STOP_BEFORE_ACCESS flag 2014-10-06 14:25:43 +01:00
tcg tcg: Always enable TCGv type checking 2014-09-29 14:55:28 -04:00
tests blockdev-test: Test device_del after drive_del 2014-10-04 19:28:39 +01:00
trace trace: [hmp] Reimplement "trace-event" and "info trace-events" using QMP 2014-09-26 09:34:38 +01:00
ui input monitor patches: fix send-key release ordering 2014-10-02 15:01:48 +01:00
util Four changes here. Polling for reconnection of character devices, 2014-10-09 15:09:05 +01:00
.exrc
.gitignore trace: [tcg] Generate TCG tracing routines 2014-08-12 14:26:12 +01:00
.gitmodules
.mailmap
.travis.yml .travis.yml: remove "make check" from main matrix 2014-09-26 21:05:06 +04:00
accel.c accel: Create accel object when initializing machine 2014-10-09 15:36:14 +02:00
aio-posix.c AioContext: introduce aio_prepare 2014-08-29 10:46:58 +01:00
aio-win32.c aio-win32: avoid out-of-bounds access to the events array 2014-09-22 11:39:21 +01:00
arch_init.c accel: Remove tcg_available() function 2014-10-04 08:59:15 +02:00
async.c async: aio_context_new(): Handle event_notifier_init failure 2014-09-22 11:39:48 +01:00
balloon.c qapi event: convert BALLOON_CHANGE 2014-06-23 11:12:28 -04:00
block-migration.c block: Use g_new() & friends where that makes obvious sense 2014-08-20 11:51:28 +02:00
block.c util: Emancipate id_wellformed() from QemuOpts 2014-10-03 10:30:33 +01:00
blockdev-nbd.c block: Use g_new() & friends where that makes obvious sense 2014-08-20 11:51:28 +02:00
blockdev.c ide: Update ide_drive_get to be HBA agnostic 2014-10-03 10:30:33 +01:00
blockjob.c coroutine: Drop co_sleep_ns 2014-08-29 10:46:58 +01:00
bt-host.c
bt-vhci.c
Changelog
CODING_STYLE CODING_STYLE: Section about conditional statement 2014-08-15 18:54:06 +04:00
configure configure: Build GDB XML for 32 bit ARM CPUs into qemu aarch64 binaries 2014-09-29 18:48:47 +01:00
COPYING
COPYING.LIB
coroutine-gthread.c
coroutine-sigaltstack.c
coroutine-ucontext.c
coroutine-win32.c coroutine-win32.c: Add noinline attribute to work around gcc bug 2014-06-26 14:08:14 +01:00
cpu-exec.c cpu-exec: Do CPU_INTERRUPT_HALT unconditionally 2014-09-25 18:54:22 +01:00
cpus.c Introduce cpu_clean_all_dirty 2014-09-16 11:04:09 +02:00
cputlb.c implementing victim TLB for QEMU system emulated TLB 2014-09-01 17:43:06 +01:00
device_tree.c device_tree.c: dump all err mesages with error_report 2014-09-02 22:38:16 +04:00
device-hotplug.c
disas.c
dma-helpers.c block: Rename qemu_aio_release -> qemu_aio_unref 2014-09-22 11:39:17 +01:00
dump.c dump.c: Fix memory leak issue in cleanup processing for dump_init() 2014-08-18 14:39:10 -04:00
exec.c exec.c: fix setting 1-byte-long watchpoints 2014-09-19 17:42:16 +01:00
gdbstub.c gdbstub: Allow target CPUs to specify watchpoint STOP_BEFORE_ACCESS flag 2014-10-06 14:25:43 +01:00
HACKING
hmp-commands.hx Add HMP command "info memory-devices" 2014-09-26 13:37:06 -04:00
hmp.c Add HMP command "info memory-devices" 2014-09-26 13:37:06 -04:00
hmp.h Add HMP command "info memory-devices" 2014-09-26 13:37:06 -04:00
iohandler.c
ioport.c memory: convert memory_region_destroy to object_unparent 2014-08-18 12:06:20 +02:00
iothread.c async: aio_context_new(): Handle event_notifier_init failure 2014-09-22 11:39:48 +01:00
kvm-all.c kvm: Make KVMState be the TYPE_KVM_ACCEL instance struct 2014-10-09 15:36:15 +02:00
kvm-stub.c accel: Move KVM accel registration to kvm-all.c 2014-10-04 08:59:15 +02:00
LICENSE
main-loop.c main-loop.c: Handle SIGINT, SIGHUP and SIGTERM synchronously 2014-09-26 11:47:30 +01:00
MAINTAINERS MAINTAINERS: update sheepdog maintainer 2014-09-08 11:12:43 +01:00
Makefile trace: install trace-events file 2014-09-26 09:34:39 +01:00
Makefile.objs accel: Move accel code to accel.c 2014-10-04 08:59:15 +02:00
Makefile.target trace: [tcg] Define TCG tracing helper routines 2014-08-12 14:26:12 +01:00
memory_mapping.c
memory.c memory: add parameter errp to memory_region_init_rom_device 2014-09-09 13:41:44 +02:00
migration-exec.c
migration-fd.c
migration-rdma.c rdma: Fix incorrect description in comments 2014-09-20 17:55:53 +04:00
migration-tcp.c qemu-sockets: Add error to non-blocking connect handler 2014-10-09 15:36:15 +02:00
migration-unix.c qemu-sockets: Add error to non-blocking connect handler 2014-10-09 15:36:15 +02:00
migration.c
module-common.c
monitor.c Add HMP command "info memory-devices" 2014-09-26 13:37:06 -04:00
nbd.c nbd: Follow the BDS' AIO context 2014-08-29 10:48:45 +01:00
numa.c memory: add parameter errp to memory_region_init_ram 2014-09-09 13:41:43 +02:00
os-posix.c os-posix: report error message when lock file failed 2014-09-26 21:21:09 +04:00
os-win32.c
page_cache.c
qapi-schema.json Four changes here. Polling for reconnection of character devices, 2014-10-09 15:09:05 +01:00
qdev-monitor.c qdev-monitor: fix segmentation fault on qdev_device_help() 2014-09-22 11:39:18 +01:00
qdict-test-data.txt
qemu-bridge-helper.c qemu-bridge-helper: Fix fd leak in main() 2014-06-27 10:39:10 +02:00
qemu-char.c qemu-char: Fix reconnect socket error reporting 2014-10-09 15:36:15 +02:00
qemu-coroutine-io.c qemu-coroutine-io: fix for Win32 2014-08-29 10:46:58 +01:00
qemu-coroutine-lock.c
qemu-coroutine-sleep.c coroutine: Drop co_sleep_ns 2014-08-29 10:46:58 +01:00
qemu-coroutine.c coroutine: make pool size dynamic 2014-08-15 15:07:14 +02:00
qemu-doc.texi block: delete cow block driver 2014-09-22 11:39:45 +01:00
qemu-file.c
qemu-img-cmds.hx qemu-img: Allow cache mode specification for amend 2014-08-22 14:54:48 +02:00
qemu-img.c block: Drop superfluous conditionals around qemu_opts_del() 2014-10-03 10:30:33 +01:00
qemu-img.texi block: delete cow block driver 2014-09-22 11:39:45 +01:00
qemu-io-cmds.c qemu-io-cmds: g_renew() can't fail, bury dead error handling 2014-08-20 11:51:28 +02:00
qemu-io.c async: aio_context_new(): Handle event_notifier_init failure 2014-09-22 11:39:48 +01:00
qemu-log.c
qemu-nbd.c block: Drop superfluous conditionals around qemu_opts_del() 2014-10-03 10:30:33 +01:00
qemu-nbd.texi
qemu-options-wrapper.h
qemu-options.h
qemu-options.hx qemu-char: Add reconnecting to client sockets 2014-10-04 08:59:14 +02:00
qemu-seccomp.c seccomp: add semctl() to the syscall whitelist 2014-08-21 10:29:16 +02:00
qemu-tech.texi
qemu-timer.c
qemu.nsi
qemu.sasl
qmp-commands.hx add input-send-event command 2014-10-02 09:58:14 +02:00
qmp.c qmp: hide "hotplugged" device property from device-list-properties 2014-08-15 15:07:13 +02:00
qtest.c accel: Pass MachineState object to accel init functions 2014-10-09 12:57:10 +02:00
README
rules.mak Fix cross compilation (nm command) 2014-09-19 17:20:11 +01:00
savevm.c snapshot: fix referencing wrong variable in while loop in do_delvm 2014-10-03 10:30:33 +01:00
softmmu_template.h implementing victim TLB for QEMU system emulated TLB 2014-09-01 17:43:06 +01:00
spice-qemu-char.c qemu-char: Rename register_char_driver_qapi() to register_char_driver() 2014-09-16 23:36:32 +01:00
tcg-runtime.c
tci.c
thread-pool.c block: Rename qemu_aio_release -> qemu_aio_unref 2014-09-22 11:39:17 +01:00
thunk.c
tpm.c
trace-events Usual mix of patches, the most important being Alex and Marcelo's 2014-09-26 15:41:50 +01:00
translate-all.c translate-all.c: memory walker initial address miscalculation 2014-10-06 21:53:35 +03:00
translate-all.h
user-exec.c
VERSION Open 2.2 development tree 2014-08-01 18:30:08 +01:00
version.rc
vl.c Four changes here. Polling for reconnection of character devices, 2014-10-09 15:09:05 +01:00
vmstate.c vmstate: Add preallocation for migrating arrays (VMS_ALLOC flag) 2014-06-27 13:48:27 +02:00
xbzrle.c
xen-common-stub.c accel: Move Xen registration code to xen-common.c 2014-10-04 08:59:15 +02:00
xen-common.c accel: Pass MachineState object to accel init functions 2014-10-09 12:57:10 +02:00
xen-hvm-stub.c xen-hvm: Fix xen_hvm_init() to adjust pc memory layout 2014-06-23 17:50:04 +03:00
xen-hvm.c xen-hvm.c: Always return -1 when failure occurs in xen_hvm_init() 2014-09-20 17:55:53 +04:00
xen-mapcache.c xen: build on ARM 2014-07-07 10:37:40 +00:00

Read the documentation in qemu-doc.html or on http://wiki.qemu-project.org

- QEMU team