Accepting request 570792 from home:bfrogers:branches:Virtualization
Fix machine inconsistency with -no-acpi and nvdimm (bsc#1077823) OBS-URL: https://build.opensuse.org/request/show/570792 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=388
This commit is contained in:
parent
2ad5386494
commit
c696816dcc
61
0045-pc-fail-memory-hot-plug-unplug-with.patch
Normal file
61
0045-pc-fail-memory-hot-plug-unplug-with.patch
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
From aaac044c06d93bd90ffa35eb091ec10c67f3ef7e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Haozhong Zhang <haozhong.zhang@intel.com>
|
||||||
|
Date: Fri, 22 Dec 2017 09:51:20 +0800
|
||||||
|
Subject: [PATCH] pc: fail memory hot-plug/unplug with -no-acpi and Q35 machine
|
||||||
|
type
|
||||||
|
|
||||||
|
When -no-acpi option is used with Q35 machine type, no guest ACPI is
|
||||||
|
built, but the ACPI device is still created, so only checking the
|
||||||
|
presence of ACPI device before memory plug/unplug is not enough in
|
||||||
|
such cases. Check whether ACPI is disabled globally in addition and
|
||||||
|
fail memory plug/unplug if it's disabled.
|
||||||
|
|
||||||
|
Signed-off-by: Haozhong Zhang <haozhong.zhang@intel.com>
|
||||||
|
Message-Id: <20171222015120.31730-1-haozhong.zhang@intel.com>
|
||||||
|
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
|
||||||
|
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
||||||
|
(cherry picked from commit 8cd91acec8dfea6065272ca828405333f564a612)
|
||||||
|
[BR: BSC#1077823]
|
||||||
|
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||||
|
---
|
||||||
|
hw/i386/pc.c | 18 ++++++++++++++----
|
||||||
|
1 file changed, 14 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
|
||||||
|
index 186545d2a4..e7faf92143 100644
|
||||||
|
--- a/hw/i386/pc.c
|
||||||
|
+++ b/hw/i386/pc.c
|
||||||
|
@@ -1694,9 +1694,14 @@ static void pc_dimm_plug(HotplugHandler *hotplug_dev,
|
||||||
|
align = memory_region_get_alignment(mr);
|
||||||
|
}
|
||||||
|
|
||||||
|
- if (!pcms->acpi_dev) {
|
||||||
|
+ /*
|
||||||
|
+ * When -no-acpi is used with Q35 machine type, no ACPI is built,
|
||||||
|
+ * but pcms->acpi_dev is still created. Check !acpi_enabled in
|
||||||
|
+ * addition to cover this case.
|
||||||
|
+ */
|
||||||
|
+ if (!pcms->acpi_dev || !acpi_enabled) {
|
||||||
|
error_setg(&local_err,
|
||||||
|
- "memory hotplug is not enabled: missing acpi device");
|
||||||
|
+ "memory hotplug is not enabled: missing acpi device or acpi disabled");
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -1728,9 +1733,14 @@ static void pc_dimm_unplug_request(HotplugHandler *hotplug_dev,
|
||||||
|
Error *local_err = NULL;
|
||||||
|
PCMachineState *pcms = PC_MACHINE(hotplug_dev);
|
||||||
|
|
||||||
|
- if (!pcms->acpi_dev) {
|
||||||
|
+ /*
|
||||||
|
+ * When -no-acpi is used with Q35 machine type, no ACPI is built,
|
||||||
|
+ * but pcms->acpi_dev is still created. Check !acpi_enabled in
|
||||||
|
+ * addition to cover this case.
|
||||||
|
+ */
|
||||||
|
+ if (!pcms->acpi_dev || !acpi_enabled) {
|
||||||
|
error_setg(&local_err,
|
||||||
|
- "memory hotplug is not enabled: missing acpi device");
|
||||||
|
+ "memory hotplug is not enabled: missing acpi device or acpi disabled");
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
|
|
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 29 21:51:20 UTC 2018 - brogers@suse.com
|
||||||
|
|
||||||
|
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.11
|
||||||
|
* Patches added:
|
||||||
|
0045-pc-fail-memory-hot-plug-unplug-with.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Jan 25 22:52:09 UTC 2018 - brogers@suse.com
|
Thu Jan 25 22:52:09 UTC 2018 - brogers@suse.com
|
||||||
|
|
||||||
|
@ -70,6 +70,7 @@ Patch0041: 0041-scripts-ensure-signrom-treats-data-.patch
|
|||||||
Patch0042: 0042-configure-allow-use-of-python-3.patch
|
Patch0042: 0042-configure-allow-use-of-python-3.patch
|
||||||
Patch0043: 0043-input-add-missing-JIS-keys-to-virti.patch
|
Patch0043: 0043-input-add-missing-JIS-keys-to-virti.patch
|
||||||
Patch0044: 0044-Make-installed-scripts-explicitly-p.patch
|
Patch0044: 0044-Make-installed-scripts-explicitly-p.patch
|
||||||
|
Patch0045: 0045-pc-fail-memory-hot-plug-unplug-with.patch
|
||||||
# Please do not add QEMU patches manually here.
|
# Please do not add QEMU patches manually here.
|
||||||
# Run update_git.sh to regenerate this queue.
|
# Run update_git.sh to regenerate this queue.
|
||||||
Source400: update_git.sh
|
Source400: update_git.sh
|
||||||
@ -143,6 +144,7 @@ syscall layer occurs on the native hardware and operating system.
|
|||||||
%patch0042 -p1
|
%patch0042 -p1
|
||||||
%patch0043 -p1
|
%patch0043 -p1
|
||||||
%patch0044 -p1
|
%patch0044 -p1
|
||||||
|
%patch0045 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
./configure \
|
./configure \
|
||||||
|
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 29 21:51:17 UTC 2018 - brogers@suse.com
|
||||||
|
|
||||||
|
- Fix machine inconsistency with -no-acpi and nvdimm (bsc#1077823)
|
||||||
|
0045-pc-fail-memory-hot-plug-unplug-with.patch
|
||||||
|
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.11
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Jan 26 11:49:03 UTC 2018 - brogers@suse.com
|
Fri Jan 26 11:49:03 UTC 2018 - brogers@suse.com
|
||||||
|
|
||||||
|
@ -174,6 +174,7 @@ Patch0041: 0041-scripts-ensure-signrom-treats-data-.patch
|
|||||||
Patch0042: 0042-configure-allow-use-of-python-3.patch
|
Patch0042: 0042-configure-allow-use-of-python-3.patch
|
||||||
Patch0043: 0043-input-add-missing-JIS-keys-to-virti.patch
|
Patch0043: 0043-input-add-missing-JIS-keys-to-virti.patch
|
||||||
Patch0044: 0044-Make-installed-scripts-explicitly-p.patch
|
Patch0044: 0044-Make-installed-scripts-explicitly-p.patch
|
||||||
|
Patch0045: 0045-pc-fail-memory-hot-plug-unplug-with.patch
|
||||||
# Please do not add QEMU patches manually here.
|
# Please do not add QEMU patches manually here.
|
||||||
# Run update_git.sh to regenerate this queue.
|
# Run update_git.sh to regenerate this queue.
|
||||||
|
|
||||||
@ -814,6 +815,7 @@ This package provides a service file for starting and stopping KSM.
|
|||||||
%patch0042 -p1
|
%patch0042 -p1
|
||||||
%patch0043 -p1
|
%patch0043 -p1
|
||||||
%patch0044 -p1
|
%patch0044 -p1
|
||||||
|
%patch0045 -p1
|
||||||
|
|
||||||
%if 0%{?suse_version} > 1320
|
%if 0%{?suse_version} > 1320
|
||||||
%patch1000 -p1
|
%patch1000 -p1
|
||||||
|
@ -1,3 +1,10 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jan 29 21:51:17 UTC 2018 - brogers@suse.com
|
||||||
|
|
||||||
|
- Fix machine inconsistency with -no-acpi and nvdimm (bsc#1077823)
|
||||||
|
0045-pc-fail-memory-hot-plug-unplug-with.patch
|
||||||
|
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.11
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Jan 26 11:49:03 UTC 2018 - brogers@suse.com
|
Fri Jan 26 11:49:03 UTC 2018 - brogers@suse.com
|
||||||
|
|
||||||
|
@ -174,6 +174,7 @@ Patch0041: 0041-scripts-ensure-signrom-treats-data-.patch
|
|||||||
Patch0042: 0042-configure-allow-use-of-python-3.patch
|
Patch0042: 0042-configure-allow-use-of-python-3.patch
|
||||||
Patch0043: 0043-input-add-missing-JIS-keys-to-virti.patch
|
Patch0043: 0043-input-add-missing-JIS-keys-to-virti.patch
|
||||||
Patch0044: 0044-Make-installed-scripts-explicitly-p.patch
|
Patch0044: 0044-Make-installed-scripts-explicitly-p.patch
|
||||||
|
Patch0045: 0045-pc-fail-memory-hot-plug-unplug-with.patch
|
||||||
# Please do not add QEMU patches manually here.
|
# Please do not add QEMU patches manually here.
|
||||||
# Run update_git.sh to regenerate this queue.
|
# Run update_git.sh to regenerate this queue.
|
||||||
|
|
||||||
@ -814,6 +815,7 @@ This package provides a service file for starting and stopping KSM.
|
|||||||
%patch0042 -p1
|
%patch0042 -p1
|
||||||
%patch0043 -p1
|
%patch0043 -p1
|
||||||
%patch0044 -p1
|
%patch0044 -p1
|
||||||
|
%patch0045 -p1
|
||||||
|
|
||||||
%if 0%{?suse_version} > 1320
|
%if 0%{?suse_version} > 1320
|
||||||
%patch1000 -p1
|
%patch1000 -p1
|
||||||
|
Loading…
Reference in New Issue
Block a user