diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2014-10-10 14:55:29 +0100 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2014-10-10 14:55:29 +0100 |
commit | b1d28ec6a7dbdaadda39d29322f0de694aeb0b74 (patch) | |
tree | 140d0963a9a155976d2336daec81fffdbae1fc52 /hw | |
parent | 9d1c35dfc9940e4afa604a25f62b9dc197c513b6 (diff) | |
parent | 4b7757bae7c94f980969031119db12d540cf2b61 (diff) | |
download | qemu-b1d28ec6a7dbdaadda39d29322f0de694aeb0b74.zip qemu-b1d28ec6a7dbdaadda39d29322f0de694aeb0b74.tar.gz qemu-b1d28ec6a7dbdaadda39d29322f0de694aeb0b74.tar.bz2 |
Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20141010' into staging
various s390x updates:
- cpu state handling in qemu and migration
- vhost-scsi-ccw bugfix
# gpg: Signature made Fri 10 Oct 2014 14:01:34 BST using RSA key ID C6F02FAF
# gpg: Can't check signature: public key not found
* remotes/cohuck/tags/s390x-20141010:
s390x/virtio-ccw: fix vhost-scsi intialization
s390x/migration: migrate CPU state
s390x/kvm: synchronize the cpu state after SIGP (INITIAL) CPU RESET
s390x/kvm: reuse kvm_s390_reset_vcpu() to get rid of ifdefs
s390x/kvm: propagate s390 cpu state to kvm
s390x/kvm: proper use of the cpu states OPERATING and STOPPED
s390x/kvm: introduce proper states for s390 cpus
linux-headers: update to 3.17-rc7
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/s390x/ipl.c | 2 | ||||
-rw-r--r-- | hw/s390x/s390-virtio.c | 32 | ||||
-rw-r--r-- | hw/s390x/virtio-ccw.c | 2 |
3 files changed, 2 insertions, 34 deletions
diff --git a/hw/s390x/ipl.c b/hw/s390x/ipl.c index 4fa9cff..3b77c9a 100644 --- a/hw/s390x/ipl.c +++ b/hw/s390x/ipl.c @@ -176,7 +176,7 @@ static void s390_ipl_reset(DeviceState *dev) } } - s390_add_running_cpu(cpu); + s390_cpu_set_state(CPU_STATE_OPERATING, cpu); } static void s390_ipl_class_init(ObjectClass *klass, void *data) diff --git a/hw/s390x/s390-virtio.c b/hw/s390x/s390-virtio.c index 9c61246..af0004a 100644 --- a/hw/s390x/s390-virtio.c +++ b/hw/s390x/s390-virtio.c @@ -125,38 +125,6 @@ static void s390_virtio_register_hcalls(void) s390_virtio_hcall_set_status); } -/* - * The number of running CPUs. On s390 a shutdown is the state of all CPUs - * being either stopped or disabled (for interrupts) waiting. We have to - * track this number to call the shutdown sequence accordingly. This - * number is modified either on startup or while holding the big qemu lock. - */ -static unsigned s390_running_cpus; - -void s390_add_running_cpu(S390CPU *cpu) -{ - CPUState *cs = CPU(cpu); - - if (cs->halted) { - s390_running_cpus++; - cs->halted = 0; - cs->exception_index = -1; - } -} - -unsigned s390_del_running_cpu(S390CPU *cpu) -{ - CPUState *cs = CPU(cpu); - - if (cs->halted == 0) { - assert(s390_running_cpus >= 1); - s390_running_cpus--; - cs->halted = 1; - cs->exception_index = EXCP_HLT; - } - return s390_running_cpus; -} - void s390_init_ipl_dev(const char *kernel_filename, const char *kernel_cmdline, const char *initrd_filename, diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c index e7d3ea1..18ba29f 100644 --- a/hw/s390x/virtio-ccw.c +++ b/hw/s390x/virtio-ccw.c @@ -1528,7 +1528,7 @@ static void vhost_ccw_scsi_class_init(ObjectClass *klass, void *data) static const TypeInfo vhost_ccw_scsi = { .name = TYPE_VHOST_SCSI_CCW, .parent = TYPE_VIRTIO_CCW_DEVICE, - .instance_size = sizeof(VirtIOSCSICcw), + .instance_size = sizeof(VHostSCSICcw), .instance_init = vhost_ccw_scsi_instance_init, .class_init = vhost_ccw_scsi_class_init, }; |