diff options
author | Cristian Iorga <cristian.iorga@intel.com> | 2014-08-06 10:43:25 +0300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-08-11 10:47:00 +0100 |
commit | 3ae32d0d6c7cf8294300f32d346da36748e05f3d (patch) | |
tree | 48f05e71cd47ef5bce0ff22ed2ce5ecc6c5f205f /meta/recipes-devtools/qemu/files | |
parent | 3b5e792f3245e28495d61d7d7e8df0ef30070ebc (diff) | |
download | openembedded-core-3ae32d0d6c7cf8294300f32d346da36748e05f3d.tar.gz openembedded-core-3ae32d0d6c7cf8294300f32d346da36748e05f3d.tar.bz2 openembedded-core-3ae32d0d6c7cf8294300f32d346da36748e05f3d.zip |
qemu: upgrade to 2.1
QEMU 2.1 comes with fixes and improvements.
See http://wiki.qemu.org/ChangeLog/2.1 for details.
- Added config for quorum support, depending on gnutls.
- pcie_better_hotplug_support.patch removed,
integrated upstream.
- Qemu-Arm-versatilepb-Add-memory-size-checking.patch updated
to 2.1 source code.
- no-strip.patch removed, no longer necessary due to code changes.
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/qemu/files')
-rw-r--r-- | meta/recipes-devtools/qemu/files/Qemu-Arm-versatilepb-Add-memory-size-checking.patch | 2 | ||||
-rw-r--r-- | meta/recipes-devtools/qemu/files/pcie_better_hotplug_support.patch | 74 |
2 files changed, 1 insertions, 75 deletions
diff --git a/meta/recipes-devtools/qemu/files/Qemu-Arm-versatilepb-Add-memory-size-checking.patch b/meta/recipes-devtools/qemu/files/Qemu-Arm-versatilepb-Add-memory-size-checking.patch index 3834aed6d0..7f1c5a9058 100644 --- a/meta/recipes-devtools/qemu/files/Qemu-Arm-versatilepb-Add-memory-size-checking.patch +++ b/meta/recipes-devtools/qemu/files/Qemu-Arm-versatilepb-Add-memory-size-checking.patch @@ -32,7 +32,7 @@ index b48d84c..ad2cd5a 100644 + ((unsigned int)ram_size / (1 << 20))); + exit(1); + } - memory_region_init_ram(ram, NULL, "versatile.ram", args->ram_size); + memory_region_init_ram(ram, NULL, "versatile.ram", machine->ram_size); vmstate_register_ram_global(ram); /* ??? RAM should repeat to fill physical memory space. */ -- diff --git a/meta/recipes-devtools/qemu/files/pcie_better_hotplug_support.patch b/meta/recipes-devtools/qemu/files/pcie_better_hotplug_support.patch deleted file mode 100644 index c7035b2bf7..0000000000 --- a/meta/recipes-devtools/qemu/files/pcie_better_hotplug_support.patch +++ /dev/null @@ -1,74 +0,0 @@ -The current code is broken: it does surprise removal which crashes guests. - -Reimplemented the steps: - - Hotplug triggers both 'present detect change' and - 'attention button pressed'. - - - Hotunplug starts by triggering 'attention button pressed', - then waits for the OS to power off the device and only - then detaches it. - -Fixes CVE-2014-3471. - -Originated-by: Marcel Apfelbaum <address@hidden> -Updated-by: Daniel BORNAZ <daniel.bornaz@enea.com> - ---- a/hw/pci/pcie.c 2014-04-17 15:44:44.000000000 +0200 -+++ b/hw/pci/pcie.c 2014-07-15 13:03:16.905070562 +0200 -@@ -258,7 +258,8 @@ void pcie_cap_slot_hotplug_cb(HotplugHan - - pci_word_test_and_set_mask(exp_cap + PCI_EXP_SLTSTA, - PCI_EXP_SLTSTA_PDS); -- pcie_cap_slot_event(PCI_DEVICE(hotplug_dev), PCI_EXP_HP_EV_PDC); -+ pcie_cap_slot_event(PCI_DEVICE(hotplug_dev), -+ PCI_EXP_HP_EV_PDC | PCI_EXP_HP_EV_ABP); - } - - void pcie_cap_slot_hot_unplug_cb(HotplugHandler *hotplug_dev, DeviceState *dev, -@@ -268,10 +269,7 @@ void pcie_cap_slot_hot_unplug_cb(Hotplug - - pcie_cap_slot_hotplug_common(PCI_DEVICE(hotplug_dev), dev, &exp_cap, errp); - -- object_unparent(OBJECT(dev)); -- pci_word_test_and_clear_mask(exp_cap + PCI_EXP_SLTSTA, -- PCI_EXP_SLTSTA_PDS); -- pcie_cap_slot_event(PCI_DEVICE(hotplug_dev), PCI_EXP_HP_EV_PDC); -+ pcie_cap_slot_push_attention_button(PCI_DEVICE(hotplug_dev)); - } - - /* pci express slot for pci express root/downstream port -@@ -352,6 +350,11 @@ void pcie_cap_slot_reset(PCIDevice *dev) - hotplug_event_update_event_status(dev); - } - -+static void pcie_unplug_device(PCIBus *bus, PCIDevice *dev, void *opaque) -+{ -+ object_unparent(OBJECT(dev)); -+} -+ - void pcie_cap_slot_write_config(PCIDevice *dev, - uint32_t addr, uint32_t val, int len) - { -@@ -376,6 +379,22 @@ void pcie_cap_slot_write_config(PCIDevic - sltsta); - } - -+ /* -+ * If the slot is polulated, power indicator is off and power -+ * controller is off, it is safe to detach the devices. -+ */ -+ if ((sltsta & PCI_EXP_SLTSTA_PDS) && (val & PCI_EXP_SLTCTL_PCC) && -+ ((val & PCI_EXP_SLTCTL_PIC_OFF) == PCI_EXP_SLTCTL_PIC_OFF)) { -+ PCIBus *sec_bus = pci_bridge_get_sec_bus(PCI_BRIDGE(dev)); -+ pci_for_each_device(sec_bus, pci_bus_num(sec_bus), -+ pcie_unplug_device, NULL); -+ -+ pci_word_test_and_clear_mask(exp_cap + PCI_EXP_SLTSTA, -+ PCI_EXP_SLTSTA_PDS); -+ pci_word_test_and_set_mask(exp_cap + PCI_EXP_SLTSTA, -+ PCI_EXP_SLTSTA_PDC); -+ } -+ - hotplug_event_notify(dev); - - /* |