Revert "Add further fix for SLIC table parsing (RHBZ#2020186)"
Fixing this properly requires backporting several other patches and a
very complicated binary patch. See details in the bug.
This reverts commit 7f59bf8f07
.
This commit is contained in:
parent
7f59bf8f07
commit
ccf23d4e53
|
@ -1,60 +0,0 @@
|
||||||
From 748c030f360a940fe0c9382c8ca1649096c3a80d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Igor Mammedov <imammedo@redhat.com>
|
|
||||||
Date: Wed, 12 Jan 2022 08:03:31 -0500
|
|
||||||
Subject: [PATCH] acpi: fix OEM ID/OEM Table ID padding
|
|
||||||
|
|
||||||
Commit [2] broke original '\0' padding of OEM ID and OEM Table ID
|
|
||||||
fields in headers of ACPI tables. While it doesn't have impact on
|
|
||||||
default values since QEMU uses 6 and 8 characters long values
|
|
||||||
respectively, it broke usecase where IDs are provided on QEMU CLI.
|
|
||||||
It shouldn't affect guest (but may cause licensing verification
|
|
||||||
issues in guest OS).
|
|
||||||
One of the broken usecases is user supplied SLIC table with IDs
|
|
||||||
shorter than max possible length, where [2] mangles IDs with extra
|
|
||||||
spaces in RSDT and FADT tables whereas guest OS expects those to
|
|
||||||
mirror the respective values of the used SLIC table.
|
|
||||||
|
|
||||||
Fix it by replacing whitespace padding with '\0' padding in
|
|
||||||
accordance with [1] and expectations of guest OS
|
|
||||||
|
|
||||||
1) ACPI spec, v2.0b
|
|
||||||
17.2 AML Grammar Definition
|
|
||||||
...
|
|
||||||
//OEM ID of up to 6 characters. If the OEM ID is
|
|
||||||
//shorter than 6 characters, it can be terminated
|
|
||||||
//with a NULL character.
|
|
||||||
|
|
||||||
2)
|
|
||||||
Fixes: 602b458201 ("acpi: Permit OEM ID and OEM table ID fields to be changed")
|
|
||||||
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/707
|
|
||||||
Reported-by: Dmitry V. Orekhov <dima.orekhov@gmail.com>
|
|
||||||
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
|
|
||||||
Cc: qemu-stable@nongnu.org
|
|
||||||
Message-Id: <20220112130332.1648664-4-imammedo@redhat.com>
|
|
||||||
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
|
|
||||||
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
|
|
||||||
Reviewed-by: Ani Sinha <ani@anisinha.ca>
|
|
||||||
Tested-by: Dmitry V. Orekhov dima.orekhov@gmail.com
|
|
||||||
---
|
|
||||||
hw/acpi/aml-build.c | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/hw/acpi/aml-build.c b/hw/acpi/aml-build.c
|
|
||||||
index bb2cad63b5..8966e16320 100644
|
|
||||||
--- a/hw/acpi/aml-build.c
|
|
||||||
+++ b/hw/acpi/aml-build.c
|
|
||||||
@@ -1724,9 +1724,9 @@ void acpi_table_begin(AcpiTable *desc, GArray *array)
|
|
||||||
build_append_int_noprefix(array, 0, 4); /* Length */
|
|
||||||
build_append_int_noprefix(array, desc->rev, 1); /* Revision */
|
|
||||||
build_append_int_noprefix(array, 0, 1); /* Checksum */
|
|
||||||
- build_append_padded_str(array, desc->oem_id, 6, ' '); /* OEMID */
|
|
||||||
+ build_append_padded_str(array, desc->oem_id, 6, '\0'); /* OEMID */
|
|
||||||
/* OEM Table ID */
|
|
||||||
- build_append_padded_str(array, desc->oem_table_id, 8, ' ');
|
|
||||||
+ build_append_padded_str(array, desc->oem_table_id, 8, '\0');
|
|
||||||
build_append_int_noprefix(array, 1, 4); /* OEM Revision */
|
|
||||||
g_array_append_vals(array, ACPI_BUILD_APPNAME8, 4); /* Creator ID */
|
|
||||||
build_append_int_noprefix(array, 1, 4); /* Creator Revision */
|
|
||||||
--
|
|
||||||
2.35.1
|
|
||||||
|
|
10
qemu.spec
10
qemu.spec
|
@ -302,7 +302,7 @@ Obsoletes: %{name}-system-unicore32-core <= %{epoch}:%{version}-%{release}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# To prevent rpmdev-bumpspec breakage
|
# To prevent rpmdev-bumpspec breakage
|
||||||
%global baserelease 10
|
%global baserelease 9
|
||||||
|
|
||||||
Summary: QEMU is a FAST! processor emulator
|
Summary: QEMU is a FAST! processor emulator
|
||||||
Name: qemu
|
Name: qemu
|
||||||
|
@ -344,11 +344,6 @@ Patch0005: 0001-acpi-fix-QEMU-crash-when-started-with-SLIC-table.patch
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2080519
|
# https://bugzilla.redhat.com/show_bug.cgi?id=2080519
|
||||||
Patch0006: 0001-accel-tcg-Fix-cpu_ldq_be_mmu-typo.patch
|
Patch0006: 0001-accel-tcg-Fix-cpu_ldq_be_mmu-typo.patch
|
||||||
|
|
||||||
# Further fix for SLIC table
|
|
||||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2020186
|
|
||||||
# https://gitlab.com/qemu-project/qemu/-/commit/748c030f360a940fe0c9382c8ca1649096c3a80d
|
|
||||||
Patch0007: 0001-acpi-fix-OEM-ID-OEM-Table-ID-padding.patch
|
|
||||||
|
|
||||||
BuildRequires: meson >= %{meson_version}
|
BuildRequires: meson >= %{meson_version}
|
||||||
BuildRequires: zlib-devel
|
BuildRequires: zlib-devel
|
||||||
BuildRequires: glib2-devel
|
BuildRequires: glib2-devel
|
||||||
|
@ -2314,9 +2309,6 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Thu May 12 2022 Richard W.M. Jones <rjones@redhat.com> - 2:6.2.0-10
|
|
||||||
- Add further fix for SLIC table parsing (RHBZ#2020186)
|
|
||||||
|
|
||||||
* Thu May 05 2022 Richard W.M. Jones <rjones@redhat.com> - 2:6.2.0-9
|
* Thu May 05 2022 Richard W.M. Jones <rjones@redhat.com> - 2:6.2.0-9
|
||||||
- Fix for s390x emulation breaking Python (RHBZ#2080519)
|
- Fix for s390x emulation breaking Python (RHBZ#2080519)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue