Merge ~paelzer/ubuntu/+source/qemu:lp-1902654-broken-wily-type-HIRSUTE into ubuntu/+source/qemu:ubuntu/hirsute-devel

Proposed by Christian Ehrhardt 
Status: Merged
Approved by: Lucas Kanashiro
Approved revision: 98f56467e44fce4a5373777874a612e9162f2524
Merge reported by: Christian Ehrhardt 
Merged at revision: 98f56467e44fce4a5373777874a612e9162f2524
Proposed branch: ~paelzer/ubuntu/+source/qemu:lp-1902654-broken-wily-type-HIRSUTE
Merge into: ubuntu/+source/qemu:ubuntu/hirsute-devel
Diff against target: 108 lines (+68/-4)
2 files modified
debian/changelog (+7/-0)
debian/patches/ubuntu/define-ubuntu-machine-types.patch (+61/-4)
Reviewer Review Type Date Requested Status
Lucas Kanashiro (community) Approve
Canonical Server Pending
Canonical Server packageset reviewers Pending
Review via email: mp+393490@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Christian Ehrhardt  (paelzer) wrote :
Revision history for this message
Lucas Kanashiro (lucaskanashiro) wrote :

LGTM, +1.

I see you did not enable builds on non-amd64 in your PPA but as usual I know it should be under control. And I also believe you ran your tests on it, right?

The updated patch and changelog look good. Me being nitpick: if you want you can add a period at the end of your changelog entry. Feel free to ignore this :)

review: Approve
Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

To ssh://git.launchpad.net/~usd-import-team/ubuntu/+source/qemu
 * [new tag] upload/1%5.0-5ubuntu11 -> upload/1%5.0-5ubuntu11

Uploading to ubuntu (via ftp to upload.ubuntu.com):
  Uploading qemu_5.0-5ubuntu11.dsc: done.
  Uploading qemu_5.0-5ubuntu11.debian.tar.xz: done.
  Uploading qemu_5.0-5ubuntu11_source.buildinfo: done.
  Uploading qemu_5.0-5ubuntu11_source.changes: done.
Successfully uploaded packages.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
diff --git a/debian/changelog b/debian/changelog
index ffd7d0d..854b382 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
1qemu (1:5.0-5ubuntu11) hirsute; urgency=medium
2
3 * d/p/ubuntu/define-ubuntu-machine-types.patch: update to fix 15.04 wily
4 machine type to match how it originally was released (LP: #1902654)
5
6 -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Mon, 09 Nov 2020 08:19:07 +0100
7
1qemu (1:5.0-5ubuntu10) hirsute; urgency=medium8qemu (1:5.0-5ubuntu10) hirsute; urgency=medium
29
3 * No-change rebuild for brltty soname change.10 * No-change rebuild for brltty soname change.
diff --git a/debian/patches/ubuntu/define-ubuntu-machine-types.patch b/debian/patches/ubuntu/define-ubuntu-machine-types.patch
index d236b4f..056fd12 100644
--- a/debian/patches/ubuntu/define-ubuntu-machine-types.patch
+++ b/debian/patches/ubuntu/define-ubuntu-machine-types.patch
@@ -110,7 +110,7 @@ Forward-info: downstream decision
110 pcmc->default_cpu_version = 1;110 pcmc->default_cpu_version = 1;
111 }111 }
112 112
113@@ -975,3 +970,199 @@ static void xenfv_3_1_machine_options(Ma113@@ -975,3 +970,204 @@ static void xenfv_3_1_machine_options(Ma
114 DEFINE_PC_MACHINE(xenfv, "xenfv-3.1", pc_xen_hvm_init,114 DEFINE_PC_MACHINE(xenfv, "xenfv-3.1", pc_xen_hvm_init,
115 xenfv_3_1_machine_options);115 xenfv_3_1_machine_options);
116 #endif116 #endif
@@ -289,15 +289,20 @@ Forward-info: downstream decision
289+ * moving between those version references.289+ * moving between those version references.
290+ * This introduces pc_i440fx_wily_machine_options which encapsulates the290+ * This introduces pc_i440fx_wily_machine_options which encapsulates the
291+ * old behavior as it was (this is the purpose of machine types).291+ * old behavior as it was (this is the purpose of machine types).
292+ *
293+ * Further bug 1902654 identified issues due to the upstream rework of types
294+ * that made the wily type change some attributes in >=Eoan.
295+ * As we did in Bionic for 1829868 we need to use a 2_4/2_3 hybrid type to
296+ * match what was initially shipped.
292+ */297+ */
293+static void pc_i440fx_wily_machine_options(MachineClass *m)298+static void pc_i440fx_wily_machine_options(MachineClass *m)
294+{299+{
295+ PCMachineClass *pcmc = PC_MACHINE_CLASS(m);300+ PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
296+ pc_i440fx_2_4_machine_options(m);301+ pc_i440fx_2_5_machine_options(m);
297+ m->hw_version = "2.4.0";302+ m->hw_version = "2.4.0";
298+ pcmc->broken_reserved_end = true;303+ pcmc->broken_reserved_end = true;
299+ compat_props_add(m->compat_props, hw_compat_2_3, hw_compat_2_3_len);304+ compat_props_add(m->compat_props, hw_compat_2_4_wily, hw_compat_2_4_wily_len);
300+ compat_props_add(m->compat_props, pc_compat_2_3, pc_compat_2_3_len);305+ compat_props_add(m->compat_props, pc_compat_2_4, pc_compat_2_4_len);
301+}306+}
302+307+
303+static void pc_wily_machine_options(MachineClass *m)308+static void pc_wily_machine_options(MachineClass *m)
@@ -682,3 +687,55 @@ Forward-info: downstream decision
682 extern GlobalProperty pc_compat_3_1[];687 extern GlobalProperty pc_compat_3_1[];
683 extern const size_t pc_compat_3_1_len;688 extern const size_t pc_compat_3_1_len;
684 689
690--- a/hw/core/machine.c
691+++ b/hw/core/machine.c
692@@ -153,17 +153,29 @@ GlobalProperty hw_compat_2_5[] = {
693 };
694 const size_t hw_compat_2_5_len = G_N_ELEMENTS(hw_compat_2_5);
695
696+#define HW_COMPAT_2_4_DEFS \
697+ /* Optional because the 'scsi' property is Linux-only */ \
698+ { "virtio-blk-device", "scsi", "true", .optional = true }, \
699+ { "e1000", "extra_mac_registers", "off" }, \
700+ { "virtio-pci", "x-disable-pcie", "on" }, \
701+ { "virtio-pci", "migrate-extra", "off" }, \
702+ { "fw_cfg_mem", "dma_enabled", "off" }, \
703+ { "fw_cfg_io", "dma_enabled", "off" }, \
704+
705 GlobalProperty hw_compat_2_4[] = {
706- /* Optional because the 'scsi' property is Linux-only */
707- { "virtio-blk-device", "scsi", "true", .optional = true },
708- { "e1000", "extra_mac_registers", "off" },
709- { "virtio-pci", "x-disable-pcie", "on" },
710- { "virtio-pci", "migrate-extra", "off" },
711- { "fw_cfg_mem", "dma_enabled", "off" },
712- { "fw_cfg_io", "dma_enabled", "off" }
713+ HW_COMPAT_2_4_DEFS
714 };
715 const size_t hw_compat_2_4_len = G_N_ELEMENTS(hw_compat_2_4);
716
717+// workaround for bug 1902654 / 1829868, see pc_i440fx_wily_machine_options in hw/i386/pc_piix.c
718+GlobalProperty hw_compat_2_4_wily[] = {
719+ HW_COMPAT_2_4_DEFS
720+ { "migration", "send-configuration", "off" },
721+ { "migration", "send-section-footer", "off" },
722+ { "migration", "store-global-state", "off" },
723+};
724+const size_t hw_compat_2_4_wily_len = G_N_ELEMENTS(hw_compat_2_4_wily);
725+
726 GlobalProperty hw_compat_2_3[] = {
727 { "virtio-blk-pci", "any_layout", "off" },
728 { "virtio-balloon-pci", "any_layout", "off" },
729--- a/include/hw/boards.h
730+++ b/include/hw/boards.h
731@@ -360,6 +360,10 @@ extern const size_t hw_compat_2_5_len;
732 extern GlobalProperty hw_compat_2_4[];
733 extern const size_t hw_compat_2_4_len;
734
735+// workaround for bug 1902654 / 1829868, see pc_i440fx_wily_machine_options in hw/i386/pc_piix.c
736+extern GlobalProperty hw_compat_2_4_wily[];
737+extern const size_t hw_compat_2_4_wily_len;
738+
739 extern GlobalProperty hw_compat_2_3[];
740 extern const size_t hw_compat_2_3_len;
741

Subscribers

People subscribed via source and target branches