Hello community,
here is the log from the commit of package qemu for openSUSE:Factory checked in at 2015-12-18 21:52:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qemu (Old)
and /work/SRC/openSUSE:Factory/.qemu.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qemu"
Changes:
--------
--- /work/SRC/openSUSE:Factory/qemu/libcacard.changes 2015-06-12 20:26:16.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.qemu.new/libcacard.changes 2015-12-18 21:52:02.000000000 +0100
@@ -1,0 +2,47 @@
+Thu Oct 8 16:29:36 UTC 2015 - afaerber@suse.de
+
+- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Patches added:
+ 0040-dictzip-Fix-on-big-endian-systems.patch
+
+-------------------------------------------------------------------
+Thu Oct 8 14:35:11 UTC 2015 - afaerber@suse.de
+
+- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Patches added:
+ 0039-tests-Unique-test-path-for-string-v.patch
+
+-------------------------------------------------------------------
+Thu Sep 3 16:57:33 UTC 2015 - afaerber@suse.de
+
+- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Patches added:
+ 0038-tcg-aarch64-Fix-tcg_out_qemu_-ld-st.patch
+
+-------------------------------------------------------------------
+Wed Aug 12 16:41:25 UTC 2015 - afaerber@suse.de
+
+- Update to v2.4.0: See http://wiki.qemu-project.org/ChangeLog/2.4
+
+-------------------------------------------------------------------
+Fri Jul 24 15:19:06 UTC 2015 - afaerber@suse.de
+
+- Update to v2.4.0-rc2: See http://wiki.qemu-project.org/ChangeLog/2.4
+
+-------------------------------------------------------------------
+Fri Jul 17 13:36:52 UTC 2015 - afaerber@suse.de
+
+- Update to v2.4.0-rc1: See http://wiki.qemu-project.org/ChangeLog/2.4
+* Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Patches dropped:
+ 0037-linux-user-Allocate-thunk-size-dyna.patch
+ 0039-s390x-Fix-stoc-direction.patch
+ 0040-s390x-Add-interlocked-access-facili.patch
+ 0041-fdc-force-the-fifo-access-to-be-in-.patch
+ 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
+ 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
+ 0044-hw-arm-boot-Increase-fdt-alignment.patch
+* Patches renamed:
+ 0038-Revert-Revert-seccomp-tests-that-al.patch -> 0037-Revert-Revert-seccomp-tests-that-al.patch
+
+-------------------------------------------------------------------
--- /work/SRC/openSUSE:Factory/qemu/qemu-linux-user.changes 2015-06-12 20:26:16.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.qemu.new/qemu-linux-user.changes 2015-12-18 21:52:03.000000000 +0100
@@ -1,0 +2,47 @@
+Thu Oct 8 16:29:32 UTC 2015 - afaerber@suse.de
+
+- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Patches added:
+ 0040-dictzip-Fix-on-big-endian-systems.patch
+
+-------------------------------------------------------------------
+Thu Oct 8 14:35:07 UTC 2015 - afaerber@suse.de
+
+- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Patches added:
+ 0039-tests-Unique-test-path-for-string-v.patch
+
+-------------------------------------------------------------------
+Thu Sep 3 16:57:29 UTC 2015 - afaerber@suse.de
+
+- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Fix aarch64 TCG:
+ 0038-tcg-aarch64-Fix-tcg_out_qemu_-ld-st.patch
+
+-------------------------------------------------------------------
+Wed Aug 12 16:41:25 UTC 2015 - afaerber@suse.de
+
+- Update to v2.4.0: See http://wiki.qemu-project.org/ChangeLog/2.4
+
+-------------------------------------------------------------------
+Fri Jul 24 15:19:06 UTC 2015 - afaerber@suse.de
+
+- Update to v2.4.0-rc2: See http://wiki.qemu-project.org/ChangeLog/2.4
+
+-------------------------------------------------------------------
+Fri Jul 17 13:36:49 UTC 2015 - afaerber@suse.de
+
+- Update to v2.4.0-rc1: See http://wiki.qemu-project.org/ChangeLog/2.4
+* Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Patches dropped:
+ 0037-linux-user-Allocate-thunk-size-dyna.patch
+ 0039-s390x-Fix-stoc-direction.patch
+ 0040-s390x-Add-interlocked-access-facili.patch
+ 0041-fdc-force-the-fifo-access-to-be-in-.patch
+ 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
+ 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
+ 0044-hw-arm-boot-Increase-fdt-alignment.patch
+* Patches renamed:
+ 0038-Revert-Revert-seccomp-tests-that-al.patch -> 0037-Revert-Revert-seccomp-tests-that-al.patch
+
+-------------------------------------------------------------------
--- /work/SRC/openSUSE:Factory/qemu/qemu-testsuite.changes 2015-07-25 07:43:54.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.qemu.new/qemu-testsuite.changes 2015-12-18 21:52:03.000000000 +0100
@@ -1,0 +2,97 @@
+Tue Dec 1 17:17:23 UTC 2015 - agraf@suse.com
+
+- Fix testsuite on 32bit systems (bsc#957379)
+
+-------------------------------------------------------------------
+Sun Nov 22 20:36:53 UTC 2015 - afaerber@suse.de
+
+- Fix SLE11 build by fixing systemd conditionalization (from olh)
+
+-------------------------------------------------------------------
+Thu Nov 19 11:23:26 UTC 2015 - tampakrap@opensuse.org
+
+- Add systemd unit file and udev rules for qemu guest agent
+ - taken from the SLE12 / Leap package, see boo#955707
+
+-------------------------------------------------------------------
+Wed Oct 28 18:53:37 UTC 2015 - afaerber@suse.de
+
+- Add _constraints file (based on work by kenljohnson)
+
+-------------------------------------------------------------------
+Tue Oct 20 15:57:05 UTC 2015 - afaerber@suse.de
+
+- Enable SLOF build for ppc64le, too, now (bsc#949000, bsc#949016)
+
+-------------------------------------------------------------------
+Mon Oct 12 16:05:28 UTC 2015 - afaerber@suse.de
+
+- Allow building SLOF on ppc64le (bsc#949016)
+ SLOF_ppc64le.patch
+- Add two checks for DictZip and tar qemu-img behavior (bsc#945778)
+* Clean up qemu-testsuite build/installation
+
+-------------------------------------------------------------------
+Thu Oct 8 16:29:28 UTC 2015 - afaerber@suse.de
+
+- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Fix endianness issues in DictZip block driver (bsc#937572, bsc#945778)
+ 0027-block-Add-support-for-DictZip-enabl.patch
+ 0028-block-Add-tar-container-format.patch
+ 0040-dictzip-Fix-on-big-endian-systems.patch
+
+-------------------------------------------------------------------
+Thu Oct 8 14:35:03 UTC 2015 - afaerber@suse.de
+
+- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Fix qemu-testsuite for glib2-2.46.0 by assuring uniqueness of paths
+ 0039-tests-Unique-test-path-for-string-v.patch
+
+-------------------------------------------------------------------
+Thu Oct 8 13:11:07 UTC 2015 - afaerber@suse.de
+
+- Build SLOF on ppc64 (bsc#949016, thanks to k0da)
+* Simplify x86 fw logic while at it
+- No need to enable KVM for armv6hl
+- Add notice about pre_checkin.sh to update_git.sh
+
+-------------------------------------------------------------------
+Thu Sep 3 16:57:25 UTC 2015 - afaerber@suse.de
+
+- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Fix aarch64 TCG:
+ 0038-tcg-aarch64-Fix-tcg_out_qemu_-ld-st.patch
+
+-------------------------------------------------------------------
+Wed Aug 12 16:41:25 UTC 2015 - afaerber@suse.de
+
+- Update to v2.4.0: See http://wiki.qemu-project.org/ChangeLog/2.4
+
+-------------------------------------------------------------------
+Fri Jul 24 15:19:06 UTC 2015 - afaerber@suse.de
+
+- Update to v2.4.0-rc2: See http://wiki.qemu-project.org/ChangeLog/2.4
+* Provide qemu-img symlink instead of passing QTEST_QEMU_IMG
+
+-------------------------------------------------------------------
+Fri Jul 17 13:36:45 UTC 2015 - afaerber@suse.de
+
+- Update to v2.4.0-rc1: See http://wiki.qemu-project.org/ChangeLog/2.4
+* Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
+* Patches dropped:
+ 0037-linux-user-Allocate-thunk-size-dyna.patch
+ 0039-s390x-Fix-stoc-direction.patch
+ 0040-s390x-Add-interlocked-access-facili.patch
+ 0041-fdc-force-the-fifo-access-to-be-in-.patch
+ 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
+ 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
+ 0044-hw-arm-boot-Increase-fdt-alignment.patch
+* Patches renamed:
+ 0038-Revert-Revert-seccomp-tests-that-al.patch -> 0037-Revert-Revert-seccomp-tests-that-al.patch
+* Package new vgabios-virtio.bin
+* target-x86_64.conf was dropped
+* Add qemu-block-dmg module sub-package
+* Set QTEST_QEMU_IMG variable for ahci-test
+* --enable-quorum and --enable-vnc-ws are no longer available
+
+-------------------------------------------------------------------
qemu.changes: same change
Old:
----
0037-linux-user-Allocate-thunk-size-dyna.patch
0038-Revert-Revert-seccomp-tests-that-al.patch
0039-s390x-Fix-stoc-direction.patch
0040-s390x-Add-interlocked-access-facili.patch
0041-fdc-force-the-fifo-access-to-be-in-.patch
0042-rules.mak-Force-CFLAGS-for-all-obje.patch
0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
0044-hw-arm-boot-Increase-fdt-alignment.patch
qemu-2.3.0.tar.bz2
qemu-2.3.0.tar.bz2.sig
New:
----
0037-Revert-Revert-seccomp-tests-that-al.patch
0038-tcg-aarch64-Fix-tcg_out_qemu_-ld-st.patch
0039-tests-Unique-test-path-for-string-v.patch
0040-dictzip-Fix-on-big-endian-systems.patch
80-qemu-ga.rules
SLOF_ppc64le.patch
_constraints
qemu-2.4.0.tar.bz2
qemu-2.4.0.tar.bz2.sig
qemu-ga.service
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libcacard.spec ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -21,9 +21,9 @@
Summary: Universal CPU emulator
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
-Version: 2.3.0
+Version: 2.4.0
Release: 0
-Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
+Source: http://wiki.qemu.org/download/qemu-2.4.0.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
@@ -61,14 +61,10 @@
Patch0034: 0034-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0035: 0035-qtest-Increase-socket-timeout.patch
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
-Patch0037: 0037-linux-user-Allocate-thunk-size-dyna.patch
-Patch0038: 0038-Revert-Revert-seccomp-tests-that-al.patch
-Patch0039: 0039-s390x-Fix-stoc-direction.patch
-Patch0040: 0040-s390x-Add-interlocked-access-facili.patch
-Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch
-Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
-Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
-Patch0044: 0044-hw-arm-boot-Increase-fdt-alignment.patch
+Patch0037: 0037-Revert-Revert-seccomp-tests-that-al.patch
+Patch0038: 0038-tcg-aarch64-Fix-tcg_out_qemu_-ld-st.patch
+Patch0039: 0039-tests-Unique-test-path-for-string-v.patch
+Patch0040: 0040-dictzip-Fix-on-big-endian-systems.patch
# Please do not add patches manually here, run update_git.sh.
# this is to make lint happy
Source300: qemu-rpmlintrc
@@ -127,7 +123,7 @@
This sub-package contains development files for the Smartcard library.
%prep
-%setup -q -n qemu-2.3.0
+%setup -q -n qemu-2.4.0
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@@ -168,10 +164,6 @@
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
-%patch0041 -p1
-%patch0042 -p1
-%patch0043 -p1
-%patch0044 -p1
%build
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
++++++ qemu-linux-user.spec ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -21,9 +21,9 @@
Summary: Universal CPU emulator
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
-Version: 2.3.0
+Version: 2.4.0
Release: 0
-Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
+Source: http://wiki.qemu.org/download/qemu-2.4.0.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
@@ -61,14 +61,10 @@
Patch0034: 0034-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0035: 0035-qtest-Increase-socket-timeout.patch
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
-Patch0037: 0037-linux-user-Allocate-thunk-size-dyna.patch
-Patch0038: 0038-Revert-Revert-seccomp-tests-that-al.patch
-Patch0039: 0039-s390x-Fix-stoc-direction.patch
-Patch0040: 0040-s390x-Add-interlocked-access-facili.patch
-Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch
-Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
-Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
-Patch0044: 0044-hw-arm-boot-Increase-fdt-alignment.patch
+Patch0037: 0037-Revert-Revert-seccomp-tests-that-al.patch
+Patch0038: 0038-tcg-aarch64-Fix-tcg_out_qemu_-ld-st.patch
+Patch0039: 0039-tests-Unique-test-path-for-string-v.patch
+Patch0040: 0040-dictzip-Fix-on-big-endian-systems.patch
# Please do not add patches manually here, run update_git.sh.
# this is to make lint happy
Source300: qemu-rpmlintrc
@@ -121,7 +117,7 @@
run cross-architecture builds.
%prep
-%setup -q -n qemu-2.3.0
+%setup -q -n qemu-2.4.0
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@@ -162,10 +158,6 @@
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
-%patch0041 -p1
-%patch0042 -p1
-%patch0043 -p1
-%patch0044 -p1
%build
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
++++++ qemu-testsuite.spec ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -16,17 +16,25 @@
#
+%define build_x86_fw_from_source 0
+%define build_slof_from_source 0
%ifarch %ix86 x86_64
# choice of building all from source or using provided binary x86 blobs
%if 0%{?suse_version} >= 1310
%define build_x86_fw_from_source 1
-%else
-%define build_x86_fw_from_source 0
%endif
-%else
-%define build_x86_fw_from_source 0
%endif
-%ifarch %ix86 x86_64 ppc ppc64 ppc64le s390x %arm aarch64
+%ifarch ppc64
+%define build_slof_from_source 1
+%endif
+%ifarch ppc64le
+# Needs a compatible gcc (bsc#949000)
+# TODO: include 1315 for SLE12 once possible
+%if 0%{?suse_version} > 1320
+%define build_slof_from_source 1
+%endif
+%endif
+%ifarch %ix86 x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64
%define kvm_available 1
%else
%define kvm_available 0
@@ -43,10 +51,10 @@
Summary: Universal CPU emulator
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
-Version: 2.3.0
+Version: 2.4.0
Release: 0
-Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
-Source99: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2.sig
+Source: http://wiki.qemu.org/download/qemu-2.4.0.tar.bz2
+Source99: http://wiki.qemu.org/download/qemu-2.4.0.tar.bz2.sig
Source1: 80-kvm.rules
Source2: qemu-ifup
Source3: kvm_stat
@@ -54,6 +62,8 @@
Source5: 60-kvm.rules
Source6: ksm.service
Source7: 60-kvm.x86.rules
+Source8: 80-qemu-ga.rules
+Source9: qemu-ga.service
# Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
@@ -92,14 +102,10 @@
Patch0034: 0034-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0035: 0035-qtest-Increase-socket-timeout.patch
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
-Patch0037: 0037-linux-user-Allocate-thunk-size-dyna.patch
-Patch0038: 0038-Revert-Revert-seccomp-tests-that-al.patch
-Patch0039: 0039-s390x-Fix-stoc-direction.patch
-Patch0040: 0040-s390x-Add-interlocked-access-facili.patch
-Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch
-Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
-Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
-Patch0044: 0044-hw-arm-boot-Increase-fdt-alignment.patch
+Patch0037: 0037-Revert-Revert-seccomp-tests-that-al.patch
+Patch0038: 0038-tcg-aarch64-Fix-tcg_out_qemu_-ld-st.patch
+Patch0039: 0039-tests-Unique-test-path-for-string-v.patch
+Patch0040: 0040-dictzip-Fix-on-big-endian-systems.patch
# Please do not add QEMU patches manually here.
# Run update_git.sh to regenerate this queue.
@@ -113,6 +119,7 @@
%endif
Patch1100: gcc5-ipxe-add-missing-const-qualifiers.patch
Patch1101: gcc5-ipxe-ath9k-Remove-confusing-logic-inversion-in-an-ANI-var.patch
+Patch2000: SLOF_ppc64le.patch
# this is to make lint happy
Source300: qemu-rpmlintrc
@@ -261,6 +268,7 @@
%else
Suggests: qemu-arm
%endif
+Suggests: qemu-block-dmg
Suggests: qemu-extra
Suggests: qemu-lang
%if 0%{?suse_version} >= 1210
@@ -269,9 +277,9 @@
%define built_firmware_files {acpi-dsdt.aml bios.bin bios-256k.bin \
q35-acpi-dsdt.aml sgabios.bin vgabios.bin vgabios-cirrus.bin \
-vgabios-stdvga.bin vgabios-vmware.bin vgabios-qxl.bin optionrom/linuxboot.bin \
-optionrom/multiboot.bin optionrom/kvmvapic.bin pxe-e1000.rom pxe-pcnet.rom \
-pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
+vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
+optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
+pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
%description
QEMU is an extremely well-performing CPU emulator that allows you to
@@ -420,6 +428,21 @@
This sub-package contains a module for accessing network-based image files
over a network connection from qemu-img tool and QEMU system emulation.
+%package block-dmg
+Summary: Universal CPU emulator -- DMG block support
+Group: System/Emulators/PC
+%{qemu_module_conflicts}
+
+%description block-dmg
+QEMU is an extremely well-performing CPU emulator that allows you to
+choose between simulating an entire system and running userspace
+binaries for different architectures under your native operating
+system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well
+as PC and PowerMac systems.
+
+This sub-package contains a module for accessing Mac OS X image files
+from qemu-img tool and QEMU system emulation.
+
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%package block-gluster
Summary: Universal CPU emulator -- GlusterFS block support
@@ -476,6 +499,9 @@
Summary: Universal CPU emulator -- Guest agent
Group: System/Emulators/PC
Provides: qemu:%_bindir/qemu-ga
+%if 0%{?with_systemd}
+%{?systemd_requires}
+%endif
%description guest-agent
QEMU is an extremely well-performing CPU emulator that allows you to
@@ -490,7 +516,7 @@
%package seabios
Summary: X86 BIOS for QEMU
Group: System/Emulators/PC
-Version: 1.8.1
+Version: 1.8.2
Release: 0
%if 0%{?suse_version} > %{noarch_supported}
BuildArch: noarch
@@ -504,7 +530,7 @@
%package vgabios
Summary: VGA BIOSes for QEMU
Group: System/Emulators/PC
-Version: 1.8.1
+Version: 1.8.2
Release: 0
%if 0%{?suse_version} > %{noarch_supported}
BuildArch: noarch
@@ -561,7 +587,7 @@
%endif # !qemu-testsuite
%prep
-%setup -q -n qemu-2.3.0
+%setup -q -n qemu-2.4.0
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@@ -602,10 +628,6 @@
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
-%patch0041 -p1
-%patch0042 -p1
-%patch0043 -p1
-%patch0044 -p1
%if %{build_x86_fw_from_source}
pushd roms/seabios
@@ -626,6 +648,13 @@
%patch1101 -p1
popd
+%if %{build_slof_from_source}
+pushd roms/SLOF
+%patch2000 -p1
+popd
+rm -f pc-bios/slof.bin
+%endif
+
%build
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
--libdir=%_libdir \
@@ -696,11 +725,6 @@
--enable-numa \
%endif
%endif
-%if 0%{?suse_version} >= 1310
- --enable-quorum \
-%else
- --disable-quorum \
-%endif
--disable-rbd \
%if 0%{?suse_version} >= 1315
--enable-rdma \
@@ -750,7 +774,6 @@
--enable-vnc-png \
--enable-vnc-sasl \
--enable-vnc-tls \
- --enable-vnc-ws \
%ifarch x86_64
--enable-xen \
--enable-xen-pci-passthrough \
@@ -769,26 +792,37 @@
make -C roms pxerom
make -C roms sgabios
%endif
+%if %{build_slof_from_source}
+make -C roms slof
+%endif
%ifarch s390x
cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img
%endif
%else # qemu-testsuite
+
+ln -s %{_bindir}/qemu-img qemu-img
+
for conf in default-configs/*-softmmu.mak; do
arch=`echo "$conf" | sed -e 's|default-configs/\(.*\)-softmmu.mak|\1|g'`
ln -s %{_bindir}/qemu-system-$arch $arch-softmmu/qemu-system-$arch
done
-%endif
-%check
-%if "%{name}" == "qemu-testsuite"
+# Compile the QOM test binary first, so that ...
+make tests/qom-test %{?_smp_mflags} V=1
+# ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379)
%if 0%{?suse_version} >= 1310
make check-report.html V=1
install -D -m 644 check-report.html %{buildroot}%{_datadir}/qemu/check-report.html
%else
make check-report.xml V=1
%endif
-install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml
+
+%endif
+
+%check
+%if "%{name}" == "qemu-testsuite"
+
%ifnarch %ix86 x64_64
export QEMU_PROG=%{_bindir}/qemu-system-x86_64
%endif
@@ -804,10 +838,25 @@
# ./check -v -T $fmt -file -g quick || true
#done
popd
-%endif
+
+# Create minimal gzip format file
+echo "Test" > test.txt
+cat test.txt | gzip - > test.gz
+# Check qemu-img info output (bsc#945778)
+format=`qemu-img info test.gz | grep "file format:" | cut -d ':' -f 2 | tr -d '[:space:]'`
+[ "$format" == "raw" ] || false
+
+# Create minimal tar format file
+tar cf test.tar test.txt
+# Check qemu-img info output (bsc#945778)
+format=`qemu-img info test.tar | grep "file format:" | cut -d ':' -f 2 | tr -d '[:space:]'`
+[ "$format" == "raw" ] || false
+
+%endif # qemu-testsuite
%install
%if "%{name}" != "qemu-testsuite"
+
make install DESTDIR=$RPM_BUILD_ROOT
rm -fr $RPM_BUILD_ROOT/%_datadir/doc
rm $RPM_BUILD_ROOT/%_libdir/libcacard*
@@ -815,7 +864,8 @@
rm -fr $RPM_BUILD_ROOT/%_prefix/include/cacard
%if ! %{build_x86_fw_from_source}
for f in acpi-dsdt.aml q35-acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
- vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-vmware.bin vgabios.bin; do
+ vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
+ vgabios.bin; do
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
done
%endif
@@ -847,8 +897,20 @@
%endif
%endif
%endif
+install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules
+%if 0%{?with_systemd}
install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/ksm.service
+install -D -p -m 0644 %{SOURCE9} %{buildroot}%{_unitdir}/qemu-ga.service
+%endif
%fdupes -s $RPM_BUILD_ROOT
+
+%else # qemu-testsuite
+
+%if 0%{?suse_version} >= 1310
+install -D -m 644 check-report.html %{buildroot}%{_datadir}/qemu/check-report.html
+%endif
+install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml
+
%endif
%if "%{name}" != "qemu-testsuite"
@@ -860,9 +922,6 @@
%{_sbindir}/useradd -r -g qemu -G kvm -d / -s /sbin/nologin \
-c "qemu user" qemu
-%pre guest-agent
-%{_bindir}/getent group kvm >/dev/null || %{_sbindir}/groupadd -r kvm 2>/dev/null
-
%if %{kvm_available}
%post
%if 0%{?with_systemd}
@@ -883,7 +942,24 @@
%verify_permissions %_libexecdir/qemu-bridge-helper
%endif
+%pre guest-agent
+%{_bindir}/getent group kvm >/dev/null || %{_sbindir}/groupadd -r kvm 2>/dev/null
%if 0%{?with_systemd}
+%service_add_pre qemu-ga.service
+
+%preun guest-agent
+%service_del_preun qemu-ga.service
+
+%post guest-agent
+if [ "$(readlink -f /proc/1/root)" = "/" ]; then
+ /sbin/udevadm control --reload-rules || :
+ /sbin/udevadm trigger || :
+fi
+%service_add_post qemu-ga.service
+
+%postun guest-agent
+%service_del_postun qemu-ga.service
+
%pre ksm
%service_add_pre ksm.service
@@ -926,7 +1002,6 @@
%_datadir/%name/kvmvapic.bin
%_datadir/%name/linuxboot.bin
%_datadir/%name/multiboot.bin
-%config %_sysconfdir/%name/target-x86_64.conf
%files ppc
%defattr(-, root, root)
@@ -994,6 +1069,10 @@
%defattr(-, root, root)
%_libdir/%name/block-curl.so
+%files block-dmg
+%defattr(-, root, root)
+%_libdir/%name/block-dmg.so
+
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%files block-gluster
%defattr(-, root, root)
@@ -1023,6 +1102,7 @@
%_datadir/%name/vgabios-cirrus.bin
%_datadir/%name/vgabios-qxl.bin
%_datadir/%name/vgabios-stdvga.bin
+%_datadir/%name/vgabios-virtio.bin
%_datadir/%name/vgabios-vmware.bin
%files sgabios
@@ -1063,6 +1143,10 @@
%files guest-agent
%defattr(-, root, root)
%attr(755,root,kvm) %_bindir/qemu-ga
+%if 0%{?with_systemd}
+%{_unitdir}/qemu-ga.service
+%endif
+%{_udevrulesdir}/80-qemu-ga.rules
%if 0%{?with_systemd}
%files ksm
++++++ qemu.spec ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -16,17 +16,25 @@
#
+%define build_x86_fw_from_source 0
+%define build_slof_from_source 0
%ifarch %ix86 x86_64
# choice of building all from source or using provided binary x86 blobs
%if 0%{?suse_version} >= 1310
%define build_x86_fw_from_source 1
-%else
-%define build_x86_fw_from_source 0
%endif
-%else
-%define build_x86_fw_from_source 0
%endif
-%ifarch %ix86 x86_64 ppc ppc64 ppc64le s390x %arm aarch64
+%ifarch ppc64
+%define build_slof_from_source 1
+%endif
+%ifarch ppc64le
+# Needs a compatible gcc (bsc#949000)
+# TODO: include 1315 for SLE12 once possible
+%if 0%{?suse_version} > 1320
+%define build_slof_from_source 1
+%endif
+%endif
+%ifarch %ix86 x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64
%define kvm_available 1
%else
%define kvm_available 0
@@ -43,10 +51,10 @@
Summary: Universal CPU emulator
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
-Version: 2.3.0
+Version: 2.4.0
Release: 0
-Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
-Source99: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2.sig
+Source: http://wiki.qemu.org/download/qemu-2.4.0.tar.bz2
+Source99: http://wiki.qemu.org/download/qemu-2.4.0.tar.bz2.sig
Source1: 80-kvm.rules
Source2: qemu-ifup
Source3: kvm_stat
@@ -54,6 +62,8 @@
Source5: 60-kvm.rules
Source6: ksm.service
Source7: 60-kvm.x86.rules
+Source8: 80-qemu-ga.rules
+Source9: qemu-ga.service
# Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
@@ -92,14 +102,10 @@
Patch0034: 0034-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0035: 0035-qtest-Increase-socket-timeout.patch
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
-Patch0037: 0037-linux-user-Allocate-thunk-size-dyna.patch
-Patch0038: 0038-Revert-Revert-seccomp-tests-that-al.patch
-Patch0039: 0039-s390x-Fix-stoc-direction.patch
-Patch0040: 0040-s390x-Add-interlocked-access-facili.patch
-Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch
-Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
-Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
-Patch0044: 0044-hw-arm-boot-Increase-fdt-alignment.patch
+Patch0037: 0037-Revert-Revert-seccomp-tests-that-al.patch
+Patch0038: 0038-tcg-aarch64-Fix-tcg_out_qemu_-ld-st.patch
+Patch0039: 0039-tests-Unique-test-path-for-string-v.patch
+Patch0040: 0040-dictzip-Fix-on-big-endian-systems.patch
# Please do not add QEMU patches manually here.
# Run update_git.sh to regenerate this queue.
@@ -113,6 +119,7 @@
%endif
Patch1100: gcc5-ipxe-add-missing-const-qualifiers.patch
Patch1101: gcc5-ipxe-ath9k-Remove-confusing-logic-inversion-in-an-ANI-var.patch
+Patch2000: SLOF_ppc64le.patch
# this is to make lint happy
Source300: qemu-rpmlintrc
@@ -261,6 +268,7 @@
%else
Suggests: qemu-arm
%endif
+Suggests: qemu-block-dmg
Suggests: qemu-extra
Suggests: qemu-lang
%if 0%{?suse_version} >= 1210
@@ -269,9 +277,9 @@
%define built_firmware_files {acpi-dsdt.aml bios.bin bios-256k.bin \
q35-acpi-dsdt.aml sgabios.bin vgabios.bin vgabios-cirrus.bin \
-vgabios-stdvga.bin vgabios-vmware.bin vgabios-qxl.bin optionrom/linuxboot.bin \
-optionrom/multiboot.bin optionrom/kvmvapic.bin pxe-e1000.rom pxe-pcnet.rom \
-pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
+vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
+optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
+pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
%description
QEMU is an extremely well-performing CPU emulator that allows you to
@@ -420,6 +428,21 @@
This sub-package contains a module for accessing network-based image files
over a network connection from qemu-img tool and QEMU system emulation.
+%package block-dmg
+Summary: Universal CPU emulator -- DMG block support
+Group: System/Emulators/PC
+%{qemu_module_conflicts}
+
+%description block-dmg
+QEMU is an extremely well-performing CPU emulator that allows you to
+choose between simulating an entire system and running userspace
+binaries for different architectures under your native operating
+system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well
+as PC and PowerMac systems.
+
+This sub-package contains a module for accessing Mac OS X image files
+from qemu-img tool and QEMU system emulation.
+
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%package block-gluster
Summary: Universal CPU emulator -- GlusterFS block support
@@ -476,6 +499,9 @@
Summary: Universal CPU emulator -- Guest agent
Group: System/Emulators/PC
Provides: qemu:%_bindir/qemu-ga
+%if 0%{?with_systemd}
+%{?systemd_requires}
+%endif
%description guest-agent
QEMU is an extremely well-performing CPU emulator that allows you to
@@ -490,7 +516,7 @@
%package seabios
Summary: X86 BIOS for QEMU
Group: System/Emulators/PC
-Version: 1.8.1
+Version: 1.8.2
Release: 0
%if 0%{?suse_version} > %{noarch_supported}
BuildArch: noarch
@@ -504,7 +530,7 @@
%package vgabios
Summary: VGA BIOSes for QEMU
Group: System/Emulators/PC
-Version: 1.8.1
+Version: 1.8.2
Release: 0
%if 0%{?suse_version} > %{noarch_supported}
BuildArch: noarch
@@ -561,7 +587,7 @@
%endif # !qemu-testsuite
%prep
-%setup -q -n qemu-2.3.0
+%setup -q -n qemu-2.4.0
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@@ -602,10 +628,6 @@
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
-%patch0041 -p1
-%patch0042 -p1
-%patch0043 -p1
-%patch0044 -p1
%if %{build_x86_fw_from_source}
pushd roms/seabios
@@ -626,6 +648,13 @@
%patch1101 -p1
popd
+%if %{build_slof_from_source}
+pushd roms/SLOF
+%patch2000 -p1
+popd
+rm -f pc-bios/slof.bin
+%endif
+
%build
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
--libdir=%_libdir \
@@ -696,11 +725,6 @@
--enable-numa \
%endif
%endif
-%if 0%{?suse_version} >= 1310
- --enable-quorum \
-%else
- --disable-quorum \
-%endif
--disable-rbd \
%if 0%{?suse_version} >= 1315
--enable-rdma \
@@ -750,7 +774,6 @@
--enable-vnc-png \
--enable-vnc-sasl \
--enable-vnc-tls \
- --enable-vnc-ws \
%ifarch x86_64
--enable-xen \
--enable-xen-pci-passthrough \
@@ -769,26 +792,37 @@
make -C roms pxerom
make -C roms sgabios
%endif
+%if %{build_slof_from_source}
+make -C roms slof
+%endif
%ifarch s390x
cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img
%endif
%else # qemu-testsuite
+
+ln -s %{_bindir}/qemu-img qemu-img
+
for conf in default-configs/*-softmmu.mak; do
arch=`echo "$conf" | sed -e 's|default-configs/\(.*\)-softmmu.mak|\1|g'`
ln -s %{_bindir}/qemu-system-$arch $arch-softmmu/qemu-system-$arch
done
-%endif
-%check
-%if "%{name}" == "qemu-testsuite"
+# Compile the QOM test binary first, so that ...
+make tests/qom-test %{?_smp_mflags} V=1
+# ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379)
%if 0%{?suse_version} >= 1310
make check-report.html V=1
install -D -m 644 check-report.html %{buildroot}%{_datadir}/qemu/check-report.html
%else
make check-report.xml V=1
%endif
-install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml
+
+%endif
+
+%check
+%if "%{name}" == "qemu-testsuite"
+
%ifnarch %ix86 x64_64
export QEMU_PROG=%{_bindir}/qemu-system-x86_64
%endif
@@ -804,10 +838,25 @@
# ./check -v -T $fmt -file -g quick || true
#done
popd
-%endif
+
+# Create minimal gzip format file
+echo "Test" > test.txt
+cat test.txt | gzip - > test.gz
+# Check qemu-img info output (bsc#945778)
+format=`qemu-img info test.gz | grep "file format:" | cut -d ':' -f 2 | tr -d '[:space:]'`
+[ "$format" == "raw" ] || false
+
+# Create minimal tar format file
+tar cf test.tar test.txt
+# Check qemu-img info output (bsc#945778)
+format=`qemu-img info test.tar | grep "file format:" | cut -d ':' -f 2 | tr -d '[:space:]'`
+[ "$format" == "raw" ] || false
+
+%endif # qemu-testsuite
%install
%if "%{name}" != "qemu-testsuite"
+
make install DESTDIR=$RPM_BUILD_ROOT
rm -fr $RPM_BUILD_ROOT/%_datadir/doc
rm $RPM_BUILD_ROOT/%_libdir/libcacard*
@@ -815,7 +864,8 @@
rm -fr $RPM_BUILD_ROOT/%_prefix/include/cacard
%if ! %{build_x86_fw_from_source}
for f in acpi-dsdt.aml q35-acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
- vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-vmware.bin vgabios.bin; do
+ vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
+ vgabios.bin; do
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
done
%endif
@@ -847,8 +897,20 @@
%endif
%endif
%endif
+install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules
+%if 0%{?with_systemd}
install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/ksm.service
+install -D -p -m 0644 %{SOURCE9} %{buildroot}%{_unitdir}/qemu-ga.service
+%endif
%fdupes -s $RPM_BUILD_ROOT
+
+%else # qemu-testsuite
+
+%if 0%{?suse_version} >= 1310
+install -D -m 644 check-report.html %{buildroot}%{_datadir}/qemu/check-report.html
+%endif
+install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml
+
%endif
%if "%{name}" != "qemu-testsuite"
@@ -860,9 +922,6 @@
%{_sbindir}/useradd -r -g qemu -G kvm -d / -s /sbin/nologin \
-c "qemu user" qemu
-%pre guest-agent
-%{_bindir}/getent group kvm >/dev/null || %{_sbindir}/groupadd -r kvm 2>/dev/null
-
%if %{kvm_available}
%post
%if 0%{?with_systemd}
@@ -883,7 +942,24 @@
%verify_permissions %_libexecdir/qemu-bridge-helper
%endif
+%pre guest-agent
+%{_bindir}/getent group kvm >/dev/null || %{_sbindir}/groupadd -r kvm 2>/dev/null
%if 0%{?with_systemd}
+%service_add_pre qemu-ga.service
+
+%preun guest-agent
+%service_del_preun qemu-ga.service
+
+%post guest-agent
+if [ "$(readlink -f /proc/1/root)" = "/" ]; then
+ /sbin/udevadm control --reload-rules || :
+ /sbin/udevadm trigger || :
+fi
+%service_add_post qemu-ga.service
+
+%postun guest-agent
+%service_del_postun qemu-ga.service
+
%pre ksm
%service_add_pre ksm.service
@@ -926,7 +1002,6 @@
%_datadir/%name/kvmvapic.bin
%_datadir/%name/linuxboot.bin
%_datadir/%name/multiboot.bin
-%config %_sysconfdir/%name/target-x86_64.conf
%files ppc
%defattr(-, root, root)
@@ -994,6 +1069,10 @@
%defattr(-, root, root)
%_libdir/%name/block-curl.so
+%files block-dmg
+%defattr(-, root, root)
+%_libdir/%name/block-dmg.so
+
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%files block-gluster
%defattr(-, root, root)
@@ -1023,6 +1102,7 @@
%_datadir/%name/vgabios-cirrus.bin
%_datadir/%name/vgabios-qxl.bin
%_datadir/%name/vgabios-stdvga.bin
+%_datadir/%name/vgabios-virtio.bin
%_datadir/%name/vgabios-vmware.bin
%files sgabios
@@ -1063,6 +1143,10 @@
%files guest-agent
%defattr(-, root, root)
%attr(755,root,kvm) %_bindir/qemu-ga
+%if 0%{?with_systemd}
+%{_unitdir}/qemu-ga.service
+%endif
+%{_udevrulesdir}/80-qemu-ga.rules
%if 0%{?with_systemd}
%files ksm
++++++ 0001-XXX-dont-dump-core-on-sigabort.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 4e67113cd1c7eebeab06a62d97d39e6e77b59466 Mon Sep 17 00:00:00 2001
+From 1e556e72ef1334533b0a6ed652c7b00b0382949a Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Mon, 21 Nov 2011 23:50:36 +0100
Subject: [PATCH] XXX dont dump core on sigabort
@@ -8,7 +8,7 @@
1 file changed, 6 insertions(+)
diff --git a/linux-user/signal.c b/linux-user/signal.c
-index 5bb399e..a849f26 100644
+index 9d4cef4..42c5681 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -448,6 +448,10 @@ static void QEMU_NORETURN force_sig(int target_sig)
++++++ 0002-XXX-work-around-SA_RESTART-race-wit.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From e0496d8b8acb22e509d5d6bb6333689a5db615f6 Mon Sep 17 00:00:00 2001
+From 5a7aa97bf33ef868052ee97fb8078af791859a5c Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Thu, 1 Dec 2011 19:00:01 +0100
Subject: [PATCH] XXX work around SA_RESTART race with boehm-gc (ARM only)
@@ -13,10 +13,10 @@
4 files changed, 130 insertions(+), 10 deletions(-)
diff --git a/linux-user/main.c b/linux-user/main.c
-index a8adb04..f2c9391 100644
+index fdee981..c9954fd 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
-@@ -815,15 +815,22 @@ void cpu_loop(CPUARMState *env)
+@@ -811,15 +811,22 @@ void cpu_loop(CPUARMState *env)
break;
}
} else {
@@ -70,7 +70,7 @@
/* Creates the initial guest address space in the host memory space using
* the given host start address hint and size. The guest_start parameter
diff --git a/linux-user/signal.c b/linux-user/signal.c
-index a849f26..ace2bfb 100644
+index 42c5681..4153c99 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -25,6 +25,7 @@
@@ -119,10 +119,10 @@
ignore state to avoid getting unexpected interrupted
syscalls */
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 1622ad6..f70e4f3 100644
+index f62c698..a53a85f 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
-@@ -5512,6 +5512,87 @@ static target_timer_t get_timer_id(abi_long arg)
+@@ -5570,6 +5570,87 @@ static target_timer_t get_timer_id(abi_long arg)
return timerid;
}
@@ -210,7 +210,7 @@
/* do_syscall() should always have a single exit point at the end so
that actions, such as logging of syscall results, can be performed.
All errnos that do_syscall() returns must be -TARGET_<errcode>. */
-@@ -5525,6 +5606,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
+@@ -5583,6 +5664,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
struct stat st;
struct statfs stfs;
void *p;
@@ -223,7 +223,7 @@
#ifdef DEBUG
gemu_log("syscall %d", num);
-@@ -8794,7 +8881,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
+@@ -8852,7 +8939,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
cmd = target_to_host_fcntl_cmd(arg2);
if (cmd == -TARGET_EINVAL) {
ret = cmd;
@@ -232,7 +232,7 @@
}
switch(arg2) {
-@@ -9825,6 +9912,7 @@ fail:
+@@ -9883,6 +9970,7 @@ fail:
#endif
if(do_strace)
print_syscall_ret(num, ret);
++++++ 0003-qemu-0.9.0.cvs-binfmt.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 29c2408bf7093a2d26485a08679cb14de49caf43 Mon Sep 17 00:00:00 2001
+From 46a229c08679d4ba67bdf5f43568b08594c2ba8e Mon Sep 17 00:00:00 2001
From: Ulrich Hecht
Date: Tue, 14 Apr 2009 16:18:44 +0200
Subject: [PATCH] qemu-0.9.0.cvs-binfmt
++++++ 0004-qemu-cvs-alsa_bitfield.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 4fdcc1847221f05ba1721c84dbfe57f27fbc7cf6 Mon Sep 17 00:00:00 2001
+From 30757b11ba37493290f9df04e4f2fdc095463ada Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Tue, 14 Apr 2009 16:20:50 +0200
Subject: [PATCH] qemu-cvs-alsa_bitfield
@@ -13,7 +13,7 @@
2 files changed, 24 insertions(+)
diff --git a/include/exec/user/thunk.h b/include/exec/user/thunk.h
-index 87025c3..6c35e64 100644
+index 3b67462..f26c7f4 100644
--- a/include/exec/user/thunk.h
+++ b/include/exec/user/thunk.h
@@ -38,6 +38,7 @@ typedef enum argtype {
@@ -41,10 +41,10 @@
case TYPE_LONGLONG:
case TYPE_ULONGLONG:
diff --git a/thunk.c b/thunk.c
-index 3cca047..c6a78ca 100644
+index f501fd7..b711860 100644
--- a/thunk.c
+++ b/thunk.c
-@@ -41,6 +41,7 @@ static inline const argtype *thunk_type_next(const argtype *type_ptr)
+@@ -39,6 +39,7 @@ static inline const argtype *thunk_type_next(const argtype *type_ptr)
case TYPE_CHAR:
case TYPE_SHORT:
case TYPE_INT:
@@ -52,7 +52,7 @@
case TYPE_LONGLONG:
case TYPE_ULONGLONG:
case TYPE_LONG:
-@@ -140,6 +141,26 @@ const argtype *thunk_convert(void *dst, const void *src,
+@@ -141,6 +142,26 @@ const argtype *thunk_convert(void *dst, const void *src,
case TYPE_INT:
*(uint32_t *)dst = tswap32(*(uint32_t *)src);
break;
++++++ 0005-qemu-cvs-alsa_ioctl.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 4c491a5962c8b54f89e61930e00293901d826679 Mon Sep 17 00:00:00 2001
+From 706f125ff6cb4940199af13de0040df33827326d Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Tue, 14 Apr 2009 16:23:27 +0200
Subject: [PATCH] qemu-cvs-alsa_ioctl
++++++ 0006-qemu-cvs-alsa_mmap.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From cf0fce63b16eb24410ad11d10222350e3e47d2ef Mon Sep 17 00:00:00 2001
+From e467d93b8c067719e5f240096d85a2c72f025d8d Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Tue, 14 Apr 2009 16:24:15 +0200
Subject: [PATCH] qemu-cvs-alsa_mmap
@@ -12,10 +12,10 @@
1 file changed, 14 insertions(+)
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
-index a249f0c..34a5615 100644
+index 78e1b2d..5fd32f1 100644
--- a/linux-user/mmap.c
+++ b/linux-user/mmap.c
-@@ -366,6 +366,9 @@ abi_ulong mmap_find_vma(abi_ulong start, abi_ulong size)
+@@ -367,6 +367,9 @@ abi_ulong mmap_find_vma(abi_ulong start, abi_ulong size)
}
}
@@ -25,7 +25,7 @@
/* NOTE: all the constants are the HOST ones */
abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
int flags, int fd, abi_ulong offset)
-@@ -400,6 +403,17 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
+@@ -401,6 +404,17 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
}
#endif
++++++ 0007-qemu-cvs-gettimeofday.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 04c1d47c2233cb3f49b27a51f5ad5c428f536faf Mon Sep 17 00:00:00 2001
+From 33a0ebb46acf6693587ad719646bce324973a1b7 Mon Sep 17 00:00:00 2001
From: Ulrich Hecht
Date: Tue, 14 Apr 2009 16:25:41 +0200
Subject: [PATCH] qemu-cvs-gettimeofday
@@ -9,10 +9,10 @@
1 file changed, 2 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index f70e4f3..1244004 100644
+index a53a85f..8e8c92e 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
-@@ -6684,6 +6684,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
+@@ -6742,6 +6742,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
case TARGET_NR_gettimeofday:
{
struct timeval tv;
++++++ 0008-qemu-cvs-ioctl_debug.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 3b21200fd89d9e3b840a226a2d506e742a4bdc02 Mon Sep 17 00:00:00 2001
+From ea09ea340eecc844351b3f645f4ab1bc83a30209 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Tue, 14 Apr 2009 16:26:33 +0200
Subject: [PATCH] qemu-cvs-ioctl_debug
@@ -12,10 +12,10 @@
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 1244004..28ca660 100644
+index 8e8c92e..8270fd0 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
-@@ -3861,7 +3861,12 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
+@@ -3917,7 +3917,12 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
ie = ioctl_entries;
for(;;) {
if (ie->target_cmd == 0) {
++++++ 0009-qemu-cvs-ioctl_nodirection.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 0cf9b5c4dab2e9bc57c405d58f02f13ded7fe8bd Mon Sep 17 00:00:00 2001
+From 578468f720038a99ae3a0cb8fec3c032aad77f63 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Tue, 14 Apr 2009 16:27:36 +0200
Subject: [PATCH] qemu-cvs-ioctl_nodirection
@@ -15,10 +15,10 @@
1 file changed, 6 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 28ca660..4f94afb 100644
+index 8270fd0..42fad52 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
-@@ -3895,6 +3895,11 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
+@@ -3951,6 +3951,11 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
arg_type++;
target_size = thunk_type_size(arg_type, 0);
switch(ie->access) {
@@ -30,7 +30,7 @@
case IOC_R:
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
if (!is_error(ret)) {
-@@ -3913,6 +3918,7 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
+@@ -3969,6 +3974,7 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
unlock_user(argptr, arg, 0);
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
break;
++++++ 0010-block-vmdk-Support-creation-of-SCSI.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 38f2bc40a08ec811b22e60dd4b71fa11b0f11e61 Mon Sep 17 00:00:00 2001
+From dd09a1efb9aaa88ea67b087046dda700fcc6fd78 Mon Sep 17 00:00:00 2001
From: Ulrich Hecht
Date: Tue, 14 Apr 2009 16:37:42 +0200
Subject: [PATCH] block/vmdk: Support creation of SCSI VMDK images in qemu-img
@@ -21,10 +21,10 @@
4 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/block.c b/block.c
-index f2f8ae7..0d32442 100644
+index d088ee0..fae98a4 100644
--- a/block.c
+++ b/block.c
-@@ -5813,6 +5813,9 @@ void bdrv_img_create(const char *filename, const char *fmt,
+@@ -3871,6 +3871,9 @@ void bdrv_img_create(const char *filename, const char *fmt,
if (!quiet) {
printf("Formatting '%s', fmt=%s", filename, fmt);
qemu_opts_print(opts, " ");
@@ -35,10 +35,10 @@
}
diff --git a/block/vmdk.c b/block/vmdk.c
-index 8410a15..2a34dd0 100644
+index fbaab67..6029805 100644
--- a/block/vmdk.c
+++ b/block/vmdk.c
-@@ -1848,9 +1848,12 @@ static int vmdk_create(const char *filename, QemuOpts *opts, Error **errp)
+@@ -1845,9 +1845,12 @@ static int vmdk_create(const char *filename, QemuOpts *opts, Error **errp)
if (qemu_opt_get_bool_del(opts, BLOCK_OPT_ZEROED_GRAIN, false)) {
zeroed_grain = true;
}
@@ -52,7 +52,7 @@
} else if (strcmp(adapter_type, "ide") &&
strcmp(adapter_type, "buslogic") &&
strcmp(adapter_type, "lsilogic") &&
-@@ -2265,6 +2268,11 @@ static QemuOptsList vmdk_create_opts = {
+@@ -2262,6 +2265,11 @@ static QemuOptsList vmdk_create_opts = {
.help = "Enable efficient zero writes "
"using the zeroed-grain GTE feature"
},
@@ -65,10 +65,10 @@
}
};
diff --git a/include/block/block_int.h b/include/block/block_int.h
-index dccb092..decca62 100644
+index 14ad4c3..6843176 100644
--- a/include/block/block_int.h
+++ b/include/block/block_int.h
-@@ -41,10 +41,12 @@
+@@ -39,10 +39,12 @@
#define BLOCK_FLAG_ENCRYPT 1
#define BLOCK_FLAG_COMPAT6 4
#define BLOCK_FLAG_LAZY_REFCOUNTS 8
@@ -82,10 +82,10 @@
#define BLOCK_OPT_BACKING_FMT "backing_fmt"
#define BLOCK_OPT_CLUSTER_SIZE "cluster_size"
diff --git a/qemu-img.c b/qemu-img.c
-index 9dddfbe..cc8e976 100644
+index 75f4ee4..6610617 100644
--- a/qemu-img.c
+++ b/qemu-img.c
-@@ -1602,6 +1602,13 @@ static int img_convert(int argc, char **argv)
+@@ -1806,6 +1806,13 @@ static int img_convert(int argc, char **argv)
}
}
++++++ 0011-linux-user-add-binfmt-wrapper-for-a.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 18eb0ea2c1656ebd3bc875ada67f73a4b36e13a1 Mon Sep 17 00:00:00 2001
+From 3e9916744db0c1ed9d1a7f63c5d473b98db861ab Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Fri, 30 Sep 2011 19:40:36 +0200
Subject: [PATCH] linux-user: add binfmt wrapper for argv[0] handling
@@ -37,10 +37,10 @@
create mode 100644 linux-user/binfmt.c
diff --git a/Makefile.target b/Makefile.target
-index 2262d89..efbd850 100644
+index 3e7aafd..8a84d6f 100644
--- a/Makefile.target
+++ b/Makefile.target
-@@ -34,6 +34,10 @@ endif
+@@ -36,6 +36,10 @@ endif
PROGS=$(QEMU_PROG) $(QEMU_PROGW)
STPFILES=
@@ -51,7 +51,7 @@
config-target.h: config-target.h-timestamp
config-target.h-timestamp: config-target.mak
-@@ -108,6 +112,8 @@ QEMU_CFLAGS+=-I$(SRC_PATH)/linux-user/$(TARGET_ABI_DIR) -I$(SRC_PATH)/linux-user
+@@ -110,6 +114,8 @@ QEMU_CFLAGS+=-I$(SRC_PATH)/linux-user/$(TARGET_ABI_DIR) -I$(SRC_PATH)/linux-user
obj-y += linux-user/
obj-y += gdbstub.o thunk.o user-exec.o
@@ -60,7 +60,7 @@
endif #CONFIG_LINUX_USER
#########################################################
-@@ -156,7 +162,11 @@ endif # CONFIG_SOFTMMU
+@@ -158,7 +164,11 @@ endif # CONFIG_SOFTMMU
# Workaround for http://gcc.gnu.org/PR55489, see configure.
%/translate.o: QEMU_CFLAGS += $(TRANSLATE_OPT_CFLAGS)
@@ -72,9 +72,9 @@
all-obj-y := $(obj-y)
target-obj-y :=
-@@ -181,6 +191,9 @@ $(QEMU_PROG_BUILD): config-devices.mak
- $(QEMU_PROG_BUILD): $(all-obj-y) ../libqemuutil.a ../libqemustub.a
- $(call LINK, $(filter-out %.mak, $^))
+@@ -187,6 +197,9 @@ ifdef CONFIG_DARWIN
+ $(call quiet-command,SetFile -a C $@," SETFILE $(TARGET_DIR)$@")
+ endif
+$(QEMU_PROG)-binfmt: $(obj-binfmt-y)
+ $(call LINK,$^)
++++++ 0012-PPC-KVM-Disable-mmu-notifier-check.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 63b90611b240cc52fc311f0f13eff5b8cca0524e Mon Sep 17 00:00:00 2001
+From 2fc3bebad0110c2578f4db9e0f4dae1613000843 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Fri, 6 Jan 2012 01:05:55 +0100
Subject: [PATCH] PPC: KVM: Disable mmu notifier check
@@ -13,10 +13,10 @@
1 file changed, 2 insertions(+)
diff --git a/exec.c b/exec.c
-index 874ecfc..0274800 100644
+index 0a4a0c5..03054a8 100644
--- a/exec.c
+++ b/exec.c
-@@ -1134,11 +1134,13 @@ static void *file_ram_alloc(RAMBlock *block,
+@@ -1183,11 +1183,13 @@ static void *file_ram_alloc(RAMBlock *block,
goto error;
}
++++++ 0013-linux-user-fix-segfault-deadlock.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 58a7f89554d2de5bb2ef05c43f97fccdad8c54e0 Mon Sep 17 00:00:00 2001
+From b3086c4600cb1e8aef85977566df8fee6a20a6a1 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Fri, 13 Jan 2012 17:05:41 +0100
Subject: [PATCH] linux-user: fix segfault deadlock
@@ -52,10 +52,10 @@
+
#endif
diff --git a/user-exec.c b/user-exec.c
-index 8f57e8a..f63198a 100644
+index ed9a07f..38f7baf 100644
--- a/user-exec.c
+++ b/user-exec.c
-@@ -94,6 +94,10 @@ static inline int handle_cpu_signal(uintptr_t pc, unsigned long address,
+@@ -95,6 +95,10 @@ static inline int handle_cpu_signal(uintptr_t pc, unsigned long address,
qemu_printf("qemu: SIGSEGV pc=0x%08lx address=%08lx w=%d oldset=0x%08lx\n",
pc, address, is_write, *(unsigned long *)old_set);
#endif
++++++ 0014-linux-user-binfmt-support-host-bina.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From cb2967f20959e9907669a2332ccd164f40351007 Mon Sep 17 00:00:00 2001
+From 9d108fe88813ed9b5c04f27229c335e88d1ee0b5 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Thu, 2 Feb 2012 18:02:33 +0100
Subject: [PATCH] linux-user: binfmt: support host binaries
++++++ 0015-linux-user-Ignore-broken-loop-ioctl.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 1b00c1b548b8e05ce687a73d46f0c08f698edc0a Mon Sep 17 00:00:00 2001
+From c09e4874d845ac6783be16bb560ef4a69f4e24bb Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Tue, 12 Jun 2012 04:41:10 +0200
Subject: [PATCH] linux-user: Ignore broken loop ioctl
@@ -46,10 +46,10 @@
#endif
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 4f94afb..75ccd66 100644
+index 42fad52..8abe4cd 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
-@@ -3838,6 +3838,13 @@ static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp,
+@@ -3894,6 +3894,13 @@ static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp,
return get_errno(ioctl(fd, ie->host_cmd, sig));
}
++++++ 0016-linux-user-lock-tcg.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From a2f780a45d6b328e1b2ed383784cd690bd3bb529 Mon Sep 17 00:00:00 2001
+From 66d948dc1ca00cf95af18a77f0db061f657956a9 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Thu, 5 Jul 2012 17:31:39 +0200
Subject: [PATCH] linux-user: lock tcg
@@ -20,7 +20,7 @@
3 files changed, 43 insertions(+), 2 deletions(-)
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
-index 34a5615..7ebf953 100644
+index 5fd32f1..38f1cdd 100644
--- a/linux-user/mmap.c
+++ b/linux-user/mmap.c
@@ -30,6 +30,7 @@
@@ -28,10 +28,10 @@
#include "qemu.h"
#include "qemu-common.h"
+#include "tcg.h"
+ #include "translate-all.h"
//#define DEBUG_MMAP
-
-@@ -40,6 +41,7 @@ void mmap_lock(void)
+@@ -41,6 +42,7 @@ void mmap_lock(void)
{
if (mmap_lock_count++ == 0) {
pthread_mutex_lock(&mmap_mutex);
@@ -39,7 +39,7 @@
}
}
-@@ -47,6 +49,7 @@ void mmap_unlock(void)
+@@ -48,6 +50,7 @@ void mmap_unlock(void)
{
if (--mmap_lock_count == 0) {
pthread_mutex_unlock(&mmap_mutex);
@@ -48,7 +48,7 @@
}
diff --git a/tcg/tcg.c b/tcg/tcg.c
-index f1558b7..f7a40ba 100644
+index 0892a9b..f67c38c 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -39,6 +39,8 @@
@@ -100,7 +100,7 @@
/* Count total number of arguments and allocate the corresponding
space */
total_args = 0;
-@@ -2385,10 +2411,12 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
+@@ -2422,10 +2448,12 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
}
#endif
@@ -113,7 +113,7 @@
return tcg_current_code_size(s);
}
-@@ -2400,7 +2428,11 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
+@@ -2437,7 +2465,11 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
int tcg_gen_code_search_pc(TCGContext *s, tcg_insn_unit *gen_code_buf,
long offset)
{
@@ -127,7 +127,7 @@
#ifdef CONFIG_PROFILER
diff --git a/tcg/tcg.h b/tcg/tcg.h
-index add7f75..bbd819e 100644
+index 231a781..e0806f9 100644
--- a/tcg/tcg.h
+++ b/tcg/tcg.h
@@ -27,6 +27,7 @@
@@ -137,8 +137,8 @@
+#include "qemu/thread.h"
#include "tcg-target.h"
- /* Default target word size to pointer size. */
-@@ -555,6 +556,8 @@ struct TCGContext {
+ #define CPU_TEMP_BUF_NLONGS 128
+@@ -572,6 +573,8 @@ struct TCGContext {
target_ulong gen_opc_pc[OPC_BUF_SIZE];
uint16_t gen_opc_icount[OPC_BUF_SIZE];
uint8_t gen_opc_instr_start[OPC_BUF_SIZE];
@@ -147,7 +147,7 @@
};
extern TCGContext tcg_ctx;
-@@ -743,6 +746,9 @@ void tcg_gen_callN(TCGContext *s, void *func,
+@@ -760,6 +763,9 @@ void tcg_gen_callN(TCGContext *s, void *func,
void tcg_op_remove(TCGContext *s, TCGOp *op);
void tcg_optimize(TCGContext *s);
++++++ 0017-linux-user-Run-multi-threaded-code-.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 32acfcfbaf593e8d657b5a09b48d05871250d444 Mon Sep 17 00:00:00 2001
+From bb2c2983421cc2b39cd7174f9bfdbb0376d5fcb9 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Tue, 10 Jul 2012 20:40:55 +0200
Subject: [PATCH] linux-user: Run multi-threaded code on a single core
@@ -19,10 +19,10 @@
1 file changed, 9 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 75ccd66..11a1572 100644
+index 8abe4cd..72701d4 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
-@@ -4543,6 +4543,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
+@@ -4599,6 +4599,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
if (nptl_flags & CLONE_SETTLS)
cpu_set_tls (new_env, newtls);
++++++ 0018-linux-user-lock-tb-flushing-too.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From b447299e5493e4a6593e0ddde084e0ee59070199 Mon Sep 17 00:00:00 2001
+From 996083e51b49804d7d9b6fa8c0daa6b2a68fbfee Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Wed, 11 Jul 2012 16:47:42 +0200
Subject: [PATCH] linux-user: lock tb flushing too
@@ -14,10 +14,10 @@
1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/translate-all.c b/translate-all.c
-index 11763c6..fc6fc71 100644
+index 60a3d8b..6de63cd 100644
--- a/translate-all.c
+++ b/translate-all.c
-@@ -715,19 +715,23 @@ static TranslationBlock *tb_alloc(target_ulong pc)
+@@ -705,19 +705,23 @@ static TranslationBlock *tb_alloc(target_ulong pc)
{
TranslationBlock *tb;
@@ -41,7 +41,7 @@
/* In practice this is mostly used for single use temporary TB
Ignore the hard cases and just back up if this TB happens to
be the last one generated. */
-@@ -736,6 +740,7 @@ void tb_free(TranslationBlock *tb)
+@@ -726,6 +730,7 @@ void tb_free(TranslationBlock *tb)
tcg_ctx.code_gen_ptr = tb->tc_ptr;
tcg_ctx.tb_ctx.nb_tbs--;
}
@@ -49,7 +49,7 @@
}
static inline void invalidate_page_bitmap(PageDesc *p)
-@@ -793,6 +798,7 @@ void tb_flush(CPUArchState *env1)
+@@ -781,6 +786,7 @@ void tb_flush(CPUState *cpu)
((unsigned long)(tcg_ctx.code_gen_ptr - tcg_ctx.code_gen_buffer)) /
tcg_ctx.tb_ctx.nb_tbs : 0);
#endif
@@ -57,7 +57,7 @@
if ((unsigned long)(tcg_ctx.code_gen_ptr - tcg_ctx.code_gen_buffer)
> tcg_ctx.code_gen_buffer_size) {
cpu_abort(cpu, "Internal error: code buffer overflow\n");
-@@ -810,6 +816,7 @@ void tb_flush(CPUArchState *env1)
+@@ -798,6 +804,7 @@ void tb_flush(CPUState *cpu)
/* XXX: flush processor icache at this point if cache flush is
expensive */
tcg_ctx.tb_ctx.tb_flush_count++;
@@ -65,7 +65,7 @@
}
#ifdef DEBUG_TB_CHECK
-@@ -1119,8 +1126,10 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
+@@ -1079,8 +1086,10 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
int current_flags = 0;
#endif /* TARGET_HAS_PRECISE_SMC */
@@ -75,8 +75,8 @@
+ tcg_unlock();
return;
}
- if (!p->code_bitmap &&
-@@ -1213,6 +1222,7 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
+ #if defined(TARGET_HAS_PRECISE_SMC)
+@@ -1165,6 +1174,7 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
cpu_resume_from_signal(cpu, NULL);
}
#endif
@@ -84,7 +84,7 @@
}
/* len must be <= 8 and start must be a multiple of len */
-@@ -1420,13 +1430,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
+@@ -1379,13 +1389,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
{
int m_min, m_max, m;
uintptr_t v;
@@ -102,7 +102,7 @@
return NULL;
}
/* binary search (cf Knuth) */
-@@ -1437,6 +1450,7 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
+@@ -1396,6 +1409,7 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
tb = &tcg_ctx.tb_ctx.tbs[m];
v = (uintptr_t)tb->tc_ptr;
if (v == tc_ptr) {
@@ -110,7 +110,7 @@
return tb;
} else if (tc_ptr < v) {
m_max = m - 1;
-@@ -1444,7 +1458,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
+@@ -1403,7 +1417,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
m_min = m + 1;
}
}
++++++ 0019-linux-user-Fake-proc-cpuinfo.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:06.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:06.000000000 +0100
@@ -1,4 +1,4 @@
-From 83f8760297c5fac596c82a9e45449895071b90af Mon Sep 17 00:00:00 2001
+From a592905fec06b408000a34046a6e70095214d955 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Mon, 23 Jul 2012 10:24:14 +0200
Subject: [PATCH] linux-user: Fake /proc/cpuinfo
@@ -22,10 +22,10 @@
1 file changed, 20 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 11a1572..4c72020 100644
+index 72701d4..39dd818 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
-@@ -5362,6 +5362,25 @@ static int open_self_stat(void *cpu_env, int fd)
+@@ -5420,6 +5420,25 @@ static int open_self_stat(void *cpu_env, int fd)
return 0;
}
@@ -51,7 +51,7 @@
static int open_self_auxv(void *cpu_env, int fd)
{
CPUState *cpu = ENV_GET_CPU((CPUArchState *)cpu_env);
-@@ -5476,6 +5495,7 @@ static int do_openat(void *cpu_env, int dirfd, const char *pathname, int flags,
+@@ -5534,6 +5553,7 @@ static int do_openat(void *cpu_env, int dirfd, const char *pathname, int flags,
#if defined(HOST_WORDS_BIGENDIAN) != defined(TARGET_WORDS_BIGENDIAN)
{ "/proc/net/route", open_net_route, is_proc },
#endif
++++++ 0020-linux-user-implement-FS_IOC_GETFLAG.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From a7efb638bab217add93f4199939037730df222ba Mon Sep 17 00:00:00 2001
+From e5e97946c33a9f96bf2690ef725879412d40b57d Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Mon, 20 Aug 2012 00:02:52 +0200
Subject: [PATCH] linux-user: implement FS_IOC_GETFLAGS ioctl
++++++ 0021-linux-user-implement-FS_IOC_SETFLAG.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From de8637cc5c349ec197315c9a06ca6163e3ca8dd1 Mon Sep 17 00:00:00 2001
+From 11b3d0e15103565ed1f80e31033f4b8e2ebb456f Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Mon, 20 Aug 2012 00:07:13 +0200
Subject: [PATCH] linux-user: implement FS_IOC_SETFLAGS ioctl
++++++ 0022-linux-user-XXX-disable-fiemap.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 5d92384080c5f450560412313661ab0e84c42bd8 Mon Sep 17 00:00:00 2001
+From 12eee45e1110866da047697a46425754c77b2039 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Tue, 21 Aug 2012 14:20:40 +0200
Subject: [PATCH] linux-user: XXX disable fiemap
@@ -9,10 +9,10 @@
1 file changed, 5 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 4c72020..30d6bcd 100644
+index 39dd818..5bd6f55 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
-@@ -3333,6 +3333,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
+@@ -3389,6 +3389,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
uint32_t outbufsz;
int free_fm = 0;
++++++ 0023-slirp-nooutgoing.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 7f2436d3ad31d2fd264f8dd9188abdb9a3bebae6 Mon Sep 17 00:00:00 2001
+From 872dda04d480ab7c04830ae7297319ae52d03f65 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20F=C3=A4rber?=
Date: Wed, 29 Aug 2012 18:42:56 +0200
Subject: [PATCH] slirp: -nooutgoing
@@ -12,10 +12,10 @@
4 files changed, 40 insertions(+)
diff --git a/qemu-options.hx b/qemu-options.hx
-index 319d971..4b6dd9a 100644
+index 77f5853..fed72b0 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
-@@ -2878,6 +2878,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU
+@@ -2915,6 +2915,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU
from a script.
ETEXI
@@ -97,10 +97,10 @@
socket_set_fast_reuse(s);
opt = 1;
diff --git a/vl.c b/vl.c
-index 74c2681..51de200 100644
+index 0adbbd6..f876c0b 100644
--- a/vl.c
+++ b/vl.c
-@@ -163,6 +163,7 @@ int smp_threads = 1;
+@@ -165,6 +165,7 @@ int smp_threads = 1;
int acpi_enabled = 1;
int no_hpet = 0;
int fd_bootchk = 1;
@@ -108,7 +108,7 @@
static int no_reboot;
int no_shutdown = 0;
int cursor_hide = 1;
-@@ -3146,6 +3147,14 @@ int main(int argc, char **argv, char **envp)
+@@ -3366,6 +3367,14 @@ int main(int argc, char **argv, char **envp)
case QEMU_OPTION_singlestep:
singlestep = 1;
break;
++++++ 0024-vnc-password-file-and-incoming-conn.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 1e17a16e5d7ac68f2679407f5468d11b73644f6b Mon Sep 17 00:00:00 2001
+From e6f0d75af33e57a766e9d21333a55b981f374d4d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20F=C3=A4rber?=
Date: Wed, 29 Aug 2012 20:06:01 +0200
Subject: [PATCH] vnc: password-file= and incoming-connections=
@@ -9,10 +9,10 @@
1 file changed, 55 insertions(+)
diff --git a/ui/vnc.c b/ui/vnc.c
-index cffb5b7..77c4027 100644
+index e26973a..1545e9b 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
-@@ -51,6 +51,8 @@ static const struct timeval VNC_REFRESH_LOSSY = { 2, 0 };
+@@ -54,6 +54,8 @@ static const struct timeval VNC_REFRESH_LOSSY = { 2, 0 };
static QTAILQ_HEAD(, VncDisplay) vnc_displays =
QTAILQ_HEAD_INITIALIZER(vnc_displays);
@@ -21,7 +21,7 @@
static int vnc_cursor_define(VncState *vs);
static void vnc_release_modifiers(VncState *vs);
-@@ -1221,6 +1223,7 @@ static void vnc_disconnect_start(VncState *vs)
+@@ -1220,6 +1222,7 @@ static void vnc_disconnect_start(VncState *vs)
void vnc_disconnect_finish(VncState *vs)
{
int i;
@@ -29,7 +29,7 @@
vnc_jobs_join(vs); /* Wait encoding jobs */
-@@ -1269,6 +1272,13 @@ void vnc_disconnect_finish(VncState *vs)
+@@ -1266,6 +1269,13 @@ void vnc_disconnect_finish(VncState *vs)
}
g_free(vs->lossy_rect);
g_free(vs);
@@ -43,7 +43,7 @@
}
int vnc_client_io_error(VncState *vs, int ret, int last_errno)
-@@ -3240,6 +3250,39 @@ char *vnc_display_local_addr(const char *id)
+@@ -3233,6 +3243,39 @@ char *vnc_display_local_addr(const char *id)
return vnc_socket_local_addr("%s:%s", vs->lsock);
}
@@ -83,7 +83,7 @@
static QemuOptsList qemu_vnc_opts = {
.name = "vnc",
.head = QTAILQ_HEAD_INITIALIZER(qemu_vnc_opts.head),
-@@ -3267,6 +3310,9 @@ static QemuOptsList qemu_vnc_opts = {
+@@ -3260,6 +3303,9 @@ static QemuOptsList qemu_vnc_opts = {
.name = "connections",
.type = QEMU_OPT_NUMBER,
},{
@@ -93,7 +93,7 @@
.name = "to",
.type = QEMU_OPT_NUMBER,
},{
-@@ -3279,6 +3325,9 @@ static QemuOptsList qemu_vnc_opts = {
+@@ -3272,6 +3318,9 @@ static QemuOptsList qemu_vnc_opts = {
.name = "password",
.type = QEMU_OPT_BOOL,
},{
@@ -103,7 +103,7 @@
.name = "reverse",
.type = QEMU_OPT_BOOL,
},{
-@@ -3443,6 +3492,7 @@ void vnc_display_open(const char *id, Error **errp)
+@@ -3436,6 +3485,7 @@ void vnc_display_open(const char *id, Error **errp)
const char *share, *device_id;
QemuConsole *con;
bool password = false;
@@ -111,9 +111,9 @@
bool reverse = false;
const char *vnc;
const char *has_to;
-@@ -3516,6 +3566,10 @@ void vnc_display_open(const char *id, Error **errp)
- "methods as an alternative");
- goto fail;
+@@ -3524,6 +3574,10 @@ void vnc_display_open(const char *id, Error **errp)
+ goto fail;
+ }
}
+ password_file = qemu_opt_get(opts, "password-file");
+ if (password_file) {
@@ -122,7 +122,7 @@
reverse = qemu_opt_get_bool(opts, "reverse", false);
lock_key_sync = qemu_opt_get_bool(opts, "lock-key-sync", true);
-@@ -3569,6 +3623,7 @@ void vnc_display_open(const char *id, Error **errp)
+@@ -3577,6 +3631,7 @@ void vnc_display_open(const char *id, Error **errp)
vs->share_policy = VNC_SHARE_POLICY_ALLOW_EXCLUSIVE;
}
vs->connections_limit = qemu_opt_get_number(opts, "connections", 32);
++++++ 0025-linux-user-add-more-blk-ioctls.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 58d1cb20e7dbeddef1e12fd2dfac4fe2a9c16cff Mon Sep 17 00:00:00 2001
+From 41e679783a244ca0ea1963e55bd3da5b9a966f24 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Wed, 10 Oct 2012 10:21:20 +0200
Subject: [PATCH] linux-user: add more blk ioctls
++++++ 0026-linux-user-use-target_ulong.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 4541994ba978226f288028aec1b9868efcc5ea9f Mon Sep 17 00:00:00 2001
+From 72d795a02ff3fac05afef692938ab2ec12176795 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Tue, 9 Oct 2012 09:06:49 +0200
Subject: [PATCH] linux-user: use target_ulong
@@ -36,10 +36,10 @@
extern THREAD CPUState *thread_cpu;
void cpu_loop(CPUArchState *env);
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 30d6bcd..07c0138 100644
+index 5bd6f55..8016256 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
-@@ -5648,10 +5648,10 @@ int syscall_restartable(int syscall_nr)
+@@ -5706,10 +5706,10 @@ int syscall_restartable(int syscall_nr)
/* do_syscall() should always have a single exit point at the end so
that actions, such as logging of syscall results, can be performed.
All errnos that do_syscall() returns must be -TARGET_<errcode>. */
++++++ 0027-block-Add-support-for-DictZip-enabl.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From ded0e437f0cc9df0f0508f166db14cc54aaad784 Mon Sep 17 00:00:00 2001
+From 3058cb28a3852a02ef20cb5fa6e17f89880bd2cb Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Wed, 5 Aug 2009 09:49:37 +0200
Subject: [PATCH] block: Add support for DictZip enabled gzip files
@@ -33,31 +33,32 @@
BlockDriverCompletionFunc -> BlockCompletionFunc,
qemu_aio_release() -> qemu_aio_unref(),
drop dictzip_aio_cancel()]
+[AF: common-obj-y -> block-obj-y, drop probe hook (bsc#945778)]
Signed-off-by: Andreas Färber
---
block/Makefile.objs | 1 +
- block/dictzip.c | 591 ++++++++++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 592 insertions(+)
+ block/dictzip.c | 578 ++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 579 insertions(+)
create mode 100644 block/dictzip.c
diff --git a/block/Makefile.objs b/block/Makefile.objs
-index db2933e..1c6f9cf 100644
+index 58ef2ef..c7b9294 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
-@@ -25,6 +25,7 @@ block-obj-y += write-threshold.o
- common-obj-y += stream.o
- common-obj-y += commit.o
- common-obj-y += backup.o
-+common-obj-y += dictzip.o
+@@ -20,6 +20,7 @@ block-obj-$(CONFIG_RBD) += rbd.o
+ block-obj-$(CONFIG_GLUSTERFS) += gluster.o
+ block-obj-$(CONFIG_ARCHIPELAGO) += archipelago.o
+ block-obj-$(CONFIG_LIBSSH2) += ssh.o
++block-obj-y += dictzip.o
+ block-obj-y += accounting.o
+ block-obj-y += write-threshold.o
- iscsi.o-cflags := $(LIBISCSI_CFLAGS)
- iscsi.o-libs := $(LIBISCSI_LIBS)
diff --git a/block/dictzip.c b/block/dictzip.c
new file mode 100644
-index 0000000..8e6855a
+index 0000000..1824971
--- /dev/null
+++ b/block/dictzip.c
-@@ -0,0 +1,591 @@
+@@ -0,0 +1,578 @@
+/*
+ * DictZip Block driver for dictzip enabled gzip files
+ *
@@ -179,18 +180,6 @@
+ int64_t file_len;
+} BDRVDictZipState;
+
-+static int dictzip_probe(const uint8_t *buf, int buf_size, const char *filename)
-+{
-+ if (buf_size < 2)
-+ return 0;
-+
-+ /* We match on every gzip file */
-+ if ((buf[0] == GZ_MAGIC1) && (buf[1] == GZ_MAGIC2))
-+ return 100;
-+
-+ return 0;
-+}
-+
+static int start_zStream(z_stream *zStream)
+{
+ zStream->zalloc = NULL;
@@ -638,7 +627,6 @@
+ .bdrv_file_open = dictzip_open,
+ .bdrv_close = dictzip_close,
+ .bdrv_getlength = dictzip_getlength,
-+ .bdrv_probe = dictzip_probe,
+
+ .bdrv_aio_readv = dictzip_aio_readv,
+};
++++++ 0028-block-Add-tar-container-format.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 6b8c3885607cbbbc5eb5a6b6c08e64eeabd639a5 Mon Sep 17 00:00:00 2001
+From 6492e67a4633bac8d339a8dd171a4560d9b0db6d Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Wed, 5 Aug 2009 17:28:38 +0200
Subject: [PATCH] block: Add tar container format
@@ -34,31 +34,32 @@
BlockDriverCompletionFunc -> BlockCompletionFunc,
qemu_aio_release() -> qemu_aio_unref(),
drop tar_aio_cancel()]
+[AF: common-obj-y -> block-obj-y, drop probe hook (bsc#945778)]
Signed-off-by: Andreas Färber
---
block/Makefile.objs | 1 +
- block/tar.c | 381 ++++++++++++++++++++++++++++++++++++++++++++++++++++
- 2 files changed, 382 insertions(+)
+ block/tar.c | 368 ++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 369 insertions(+)
create mode 100644 block/tar.c
diff --git a/block/Makefile.objs b/block/Makefile.objs
-index 1c6f9cf..c7e2178 100644
+index c7b9294..0a4b697 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
-@@ -26,6 +26,7 @@ common-obj-y += stream.o
- common-obj-y += commit.o
- common-obj-y += backup.o
- common-obj-y += dictzip.o
-+common-obj-y += tar.o
+@@ -21,6 +21,7 @@ block-obj-$(CONFIG_GLUSTERFS) += gluster.o
+ block-obj-$(CONFIG_ARCHIPELAGO) += archipelago.o
+ block-obj-$(CONFIG_LIBSSH2) += ssh.o
+ block-obj-y += dictzip.o
++block-obj-y += tar.o
+ block-obj-y += accounting.o
+ block-obj-y += write-threshold.o
- iscsi.o-cflags := $(LIBISCSI_CFLAGS)
- iscsi.o-libs := $(LIBISCSI_LIBS)
diff --git a/block/tar.c b/block/tar.c
new file mode 100644
-index 0000000..d8218a3
+index 0000000..e612db3
--- /dev/null
+++ b/block/tar.c
-@@ -0,0 +1,381 @@
+@@ -0,0 +1,368 @@
+/*
+ * Tar block driver
+ *
@@ -121,18 +122,6 @@
+ char longfile[2048];
+} BDRVTarState;
+
-+static int tar_probe(const uint8_t *buf, int buf_size, const char *filename)
-+{
-+ if (buf_size < OFFS_MAGIC + 5)
-+ return 0;
-+
-+ /* we only support newer tar */
-+ if (!strncmp((char*)buf + OFFS_MAGIC, POSIX_TAR_MAGIC, 5))
-+ return 100;
-+
-+ return 0;
-+}
-+
+static int str_ends(char *str, const char *end)
+{
+ int end_len = strlen(end);
@@ -429,7 +418,6 @@
+ .bdrv_file_open = tar_open,
+ .bdrv_close = tar_close,
+ .bdrv_getlength = tar_getlength,
-+ .bdrv_probe = tar_probe,
+
+ .bdrv_aio_readv = tar_aio_readv,
+};
++++++ 0029-Legacy-Patch-kvm-qemu-preXX-dictzip.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 36f1cdefb3ffc0b3e96f544ef3280dca57ea2e4c Mon Sep 17 00:00:00 2001
+From d893ae81b781a53bac6ee988bed2f32453dec3a7 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Wed, 12 Dec 2012 19:11:30 +0100
Subject: [PATCH] Legacy Patch kvm-qemu-preXX-dictzip3.patch
@@ -8,10 +8,10 @@
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/block/tar.c b/block/tar.c
-index d8218a3..522ddd3 100644
+index e612db3..654fcf7 100644
--- a/block/tar.c
+++ b/block/tar.c
-@@ -83,7 +83,8 @@ static int str_ends(char *str, const char *end)
+@@ -71,7 +71,8 @@ static int str_ends(char *str, const char *end)
return !strncmp(str + str_len - end_len, end, end_len);
}
@@ -21,7 +21,7 @@
{
int retval = 0;
-@@ -99,10 +100,17 @@ static int is_target_file(BlockDriverState *bs, char *filename)
+@@ -87,10 +88,17 @@ static int is_target_file(BlockDriverState *bs, char *filename)
if (str_ends(filename, ".vmdk"))
retval = 1;
@@ -39,7 +39,7 @@
return retval;
}
-@@ -229,12 +237,13 @@ static int tar_open(BlockDriverState *bs, QDict *options, int flags, Error **err
+@@ -217,12 +225,13 @@ static int tar_open(BlockDriverState *bs, QDict *options, int flags, Error **err
bdrv_pread(s->hd, header_offs - s->file_len, s->longfile,
sizeof(s->longfile));
s->longfile[sizeof(s->longfile)-1] = '\0';
++++++ 0030-console-add-question-mark-escape-op.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From aaa848743a9634205cf4459ae12993673d428cc6 Mon Sep 17 00:00:00 2001
+From 9ff792a6d58e3966c94dc22167d956df1756aa14 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Mon, 6 Jun 2011 06:53:52 +0200
Subject: [PATCH] console: add question-mark escape operator
@@ -16,10 +16,10 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ui/console.c b/ui/console.c
-index b15ca87..a2364e6 100644
+index 75fc492..827b91e 100644
--- a/ui/console.c
+++ b/ui/console.c
-@@ -853,7 +853,7 @@ static void console_putchar(QemuConsole *s, int ch)
+@@ -854,7 +854,7 @@ static void console_putchar(QemuConsole *s, int ch)
} else {
if (s->nb_esc_params < MAX_ESC_PARAMS)
s->nb_esc_params++;
++++++ 0031-Make-char-muxer-more-robust-wrt-sma.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 373aff92ccca07533a1bac043ccccbe8d1edb322 Mon Sep 17 00:00:00 2001
+From 3de38631531f91c85e910e961978a77bd1ef842f Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Thu, 1 Apr 2010 17:36:23 +0200
Subject: [PATCH] Make char muxer more robust wrt small FIFOs
@@ -22,10 +22,10 @@
1 file changed, 16 insertions(+)
diff --git a/qemu-char.c b/qemu-char.c
-index a405d76..471ccfe 100644
+index d956f8d..cd301ba 100644
--- a/qemu-char.c
+++ b/qemu-char.c
-@@ -403,6 +403,9 @@ typedef struct {
+@@ -404,6 +404,9 @@ typedef struct {
IOEventHandler *chr_event[MAX_MUX];
void *ext_opaque[MAX_MUX];
CharDriverState *drv;
@@ -35,7 +35,7 @@
int focus;
int mux_cnt;
int term_got_escape;
-@@ -562,6 +565,15 @@ static void mux_chr_accept_input(CharDriverState *chr)
+@@ -563,6 +566,15 @@ static void mux_chr_accept_input(CharDriverState *chr)
d->chr_read[m](d->ext_opaque[m],
&d->buffer[m][d->cons[m]++ & MUX_BUFFER_MASK], 1);
}
@@ -51,7 +51,7 @@
}
static int mux_chr_can_read(void *opaque)
-@@ -690,6 +702,10 @@ static CharDriverState *qemu_chr_open_mux(CharDriverState *drv)
+@@ -691,6 +703,10 @@ static CharDriverState *qemu_chr_open_mux(CharDriverState *drv)
chr->opaque = d;
d->drv = drv;
d->focus = -1;
++++++ 0032-linux-user-lseek-explicitly-cast-no.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 21c375ae2e6cfc6dc7b6eb0bca58e127cdddfa63 Mon Sep 17 00:00:00 2001
+From c42944366a1ce036e7baab2ee14b71e2d38754d1 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Thu, 13 Dec 2012 14:29:22 +0100
Subject: [PATCH] linux-user: lseek: explicitly cast non-set offsets to signed
@@ -16,10 +16,10 @@
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 07c0138..4917e20 100644
+index 8016256..7c97105 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
-@@ -5959,9 +5959,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
+@@ -6017,9 +6017,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
case TARGET_NR_oldstat:
goto unimplemented;
#endif
++++++ 0033-virtfs-proxy-helper-Provide-__u64-f.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From f8d920c04363d2059f43d81569bf68324bf52999 Mon Sep 17 00:00:00 2001
+From cd1a94f80e21ef2b5fa584514c032b34c0f85aeb Mon Sep 17 00:00:00 2001
From: Bruce Rogers
Date: Thu, 16 May 2013 12:39:10 +0200
Subject: [PATCH] virtfs-proxy-helper: Provide __u64 for broken
@@ -12,7 +12,7 @@
1 file changed, 7 insertions(+)
diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
-index a698e2d..bbc6233 100644
+index 9097d15..f73de4e 100644
--- a/fsdev/virtfs-proxy-helper.c
+++ b/fsdev/virtfs-proxy-helper.c
@@ -9,6 +9,13 @@
++++++ 0034-configure-Enable-PIE-for-ppc-and-pp.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 0c1e38643a275316ed01c40c085bec3f0d91af3d Mon Sep 17 00:00:00 2001
+From c9fbb5972a05e94bbe28bc75441344830a247fe5 Mon Sep 17 00:00:00 2001
From: Dinar Valeev
Date: Wed, 2 Oct 2013 17:56:03 +0200
Subject: [PATCH] configure: Enable PIE for ppc and ppc64 hosts
@@ -14,10 +14,10 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
-index 6969f6f..b43b371 100755
+index cd219d8..6ab01bc 100755
--- a/configure
+++ b/configure
-@@ -1551,7 +1551,7 @@ fi
+@@ -1530,7 +1530,7 @@ fi
if test "$pie" = ""; then
case "$cpu-$targetos" in
++++++ 0035-qtest-Increase-socket-timeout.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 93d5e4be4758d956a6f9751c468432a105cc5084 Mon Sep 17 00:00:00 2001
+From 39b6d2beaf481c85e836a77dede84456c25622ed Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20F=C3=A4rber?=
Date: Thu, 17 Apr 2014 18:39:10 +0200
Subject: [PATCH] qtest: Increase socket timeout
@@ -14,7 +14,7 @@
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/libqtest.c b/tests/libqtest.c
-index 12d65bd..2931773 100644
+index e5188e0..e0c5f23 100644
--- a/tests/libqtest.c
+++ b/tests/libqtest.c
@@ -35,7 +35,7 @@
++++++ 0036-AIO-Reduce-number-of-threads-for-32.patch ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -1,4 +1,4 @@
-From 93385f479c5d050d6361d6835a2da091555b380a Mon Sep 17 00:00:00 2001
+From 458ee6dac3863bf420d70cd218f88b60c4de7565 Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Wed, 14 Jan 2015 01:32:11 +0100
Subject: [PATCH] AIO: Reduce number of threads for 32bit hosts
@@ -21,10 +21,10 @@
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/thread-pool.c b/thread-pool.c
-index e2cac8e..87a3ea9 100644
+index ac909f4..fc16fc2 100644
--- a/thread-pool.c
+++ b/thread-pool.c
-@@ -299,7 +299,12 @@ static void thread_pool_init_one(ThreadPool *pool, AioContext *ctx)
+@@ -297,7 +297,12 @@ static void thread_pool_init_one(ThreadPool *pool, AioContext *ctx)
qemu_mutex_init(&pool->lock);
qemu_cond_init(&pool->worker_stopped);
qemu_sem_init(&pool->sem, 0);
++++++ 0038-Revert-Revert-seccomp-tests-that-al.patch -> 0037-Revert-Revert-seccomp-tests-that-al.patch ++++++
--- /work/SRC/openSUSE:Factory/qemu/0038-Revert-Revert-seccomp-tests-that-al.patch 2015-05-10 10:54:27.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.qemu.new/0037-Revert-Revert-seccomp-tests-that-al.patch 2015-12-18 21:52:02.000000000 +0100
@@ -1,4 +1,4 @@
-From 454fc5a3bc19e8b6a2b5dcb0aa202cd03e313f19 Mon Sep 17 00:00:00 2001
+From 1c97919295ef36ddaaca131cc412aafe9a078151 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20F=C3=A4rber?=
Date: Tue, 14 Apr 2015 18:42:06 +0200
Subject: [PATCH] Revert "Revert seccomp tests that allow it to be used on
@@ -18,10 +18,10 @@
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
-index b43b371..7f31e89 100755
+index 6ab01bc..b1ed2a2 100755
--- a/configure
+++ b/configure
-@@ -1848,14 +1848,19 @@ fi
+@@ -1827,14 +1827,19 @@ fi
# libseccomp check
if test "$seccomp" != "no" ; then
++++++ 0038-tcg-aarch64-Fix-tcg_out_qemu_-ld-st.patch ++++++
From cf25e5be2ef07247d563a0aec6edc719a1f6a5aa Mon Sep 17 00:00:00 2001
From: Richard Henderson
Date: Tue, 1 Sep 2015 15:58:02 -0400
Subject: [PATCH] tcg/aarch64: Fix tcg_out_qemu_{ld, st} for guest_base == 0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
In ffc6372851d8631a9f9fa56ec613b3244dc635b9, we swapped the guest
base to the address base register from the address index register.
Except that 31 in the base slot is SP not XZR, so we need to be
more intelligent about which reg gets placed in which slot.
Cc: qemu-stable@nongnu.org (v2.4.0)
Reviewed-by: Paolo Bonzini
Reported-by: Andreas Färber
Signed-off-by: Richard Henderson
(cherry picked from commit 352bcb0a2b816ff9ab9d75d0f2384650d9e9ab19)
[AF: Backported to GUEST_BASE and CONFIG_USE_GUEST_BASE]
Signed-off-by: Andreas Färber
---
tcg/aarch64/tcg-target.c | 27 ++++++++++++++++++++-------
1 file changed, 20 insertions(+), 7 deletions(-)
diff --git a/tcg/aarch64/tcg-target.c b/tcg/aarch64/tcg-target.c
index b7ec4f5..354c89d 100644
--- a/tcg/aarch64/tcg-target.c
+++ b/tcg/aarch64/tcg-target.c
@@ -56,6 +56,11 @@ static const int tcg_target_call_oarg_regs[1] = {
#define TCG_REG_TMP TCG_REG_X30
#ifndef CONFIG_SOFTMMU
+/* Note that XZR cannot be encoded in the address base register slot,
+ as that actaully encodes SP. So if we need to zero-extend the guest
+ address, via the address index register slot, we need to load even
+ a zero guest base into a register. */
+# define USE_GUEST_BASE (GUEST_BASE != 0 || TARGET_LONG_BITS == 32)
# ifdef CONFIG_USE_GUEST_BASE
# define TCG_REG_GUEST_BASE TCG_REG_X28
# else
@@ -1216,9 +1221,13 @@ static void tcg_out_qemu_ld(TCGContext *s, TCGReg data_reg, TCGReg addr_reg,
add_qemu_ldst_label(s, true, oi, ext, data_reg, addr_reg,
s->code_ptr, label_ptr);
#else /* !CONFIG_SOFTMMU */
- tcg_out_qemu_ld_direct(s, memop, ext, data_reg,
- GUEST_BASE ? TCG_REG_GUEST_BASE : TCG_REG_XZR,
- otype, addr_reg);
+ if (USE_GUEST_BASE) {
+ tcg_out_qemu_ld_direct(s, memop, ext, data_reg,
+ TCG_REG_GUEST_BASE, otype, addr_reg);
+ } else {
+ tcg_out_qemu_ld_direct(s, memop, ext, data_reg,
+ addr_reg, TCG_TYPE_I64, TCG_REG_XZR);
+ }
#endif /* CONFIG_SOFTMMU */
}
@@ -1238,9 +1247,13 @@ static void tcg_out_qemu_st(TCGContext *s, TCGReg data_reg, TCGReg addr_reg,
add_qemu_ldst_label(s, false, oi, s_bits == MO_64, data_reg, addr_reg,
s->code_ptr, label_ptr);
#else /* !CONFIG_SOFTMMU */
- tcg_out_qemu_st_direct(s, memop, data_reg,
- GUEST_BASE ? TCG_REG_GUEST_BASE : TCG_REG_XZR,
- otype, addr_reg);
+ if (USE_GUEST_BASE) {
+ tcg_out_qemu_st_direct(s, memop, data_reg,
+ TCG_REG_GUEST_BASE, otype, addr_reg);
+ } else {
+ tcg_out_qemu_st_direct(s, memop, data_reg,
+ addr_reg, TCG_TYPE_I64, TCG_REG_XZR);
+ }
#endif /* CONFIG_SOFTMMU */
}
@@ -1795,7 +1808,7 @@ static void tcg_target_qemu_prologue(TCGContext *s)
CPU_TEMP_BUF_NLONGS * sizeof(long));
#if defined(CONFIG_USE_GUEST_BASE)
- if (GUEST_BASE) {
+ if (USE_GUEST_BASE) {
tcg_out_movi(s, TCG_TYPE_PTR, TCG_REG_GUEST_BASE, GUEST_BASE);
tcg_regset_set_reg(s->reserved_regs, TCG_REG_GUEST_BASE);
}
++++++ 0039-tests-Unique-test-path-for-string-v.patch ++++++
From b3d605bbbebdfff36843fb785f4db3e633f96892 Mon Sep 17 00:00:00 2001
From: "Dr. David Alan Gilbert"
Date: Mon, 5 Oct 2015 12:04:20 +0100
Subject: [PATCH] tests: Unique test path for /string-visitor/output
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Newer GLib's want unique test paths, and thus moan at dupes.
(Seen on Fedora 23 which has glib 2.46)
Uniqueify the paths.
Signed-off-by: Dr. David Alan Gilbert
Signed-off-by: Andreas Färber
---
tests/test-string-output-visitor.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/tests/test-string-output-visitor.c b/tests/test-string-output-visitor.c
index 101fb27..fd5e67b 100644
--- a/tests/test-string-output-visitor.c
+++ b/tests/test-string-output-visitor.c
@@ -248,39 +248,39 @@ int main(int argc, char **argv)
output_visitor_test_add("/string-visitor/output/int",
&out_visitor_data, test_visitor_out_int, false);
- output_visitor_test_add("/string-visitor/output/int",
+ output_visitor_test_add("/string-visitor/output/int-human",
&out_visitor_data, test_visitor_out_int, true);
output_visitor_test_add("/string-visitor/output/bool",
&out_visitor_data, test_visitor_out_bool, false);
- output_visitor_test_add("/string-visitor/output/bool",
+ output_visitor_test_add("/string-visitor/output/bool-human",
&out_visitor_data, test_visitor_out_bool, true);
output_visitor_test_add("/string-visitor/output/number",
&out_visitor_data, test_visitor_out_number, false);
- output_visitor_test_add("/string-visitor/output/number",
+ output_visitor_test_add("/string-visitor/output/number-human",
&out_visitor_data, test_visitor_out_number, true);
output_visitor_test_add("/string-visitor/output/string",
&out_visitor_data, test_visitor_out_string, false);
- output_visitor_test_add("/string-visitor/output/string",
+ output_visitor_test_add("/string-visitor/output/string-human",
&out_visitor_data, test_visitor_out_string, true);
output_visitor_test_add("/string-visitor/output/no-string",
&out_visitor_data, test_visitor_out_no_string,
false);
- output_visitor_test_add("/string-visitor/output/no-string",
+ output_visitor_test_add("/string-visitor/output/no-string-human",
&out_visitor_data, test_visitor_out_no_string,
true);
output_visitor_test_add("/string-visitor/output/enum",
&out_visitor_data, test_visitor_out_enum, false);
- output_visitor_test_add("/string-visitor/output/enum",
+ output_visitor_test_add("/string-visitor/output/enum-human",
&out_visitor_data, test_visitor_out_enum, true);
output_visitor_test_add("/string-visitor/output/enum-errors",
&out_visitor_data, test_visitor_out_enum_errors,
false);
- output_visitor_test_add("/string-visitor/output/enum-errors",
+ output_visitor_test_add("/string-visitor/output/enum-errors-human",
&out_visitor_data, test_visitor_out_enum_errors,
true);
output_visitor_test_add("/string-visitor/output/intList",
&out_visitor_data, test_visitor_out_intList, false);
- output_visitor_test_add("/string-visitor/output/intList",
+ output_visitor_test_add("/string-visitor/output/intList-human",
&out_visitor_data, test_visitor_out_intList, true);
g_test_run();
++++++ 0040-dictzip-Fix-on-big-endian-systems.patch ++++++
From 6daa5dc051e04f528bbe15cb7231a05cf92a072c Mon Sep 17 00:00:00 2001
From: Alexander Graf
Date: Mon, 15 Jun 2015 17:36:32 +0200
Subject: [PATCH] dictzip: Fix on big endian systems
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The dictzip code in SLE11 received some treatment over time to support
running on big endian hosts. Somewhere in the transition to SLE12 this
support got lost. Add it back in again from the SLE11 code base.
Furthermore while at it, fix up the debug prints to not emit warnings.
[AG: BSC#937572]
Signed-off-by: Alexander Graf
Signed-off-by: Andreas Färber
---
block/dictzip.c | 50 ++++++++++++++++++++++++++++----------------------
1 file changed, 28 insertions(+), 22 deletions(-)
diff --git a/block/dictzip.c b/block/dictzip.c
index 1824971..71ffe7b 100644
--- a/block/dictzip.c
+++ b/block/dictzip.c
@@ -154,6 +154,7 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
uint8_t header_flags;
uint16_t chunk_len16;
uint16_t chunk_cnt16;
+ uint32_t chunk_len32;
uint16_t header_ver;
uint16_t tmp_short;
uint64_t offset;
@@ -253,11 +254,11 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
break;
case 99: /* Special Alex pigz version */
/* number of chunks */
- if (bdrv_pread(s->hd, GZ_99_CHUNKSIZE, &s->chunk_len, 4) != 4)
+ if (bdrv_pread(s->hd, GZ_99_CHUNKSIZE, &chunk_len32, 4) != 4)
goto fail;
- dprintf("chunk len [%#x] = %d\n", GZ_99_CHUNKSIZE, s->chunk_len);
- s->chunk_len = le32_to_cpu(s->chunk_len);
+ dprintf("chunk len [%#x] = %d\n", GZ_99_CHUNKSIZE, chunk_len32);
+ s->chunk_len = le32_to_cpu(chunk_len32);
/* chunk count */
if (bdrv_pread(s->hd, GZ_99_CHUNKCNT, &s->chunk_cnt, 4) != 4)
@@ -265,7 +266,7 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
s->chunk_cnt = le32_to_cpu(s->chunk_cnt);
- dprintf("chunk len | count = %d | %d\n", s->chunk_len, s->chunk_cnt);
+ dprintf("chunk len | count = %"PRId64" | %d\n", s->chunk_len, s->chunk_cnt);
/* file size */
if (bdrv_pread(s->hd, GZ_99_FILESIZE, &s->file_len, 8) != 8)
@@ -336,14 +337,14 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
s->offsets[i] = offset;
switch (header_ver) {
case 1:
- offset += s->chunks[i];
+ offset += le16_to_cpu(s->chunks[i]);
break;
case 99:
- offset += s->chunks32[i];
+ offset += le32_to_cpu(s->chunks32[i]);
break;
}
- dprintf("chunk %#x - %#x = offset %#x -> %#x\n", i * s->chunk_len, (i+1) * s->chunk_len, s->offsets[i], offset);
+ dprintf("chunk %#"PRIx64" - %#"PRIx64" = offset %#"PRIx64" -> %#"PRIx64"\n", i * s->chunk_len, (i+1) * s->chunk_len, s->offsets[i], offset);
}
qemu_opts_del(opts);
@@ -377,10 +378,26 @@ static void dictzip_read_cb(void *opaque, int ret)
struct BDRVDictZipState *s = acb->s;
uint8_t *buf;
DictCache *cache;
- int r;
+ int r, i;
buf = g_malloc(acb->chunks_len);
+ /* try to find zlib stream for decoding */
+ do {
+ for (i = 0; i < Z_STREAM_COUNT; i++) {
+ if (!(s->stream_in_use & (1 << i))) {
+ s->stream_in_use |= (1 << i);
+ acb->zStream_id = i;
+ acb->zStream = &s->zStream[i];
+ break;
+ }
+ }
+ } while(!acb->zStream);
+
+ /* sure, we could handle more streams, but this callback should be single
+ threaded and when it's not, we really want to know! */
+ assert(i == 0);
+
/* uncompress the chunk */
acb->zStream->next_in = acb->gzipped;
acb->zStream->avail_in = acb->gz_len;
@@ -466,17 +483,6 @@ static BlockAIOCB *dictzip_aio_readv(BlockDriverState *bs,
}
/* No cache, so let's decode */
- do {
- for (i = 0; i < Z_STREAM_COUNT; i++) {
- if (!(s->stream_in_use & (1 << i))) {
- s->stream_in_use |= (1 << i);
- acb->zStream_id = i;
- acb->zStream = &s->zStream[i];
- break;
- }
- }
- } while(!acb->zStream);
-
/* We need to read these chunks */
first_chunk = start / s->chunk_len;
first_offset = start - first_chunk * s->chunk_len;
@@ -486,9 +492,9 @@ static BlockAIOCB *dictzip_aio_readv(BlockDriverState *bs,
gz_len = 0;
for (i = first_chunk; i <= last_chunk; i++) {
if (s->chunks32)
- gz_len += s->chunks32[i];
+ gz_len += le32_to_cpu(s->chunks32[i]);
else
- gz_len += s->chunks[i];
+ gz_len += le16_to_cpu(s->chunks[i]);
}
gz_sector_num = gz_start / SECTOR_SIZE;
@@ -509,7 +515,7 @@ static BlockAIOCB *dictzip_aio_readv(BlockDriverState *bs,
iov->iov_len = gz_nb_sectors * 512;
qemu_iovec_init_external(qiov_gz, iov, 1);
- dprintf("read %d - %d => %d - %d\n", start, end, gz_start, gz_start + gz_len);
+ dprintf("read %zd - %zd => %zd - %zd\n", start, end, gz_start, gz_start + gz_len);
acb->s = s;
acb->qiov = qiov;
++++++ 80-qemu-ga.rules ++++++
SUBSYSTEM=="virtio-ports", ATTR{name}=="org.qemu.guest_agent.0", TAG+="systemd", ENV{SYSTEMD_WANTS}+="qemu-ga.service"
++++++ SLOF_ppc64le.patch ++++++
From 14f14004dd8f7a9be63510284c10445c7a8be5d7 Mon Sep 17 00:00:00 2001
From: Dinar Valeev
Date: Fri, 9 Oct 2015 13:01:12 +0200
Subject: [PATCH] Allow to build SLOF on Little Endian host
Don't require cross compiler in order to build SLOF on ppc64le platform.
Native compiler is capable to build ELFv1 BE binary. We just need to
instruct it how to do it. By adding -mbig and -mabi=elfv1 flags
Signed-off-by: Dinar Valeev
Signed-off-by: Alexey Kardashevskiy
---
make.rules | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/make.rules b/make.rules
index aebc4e3..cbc6353 100644
--- a/make.rules
+++ b/make.rules
@@ -19,8 +19,12 @@
ARCH := $(shell uname -p)
# Auto-detect ppc64
-ifeq ($(ARCH), ppc64)
-CROSS = ""
+ifeq (ppc64,$(findstring ppc64,$(ARCH)))
+ ifeq ($(ARCH), ppc64le)
+ EXTRA_CC = -mbig -mabi=elfv1
+ EXTRA_LD = -mbig
+ endif
+CROSS ?=
else
CROSS ?= powerpc64-linux-
endif
@@ -31,8 +35,8 @@ HOSTCC ?= gcc
HOSTCFLAGS = -g -Wall -W -O2 -I. -I../include
DD = dd
-ONLY_CC = $(CROSS)gcc -m$(CELLSIZE)
-ONLY_AS = $(CROSS)as -m$(CELLSIZE)
+ONLY_CC = $(CROSS)gcc -m$(CELLSIZE) $(EXTRA_CC)
+ONLY_AS = $(CROSS)as -m$(CELLSIZE) $(EXTRA_LD)
ONLY_LD = $(CROSS)ld -melf$(CELLSIZE)ppc
# Verbose level:
--
2.1.4
++++++ _constraints ++++++
<constraints>
<overwrite>
<conditions>
<package>qemu-testsuite</package>
</conditions>
<hardware>
<physicalmemory>
<size unit="M">1500</size>
</physicalmemory>
</hardware>
</overwrite>
</constraints>
++++++ libcacard.spec.in ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -23,7 +23,7 @@
Group: System/Emulators/PC
QEMU_VERSION
Release: 0
-Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
+Source: http://wiki.qemu.org/download/qemu-2.4.0.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
PATCH_FILES
# Please do not add patches manually here, run update_git.sh.
@@ -84,7 +84,7 @@
This sub-package contains development files for the Smartcard library.
%prep
-%setup -q -n qemu-2.3.0
+%setup -q -n qemu-2.4.0
PATCH_EXEC
%build
++++++ qemu-2.3.0.tar.bz2 -> qemu-2.4.0.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/qemu/qemu-2.3.0.tar.bz2 /work/SRC/openSUSE:Factory/.qemu.new/qemu-2.4.0.tar.bz2 differ: char 11, line 1
++++++ qemu-ga.service ++++++
[Unit]
Description=QEMU Guest Agent
Documentation=http://wiki.qemu.org/Features/QAPI/GuestAgent
BindsTo=dev-virtio\x2dports-org.qemu.guest_agent.0.device
After=dev-virtio\x2dports-org.qemu.guest_agent.0.device
[Service]
Type=simple
ExecStart=-/usr/bin/qemu-ga
Restart=always
RestartSec=0
++++++ qemu-linux-user.spec.in ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -23,7 +23,7 @@
Group: System/Emulators/PC
QEMU_VERSION
Release: 0
-Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
+Source: http://wiki.qemu.org/download/qemu-2.4.0.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
PATCH_FILES
# Please do not add patches manually here, run update_git.sh.
@@ -78,7 +78,7 @@
run cross-architecture builds.
%prep
-%setup -q -n qemu-2.3.0
+%setup -q -n qemu-2.4.0
PATCH_EXEC
%build
++++++ qemu.spec.in ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -16,17 +16,25 @@
#
+%define build_x86_fw_from_source 0
+%define build_slof_from_source 0
%ifarch %ix86 x86_64
# choice of building all from source or using provided binary x86 blobs
%if 0%{?suse_version} >= 1310
%define build_x86_fw_from_source 1
-%else
-%define build_x86_fw_from_source 0
%endif
-%else
-%define build_x86_fw_from_source 0
%endif
-%ifarch %ix86 x86_64 ppc ppc64 ppc64le s390x %arm aarch64
+%ifarch ppc64
+%define build_slof_from_source 1
+%endif
+%ifarch ppc64le
+# Needs a compatible gcc (bsc#949000)
+# TODO: include 1315 for SLE12 once possible
+%if 0%{?suse_version} > 1320
+%define build_slof_from_source 1
+%endif
+%endif
+%ifarch %ix86 x86_64 ppc ppc64 ppc64le s390x armv7hl aarch64
%define kvm_available 1
%else
%define kvm_available 0
@@ -45,8 +53,8 @@
Group: System/Emulators/PC
QEMU_VERSION
Release: 0
-Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
-Source99: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2.sig
+Source: http://wiki.qemu.org/download/qemu-2.4.0.tar.bz2
+Source99: http://wiki.qemu.org/download/qemu-2.4.0.tar.bz2.sig
Source1: 80-kvm.rules
Source2: qemu-ifup
Source3: kvm_stat
@@ -54,6 +62,8 @@
Source5: 60-kvm.rules
Source6: ksm.service
Source7: 60-kvm.x86.rules
+Source8: 80-qemu-ga.rules
+Source9: qemu-ga.service
# Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
PATCH_FILES
@@ -70,6 +80,7 @@
%endif
Patch1100: gcc5-ipxe-add-missing-const-qualifiers.patch
Patch1101: gcc5-ipxe-ath9k-Remove-confusing-logic-inversion-in-an-ANI-var.patch
+Patch2000: SLOF_ppc64le.patch
# this is to make lint happy
Source300: qemu-rpmlintrc
@@ -218,6 +229,7 @@
%else
Suggests: qemu-arm
%endif
+Suggests: qemu-block-dmg
Suggests: qemu-extra
Suggests: qemu-lang
%if 0%{?suse_version} >= 1210
@@ -226,9 +238,9 @@
%define built_firmware_files {acpi-dsdt.aml bios.bin bios-256k.bin \
q35-acpi-dsdt.aml sgabios.bin vgabios.bin vgabios-cirrus.bin \
-vgabios-stdvga.bin vgabios-vmware.bin vgabios-qxl.bin optionrom/linuxboot.bin \
-optionrom/multiboot.bin optionrom/kvmvapic.bin pxe-e1000.rom pxe-pcnet.rom \
-pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
+vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
+optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
+pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
%description
QEMU is an extremely well-performing CPU emulator that allows you to
@@ -377,6 +389,21 @@
This sub-package contains a module for accessing network-based image files
over a network connection from qemu-img tool and QEMU system emulation.
+%package block-dmg
+Summary: Universal CPU emulator -- DMG block support
+Group: System/Emulators/PC
+%{qemu_module_conflicts}
+
+%description block-dmg
+QEMU is an extremely well-performing CPU emulator that allows you to
+choose between simulating an entire system and running userspace
+binaries for different architectures under your native operating
+system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well
+as PC and PowerMac systems.
+
+This sub-package contains a module for accessing Mac OS X image files
+from qemu-img tool and QEMU system emulation.
+
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%package block-gluster
Summary: Universal CPU emulator -- GlusterFS block support
@@ -433,6 +460,9 @@
Summary: Universal CPU emulator -- Guest agent
Group: System/Emulators/PC
Provides: qemu:%_bindir/qemu-ga
+%if 0%{?with_systemd}
+%{?systemd_requires}
+%endif
%description guest-agent
QEMU is an extremely well-performing CPU emulator that allows you to
@@ -518,7 +548,7 @@
%endif # !qemu-testsuite
%prep
-%setup -q -n qemu-2.3.0
+%setup -q -n qemu-2.4.0
PATCH_EXEC
%if %{build_x86_fw_from_source}
@@ -540,6 +570,13 @@
%patch1101 -p1
popd
+%if %{build_slof_from_source}
+pushd roms/SLOF
+%patch2000 -p1
+popd
+rm -f pc-bios/slof.bin
+%endif
+
%build
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
--libdir=%_libdir \
@@ -610,11 +647,6 @@
--enable-numa \
%endif
%endif
-%if 0%{?suse_version} >= 1310
- --enable-quorum \
-%else
- --disable-quorum \
-%endif
--disable-rbd \
%if 0%{?suse_version} >= 1315
--enable-rdma \
@@ -664,7 +696,6 @@
--enable-vnc-png \
--enable-vnc-sasl \
--enable-vnc-tls \
- --enable-vnc-ws \
%ifarch x86_64
--enable-xen \
--enable-xen-pci-passthrough \
@@ -683,26 +714,37 @@
make -C roms pxerom
make -C roms sgabios
%endif
+%if %{build_slof_from_source}
+make -C roms slof
+%endif
%ifarch s390x
cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img
%endif
%else # qemu-testsuite
+
+ln -s %{_bindir}/qemu-img qemu-img
+
for conf in default-configs/*-softmmu.mak; do
arch=`echo "$conf" | sed -e 's|default-configs/\(.*\)-softmmu.mak|\1|g'`
ln -s %{_bindir}/qemu-system-$arch $arch-softmmu/qemu-system-$arch
done
-%endif
-%check
-%if "%{name}" == "qemu-testsuite"
+# Compile the QOM test binary first, so that ...
+make tests/qom-test %{?_smp_mflags} V=1
+# ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379)
%if 0%{?suse_version} >= 1310
make check-report.html V=1
install -D -m 644 check-report.html %{buildroot}%{_datadir}/qemu/check-report.html
%else
make check-report.xml V=1
%endif
-install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml
+
+%endif
+
+%check
+%if "%{name}" == "qemu-testsuite"
+
%ifnarch %ix86 x64_64
export QEMU_PROG=%{_bindir}/qemu-system-x86_64
%endif
@@ -718,10 +760,25 @@
# ./check -v -T $fmt -file -g quick || true
#done
popd
-%endif
+
+# Create minimal gzip format file
+echo "Test" > test.txt
+cat test.txt | gzip - > test.gz
+# Check qemu-img info output (bsc#945778)
+format=`qemu-img info test.gz | grep "file format:" | cut -d ':' -f 2 | tr -d '[:space:]'`
+[ "$format" == "raw" ] || false
+
+# Create minimal tar format file
+tar cf test.tar test.txt
+# Check qemu-img info output (bsc#945778)
+format=`qemu-img info test.tar | grep "file format:" | cut -d ':' -f 2 | tr -d '[:space:]'`
+[ "$format" == "raw" ] || false
+
+%endif # qemu-testsuite
%install
%if "%{name}" != "qemu-testsuite"
+
make install DESTDIR=$RPM_BUILD_ROOT
rm -fr $RPM_BUILD_ROOT/%_datadir/doc
rm $RPM_BUILD_ROOT/%_libdir/libcacard*
@@ -729,7 +786,8 @@
rm -fr $RPM_BUILD_ROOT/%_prefix/include/cacard
%if ! %{build_x86_fw_from_source}
for f in acpi-dsdt.aml q35-acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
- vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-vmware.bin vgabios.bin; do
+ vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
+ vgabios.bin; do
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
done
%endif
@@ -761,8 +819,20 @@
%endif
%endif
%endif
+install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules
+%if 0%{?with_systemd}
install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/ksm.service
+install -D -p -m 0644 %{SOURCE9} %{buildroot}%{_unitdir}/qemu-ga.service
+%endif
%fdupes -s $RPM_BUILD_ROOT
+
+%else # qemu-testsuite
+
+%if 0%{?suse_version} >= 1310
+install -D -m 644 check-report.html %{buildroot}%{_datadir}/qemu/check-report.html
+%endif
+install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml
+
%endif
%if "%{name}" != "qemu-testsuite"
@@ -774,8 +844,6 @@
%{_sbindir}/useradd -r -g qemu -G kvm -d / -s /sbin/nologin \
-c "qemu user" qemu
-%pre guest-agent
-%{_bindir}/getent group kvm >/dev/null || %{_sbindir}/groupadd -r kvm 2>/dev/null
%if %{kvm_available}
%post
@@ -797,7 +865,24 @@
%verify_permissions %_libexecdir/qemu-bridge-helper
%endif
+%pre guest-agent
+%{_bindir}/getent group kvm >/dev/null || %{_sbindir}/groupadd -r kvm 2>/dev/null
%if 0%{?with_systemd}
+%service_add_pre qemu-ga.service
+
+%preun guest-agent
+%service_del_preun qemu-ga.service
+
+%post guest-agent
+if [ "$(readlink -f /proc/1/root)" = "/" ]; then
+ /sbin/udevadm control --reload-rules || :
+ /sbin/udevadm trigger || :
+fi
+%service_add_post qemu-ga.service
+
+%postun guest-agent
+%service_del_postun qemu-ga.service
+
%pre ksm
%service_add_pre ksm.service
@@ -840,7 +925,6 @@
%_datadir/%name/kvmvapic.bin
%_datadir/%name/linuxboot.bin
%_datadir/%name/multiboot.bin
-%config %_sysconfdir/%name/target-x86_64.conf
%files ppc
%defattr(-, root, root)
@@ -908,6 +992,10 @@
%defattr(-, root, root)
%_libdir/%name/block-curl.so
+%files block-dmg
+%defattr(-, root, root)
+%_libdir/%name/block-dmg.so
+
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%files block-gluster
%defattr(-, root, root)
@@ -937,6 +1025,7 @@
%_datadir/%name/vgabios-cirrus.bin
%_datadir/%name/vgabios-qxl.bin
%_datadir/%name/vgabios-stdvga.bin
+%_datadir/%name/vgabios-virtio.bin
%_datadir/%name/vgabios-vmware.bin
%files sgabios
@@ -977,6 +1066,10 @@
%files guest-agent
%defattr(-, root, root)
%attr(755,root,kvm) %_bindir/qemu-ga
+%if 0%{?with_systemd}
+%{_unitdir}/qemu-ga.service
+%endif
+%{_udevrulesdir}/80-qemu-ga.rules
%if 0%{?with_systemd}
%files ksm
++++++ update_git.sh ++++++
--- /var/tmp/diff_new_pack.sPnIfA/_old 2015-12-18 21:52:07.000000000 +0100
+++ /var/tmp/diff_new_pack.sPnIfA/_new 2015-12-18 21:52:07.000000000 +0100
@@ -11,8 +11,8 @@
GIT_TREE=git://github.com/openSUSE/qemu.git
GIT_LOCAL_TREE=~/git/qemu-opensuse
-GIT_BRANCH=opensuse-2.3
-GIT_UPSTREAM_TAG=v2.3.0
+GIT_BRANCH=opensuse-2.4
+GIT_UPSTREAM_TAG=v2.4.0
GIT_DIR=/dev/shm/qemu-factory-git-dir
CMP_DIR=/dev/shm/qemu-factory-cmp-dir
@@ -150,3 +150,5 @@
osc service localrun format_spec_file
/bin/sh pre_checkin.sh -q
+
+echo "Please remember to run pre_checkin.sh after modifying qemu.changes."