[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 2/4] s390-cpu: ipi_states enhancements
From: |
Jason J. Herne |
Subject: |
[Qemu-devel] [PATCH 2/4] s390-cpu: ipi_states enhancements |
Date: |
Wed, 26 Feb 2014 12:18:32 -0500 |
From: "Jason J. Herne" <address@hidden>
Modify s390_cpu_addr2state to allow fetching state information for cpu addresses
above smp_cpus. Hotplug requires this capability.
Also add s390_cpu_set_state function to allow modification of ipi_state entries
during hotplug.
Signed-off-by: Jason J. Herne <address@hidden>
---
hw/s390x/s390-virtio.c | 9 +++++----
target-s390x/cpu.h | 1 +
2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/hw/s390x/s390-virtio.c b/hw/s390x/s390-virtio.c
index 00807e7..d47fecf 100644
--- a/hw/s390x/s390-virtio.c
+++ b/hw/s390x/s390-virtio.c
@@ -55,12 +55,13 @@ static VirtIOS390Bus *s390_bus;
static S390CPU **ipi_states;
uint8_t *storage_keys;
-S390CPU *s390_cpu_addr2state(uint16_t cpu_addr)
+void s390_cpu_set_ipistate(uint16_t cpu_addr, S390CPU *state)
{
- if (cpu_addr >= smp_cpus) {
- return NULL;
- }
+ ipi_states[cpu_addr] = state;
+}
+S390CPU *s390_cpu_addr2state(uint16_t cpu_addr)
+{
return ipi_states[cpu_addr];
}
diff --git a/target-s390x/cpu.h b/target-s390x/cpu.h
index 1f4ca4f..79f47b4 100644
--- a/target-s390x/cpu.h
+++ b/target-s390x/cpu.h
@@ -372,6 +372,7 @@ static inline void kvm_s390_interrupt_internal(S390CPU
*cpu, int type,
extern uint8_t *storage_keys;
+void s390_cpu_set_ipistate(uint16_t cpu_addr, S390CPU *state);
S390CPU *s390_cpu_addr2state(uint16_t cpu_addr);
void s390_add_running_cpu(S390CPU *cpu);
unsigned s390_del_running_cpu(S390CPU *cpu);
--
1.8.3.2