[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 06/10] acpi, mem-hotplug: Add unplug cb for memor
From: |
Zhu Guihua |
Subject: |
[Qemu-devel] [PATCH v3 06/10] acpi, mem-hotplug: Add unplug cb for memory device. |
Date: |
Thu, 26 Feb 2015 09:16:48 +0800 |
From: Tang Chen <address@hidden>
Reset all memory status, and unparent the memory device.
Signed-off-by: Tang Chen <address@hidden>
Signed-off-by: Zhu Guihua <address@hidden>
---
hw/acpi/memory_hotplug.c | 14 ++++++++++++++
include/hw/acpi/memory_hotplug.h | 2 ++
2 files changed, 16 insertions(+)
diff --git a/hw/acpi/memory_hotplug.c b/hw/acpi/memory_hotplug.c
index 02231d2..ffacecf 100644
--- a/hw/acpi/memory_hotplug.c
+++ b/hw/acpi/memory_hotplug.c
@@ -223,6 +223,20 @@ void acpi_memory_unplug_request_cb(ACPIREGS *ar, qemu_irq
irq,
acpi_send_gpe_event(ar, irq, ACPI_MEMORY_HOTPLUG_STATUS);
}
+void acpi_memory_unplug_cb(MemHotplugState *mem_st,
+ DeviceState *dev, Error **errp)
+{
+ MemStatus *mdev;
+
+ mdev = acpi_memory_slot_status(mem_st, dev, errp);
+ if (!mdev) {
+ return;
+ }
+
+ mdev->is_enabled = false;
+ mdev->dimm = NULL;
+}
+
static const VMStateDescription vmstate_memhp_sts = {
.name = "memory hotplug device state",
.version_id = 1,
diff --git a/include/hw/acpi/memory_hotplug.h b/include/hw/acpi/memory_hotplug.h
index c437a85..15deae0 100644
--- a/include/hw/acpi/memory_hotplug.h
+++ b/include/hw/acpi/memory_hotplug.h
@@ -32,6 +32,8 @@ void acpi_memory_plug_cb(ACPIREGS *ar, qemu_irq irq,
MemHotplugState *mem_st,
void acpi_memory_unplug_request_cb(ACPIREGS *ar, qemu_irq irq,
MemHotplugState *mem_st,
DeviceState *dev, Error **errp);
+void acpi_memory_unplug_cb(MemHotplugState *mem_st,
+ DeviceState *dev, Error **errp);
extern const VMStateDescription vmstate_memory_hotplug;
#define VMSTATE_MEMORY_HOTPLUG(memhp, state) \
--
1.9.3
- [Qemu-devel] [PATCH v3 00/10] QEMU memory hot unplug support, Zhu Guihua, 2015/02/25
- [Qemu-devel] [PATCH v3 01/10] acpi, mem-hotplug: Use PC_DIMM_SLOT_PROP in acpi_memory_plug_cb()., Zhu Guihua, 2015/02/25
- [Qemu-devel] [PATCH v3 03/10] acpi, mem-hotplug: Add acpi_send_gpe_event() to rise sci for memory hotplug., Zhu Guihua, 2015/02/25
- [Qemu-devel] [PATCH v3 02/10] acpi, mem-hotplug: Add acpi_memory_slot_status() to get MemStatus., Zhu Guihua, 2015/02/25
- [Qemu-devel] [PATCH v3 04/10] acpi, mem-hotplug: Add unplug request cb for memory device., Zhu Guihua, 2015/02/25
- [Qemu-devel] [PATCH v3 06/10] acpi, mem-hotplug: Add unplug cb for memory device.,
Zhu Guihua <=
- [Qemu-devel] [PATCH v3 05/10] ich9, piix4, pc-dimm: Add memory hot unplug request support, Zhu Guihua, 2015/02/25
- [Qemu-devel] [PATCH v3 08/10] qdev: make qdev_get_hotplug_handler() non-static, Zhu Guihua, 2015/02/25
- [Qemu-devel] [PATCH v3 07/10] ich9, piix4, pc-dimm: Add memory hot unplug support, Zhu Guihua, 2015/02/25
- [Qemu-devel] [PATCH v3 09/10] ssdt-mem: add MEMORY_SLOT_EJECT_METHOD, Zhu Guihua, 2015/02/25
- [Qemu-devel] [PATCH v3 10/10] acpi: Add hardware implementation for memory hot unplug., Zhu Guihua, 2015/02/25