aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2014-10-10 14:55:29 +0100
committerPeter Maydell <peter.maydell@linaro.org>2014-10-10 14:55:29 +0100
commitb1d28ec6a7dbdaadda39d29322f0de694aeb0b74 (patch)
tree140d0963a9a155976d2336daec81fffdbae1fc52 /hw
parent9d1c35dfc9940e4afa604a25f62b9dc197c513b6 (diff)
parent4b7757bae7c94f980969031119db12d540cf2b61 (diff)
downloadqemu-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.c2
-rw-r--r--hw/s390x/s390-virtio.c32
-rw-r--r--hw/s390x/virtio-ccw.c2
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,
};