[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 04/16] pc: memhp: do not emit inserting event for col
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL 04/16] pc: memhp: do not emit inserting event for coldplugged DIMMs |
Date: |
Thu, 29 Oct 2015 11:39:31 +0200 |
From: Igor Mammedov <address@hidden>
currently acpi_memory_plug_cb() sets is_inserting for
cold- and hot-plugged DIMMs as result ASL MHPD.MSCN()
method issues device check even for every coldplugged
DIMM. There isn't much harm in it but if we try to
unplug such DIMM, OSPM will issue device check
intstead of device eject event. So OSPM won't eject
memory module as expected and it will try to eject it
only when another memory device is hot-(un)plugged.
As a fix do not set 'is_inserting' event and do not
issue SCI for cold-plugged DIMMs as they are
enumerated and activated by OSPM during guest's boot.
Signed-off-by: Igor Mammedov <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
---
hw/acpi/memory_hotplug.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/hw/acpi/memory_hotplug.c b/hw/acpi/memory_hotplug.c
index 2ff0d5c..ce428df 100644
--- a/hw/acpi/memory_hotplug.c
+++ b/hw/acpi/memory_hotplug.c
@@ -238,10 +238,12 @@ void acpi_memory_plug_cb(ACPIREGS *ar, qemu_irq irq,
MemHotplugState *mem_st,
mdev->dimm = dev;
mdev->is_enabled = true;
- mdev->is_inserting = true;
+ if (dev->hotplugged) {
+ mdev->is_inserting = true;
- /* do ACPI magic */
- acpi_send_gpe_event(ar, irq, ACPI_MEMORY_HOTPLUG_STATUS);
+ /* do ACPI magic */
+ acpi_send_gpe_event(ar, irq, ACPI_MEMORY_HOTPLUG_STATUS);
+ }
return;
}
--
MST
- [Qemu-devel] [PULL 00/16] virtio, pc, memory: fixes+features for 2.5, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 01/16] vhost-user: cleanup struct size math, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 03/16] vhost-user-test: fix up rhel6 build, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 02/16] vhost-user: cleanup msg size math, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 04/16] pc: memhp: do not emit inserting event for coldplugged DIMMs,
Michael S. Tsirkin <=
- [Qemu-devel] [PULL 05/16] mmap-alloc: fix error handling, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 06/16] virtio: introduce virtio_map, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 07/16] virtio: switch to virtio_map, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 10/16] virtio-scsi: convert to virtqueue_map, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 12/16] Revert "pc: memhp: force gaps between DIMM's GPA", Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 11/16] virtio: drop virtqueue_map_sg, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 09/16] virtio-serial: convert to virtio_map, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 08/16] virtio-blk: convert to virtqueue_map, Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 13/16] Revert "memhp: extend address auto assignment to support gaps", Michael S. Tsirkin, 2015/10/29
- [Qemu-devel] [PULL 15/16] remove function during multi-function hot-add, Michael S. Tsirkin, 2015/10/29