[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 10/16] hw/i386: check if nvdimm is enabled before plu
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL 10/16] hw/i386: check if nvdimm is enabled before plugging |
Date: |
Wed, 25 Jan 2017 00:36:47 +0200 |
From: Haozhong Zhang <address@hidden>
The missing of 'nvdimm' in the machine type option '-M' means NVDIMM
is disabled. QEMU should refuse to plug any NVDIMM device in this case
and report the misconfiguration.
The behavior of NVDIMM on unsupported platform (HW/FW) is vendor
specific. For some vendors, it's undefined and the platform may do
anything. Thus, I think QEMU is free to choose the implementation.
Aborting QEMU (i.e. refusing to boot) is the easiest one.
Reported-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Haozhong Zhang <address@hidden>
Message-Id: address@hidden
Message-Id: address@hidden
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
Reviewed-by: Xiao Guangrong <address@hidden>
Reviewed-by: Eduardo Habkost <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
---
hw/i386/pc.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index c949cf0..47984c8 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -1708,6 +1708,11 @@ static void pc_dimm_plug(HotplugHandler *hotplug_dev,
}
if (object_dynamic_cast(OBJECT(dev), TYPE_NVDIMM)) {
+ if (!pcms->acpi_nvdimm_state.is_enabled) {
+ error_setg(&local_err,
+ "nvdimm is not enabled: missing 'nvdimm' in '-M'");
+ goto out;
+ }
nvdimm_plug(&pcms->acpi_nvdimm_state);
}
--
MST
- [Qemu-devel] [PULL 00/16] virtio, vhost, pci: fixes, features, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 01/16] compiler: drop ; after BUILD_BUG_ON, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 02/16] compiler: rework BUG_ON using a struct, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 03/16] compiler: expression version of QEMU_BUILD_BUG_ON, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 04/16] ARRAY_SIZE: check that argument is an array, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 05/16] pci: mark ROMs read-only, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 07/16] hw/pcie: Introduce a base class for PCI Express Root Ports, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 06/16] intel_iommu: fix and simplify size calculation in process_device_iotlb_desc(), Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 08/16] hw/ioh3420: derive from PCI Express Root Port base class, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 09/16] hw/pcie: Introduce Generic PCI Express Root Port, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 10/16] hw/i386: check if nvdimm is enabled before plugging,
Michael S. Tsirkin <=
- [Qemu-devel] [PULL 11/16] msix: Follow CODING_STYLE, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 12/16] hcd-xhci: check & correct param before using it, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 15/16] vhost: skip ROM sections, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 14/16] virtio: make virtio_should_notify static, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 13/16] pci: Convert msix_init() to Error and fix callers, Michael S. Tsirkin, 2017/01/24
- [Qemu-devel] [PULL 16/16] vhost-user: delete chardev on cleanup, Michael S. Tsirkin, 2017/01/24
- Re: [Qemu-devel] [PULL 00/16] virtio, vhost, pci: fixes, features, Peter Maydell, 2017/01/25
- Re: [Qemu-devel] [PULL 00/16] virtio, vhost, pci: fixes, features, Marcel Apfelbaum, 2017/01/25
- Re: [Qemu-devel] [PULL 00/16] virtio, vhost, pci: fixes, features, Peter Maydell, 2017/01/25
- Re: [Qemu-devel] [PULL 00/16] virtio, vhost, pci: fixes, features, Marcel Apfelbaum, 2017/01/25