Accepting request 537250 from Virtualization
Add a few security fixes, update sle support doc, provide migration analysis scripts, build more firmware (skiboot), and enable glusterfs support on more targets. OBS-URL: https://build.opensuse.org/request/show/537250 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/qemu?expand=0&rev=130
This commit is contained in:
commit
8baeda7569
77
0040-io-monitor-encoutput-buffer-size-fr.patch
Normal file
77
0040-io-monitor-encoutput-buffer-size-fr.patch
Normal file
@ -0,0 +1,77 @@
|
||||
From e0032c4d69b0c6b3eeeded2ab496db61c4632e46 Mon Sep 17 00:00:00 2001
|
||||
From: "Daniel P. Berrange" <berrange@redhat.com>
|
||||
Date: Wed, 18 Oct 2017 14:51:33 -0600
|
||||
Subject: [PATCH] io: monitor encoutput buffer size from websocket GSource
|
||||
|
||||
The websocket GSource is monitoring the size of the rawoutput
|
||||
buffer to determine if the channel can accepts more writes.
|
||||
The rawoutput buffer, however, is merely a temporary staging
|
||||
buffer before data is copied into the encoutput buffer. Thus
|
||||
its size will always be zero when the GSource runs.
|
||||
|
||||
This flaw causes the encoutput buffer to grow without bound
|
||||
if the other end of the underlying data channel doesn't
|
||||
read data being sent. This can be seen with VNC if a client
|
||||
is on a slow WAN link and the guest OS is sending many screen
|
||||
updates. A malicious VNC client can act like it is on a slow
|
||||
link by playing a video in the guest and then reading data
|
||||
very slowly, causing QEMU host memory to expand arbitrarily.
|
||||
|
||||
This issue is assigned CVE-2017-15268, publically reported in
|
||||
|
||||
https://bugs.launchpad.net/qemu/+bug/1718964
|
||||
|
||||
(cherry picked from commit a7b20a8efa28e5f22c26c06cd06c2f12bc863493)
|
||||
|
||||
Reviewed-by: Eric Blake <eblake@redhat.com>
|
||||
|
||||
[Dan: Added extra checks to deal with code refactored in master but
|
||||
not stable 2.10]
|
||||
|
||||
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
|
||||
[BR: BSC#1062942 CVE-2017-15268]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
io/channel-websock.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/io/channel-websock.c b/io/channel-websock.c
|
||||
index 5a3badbec2..19116dc148 100644
|
||||
--- a/io/channel-websock.c
|
||||
+++ b/io/channel-websock.c
|
||||
@@ -26,7 +26,7 @@
|
||||
#include "trace.h"
|
||||
|
||||
|
||||
-/* Max amount to allow in rawinput/rawoutput buffers */
|
||||
+/* Max amount to allow in rawinput/encoutput buffers */
|
||||
#define QIO_CHANNEL_WEBSOCK_MAX_BUFFER 8192
|
||||
|
||||
#define QIO_CHANNEL_WEBSOCK_CLIENT_KEY_LEN 24
|
||||
@@ -1006,7 +1006,7 @@ qio_channel_websock_source_prepare(GSource *source,
|
||||
if (wsource->wioc->rawinput.offset) {
|
||||
cond |= G_IO_IN;
|
||||
}
|
||||
- if (wsource->wioc->rawoutput.offset < QIO_CHANNEL_WEBSOCK_MAX_BUFFER) {
|
||||
+ if (wsource->wioc->encoutput.offset < QIO_CHANNEL_WEBSOCK_MAX_BUFFER) {
|
||||
cond |= G_IO_OUT;
|
||||
}
|
||||
|
||||
@@ -1022,7 +1022,7 @@ qio_channel_websock_source_check(GSource *source)
|
||||
if (wsource->wioc->rawinput.offset) {
|
||||
cond |= G_IO_IN;
|
||||
}
|
||||
- if (wsource->wioc->rawoutput.offset < QIO_CHANNEL_WEBSOCK_MAX_BUFFER) {
|
||||
+ if (wsource->wioc->encoutput.offset < QIO_CHANNEL_WEBSOCK_MAX_BUFFER) {
|
||||
cond |= G_IO_OUT;
|
||||
}
|
||||
|
||||
@@ -1041,7 +1041,7 @@ qio_channel_websock_source_dispatch(GSource *source,
|
||||
if (wsource->wioc->rawinput.offset) {
|
||||
cond |= G_IO_IN;
|
||||
}
|
||||
- if (wsource->wioc->rawoutput.offset < QIO_CHANNEL_WEBSOCK_MAX_BUFFER) {
|
||||
+ if (wsource->wioc->encoutput.offset < QIO_CHANNEL_WEBSOCK_MAX_BUFFER) {
|
||||
cond |= G_IO_OUT;
|
||||
}
|
||||
|
57
0041-cirrus-fix-oob-access-in-mode4and5-.patch
Normal file
57
0041-cirrus-fix-oob-access-in-mode4and5-.patch
Normal file
@ -0,0 +1,57 @@
|
||||
From f3c7b39cec549039b89fa1c6b2ab238b4bac1a97 Mon Sep 17 00:00:00 2001
|
||||
From: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Date: Wed, 18 Oct 2017 14:54:15 -0600
|
||||
Subject: [PATCH] cirrus: fix oob access in mode4and5 write functions
|
||||
|
||||
Move dst calculation into the loop, so we apply the mask on each
|
||||
interation and will not overflow vga memory.
|
||||
|
||||
Cc: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Reported-by: Niu Guoxiang <niuguoxiang@huawei.com>
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Message-id: 20171011084314.21752-1-kraxel@redhat.com
|
||||
[BR: BSC#1063122 CVE-2017-15289]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com
|
||||
---
|
||||
hw/display/cirrus_vga.c | 6 ++----
|
||||
1 file changed, 2 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/hw/display/cirrus_vga.c b/hw/display/cirrus_vga.c
|
||||
index afc290ab91..077a8cb74f 100644
|
||||
--- a/hw/display/cirrus_vga.c
|
||||
+++ b/hw/display/cirrus_vga.c
|
||||
@@ -2038,15 +2038,14 @@ static void cirrus_mem_writeb_mode4and5_8bpp(CirrusVGAState * s,
|
||||
unsigned val = mem_value;
|
||||
uint8_t *dst;
|
||||
|
||||
- dst = s->vga.vram_ptr + (offset &= s->cirrus_addr_mask);
|
||||
for (x = 0; x < 8; x++) {
|
||||
+ dst = s->vga.vram_ptr + ((offset + x) & s->cirrus_addr_mask);
|
||||
if (val & 0x80) {
|
||||
*dst = s->cirrus_shadow_gr1;
|
||||
} else if (mode == 5) {
|
||||
*dst = s->cirrus_shadow_gr0;
|
||||
}
|
||||
val <<= 1;
|
||||
- dst++;
|
||||
}
|
||||
memory_region_set_dirty(&s->vga.vram, offset, 8);
|
||||
}
|
||||
@@ -2060,8 +2059,8 @@ static void cirrus_mem_writeb_mode4and5_16bpp(CirrusVGAState * s,
|
||||
unsigned val = mem_value;
|
||||
uint8_t *dst;
|
||||
|
||||
- dst = s->vga.vram_ptr + (offset &= s->cirrus_addr_mask);
|
||||
for (x = 0; x < 8; x++) {
|
||||
+ dst = s->vga.vram_ptr + ((offset + 2 * x) & s->cirrus_addr_mask & ~1);
|
||||
if (val & 0x80) {
|
||||
*dst = s->cirrus_shadow_gr1;
|
||||
*(dst + 1) = s->vga.gr[0x11];
|
||||
@@ -2070,7 +2069,6 @@ static void cirrus_mem_writeb_mode4and5_16bpp(CirrusVGAState * s,
|
||||
*(dst + 1) = s->vga.gr[0x10];
|
||||
}
|
||||
val <<= 1;
|
||||
- dst += 2;
|
||||
}
|
||||
memory_region_set_dirty(&s->vga.vram, offset, 16);
|
||||
}
|
43
0042-9pfs-use-g_malloc0-to-allocate-spac.patch
Normal file
43
0042-9pfs-use-g_malloc0-to-allocate-spac.patch
Normal file
@ -0,0 +1,43 @@
|
||||
From 89a7eced18edb0d38a444abc1b367d241ae6cff8 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Mon, 16 Oct 2017 14:21:59 +0200
|
||||
Subject: [PATCH] 9pfs: use g_malloc0 to allocate space for xattr
|
||||
|
||||
9p back-end first queries the size of an extended attribute,
|
||||
allocates space for it via g_malloc() and then retrieves its
|
||||
value into allocated buffer. Race between querying attribute
|
||||
size and retrieving its could lead to memory bytes disclosure.
|
||||
Use g_malloc0() to avoid it.
|
||||
|
||||
Reported-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Signed-off-by: Greg Kurz <groug@kaod.org>
|
||||
(cherry picked from commit 7bd92756303f2158a68d5166264dc30139b813b6)
|
||||
[BR: BSC#1062069 CVE-2017-15038]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/9pfs/9p.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c
|
||||
index 8e9490c5f5..c41c0eb106 100644
|
||||
--- a/hw/9pfs/9p.c
|
||||
+++ b/hw/9pfs/9p.c
|
||||
@@ -3236,7 +3236,7 @@ static void coroutine_fn v9fs_xattrwalk(void *opaque)
|
||||
xattr_fidp->fid_type = P9_FID_XATTR;
|
||||
xattr_fidp->fs.xattr.xattrwalk_fid = true;
|
||||
if (size) {
|
||||
- xattr_fidp->fs.xattr.value = g_malloc(size);
|
||||
+ xattr_fidp->fs.xattr.value = g_malloc0(size);
|
||||
err = v9fs_co_llistxattr(pdu, &xattr_fidp->path,
|
||||
xattr_fidp->fs.xattr.value,
|
||||
xattr_fidp->fs.xattr.len);
|
||||
@@ -3269,7 +3269,7 @@ static void coroutine_fn v9fs_xattrwalk(void *opaque)
|
||||
xattr_fidp->fid_type = P9_FID_XATTR;
|
||||
xattr_fidp->fs.xattr.xattrwalk_fid = true;
|
||||
if (size) {
|
||||
- xattr_fidp->fs.xattr.value = g_malloc(size);
|
||||
+ xattr_fidp->fs.xattr.value = g_malloc0(size);
|
||||
err = v9fs_co_lgetxattr(pdu, &xattr_fidp->path,
|
||||
&name, xattr_fidp->fs.xattr.value,
|
||||
xattr_fidp->fs.xattr.len);
|
@ -1,3 +1,12 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 19 21:58:01 UTC 2017 - brogers@suse.com
|
||||
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.10
|
||||
* Patches added:
|
||||
0040-io-monitor-encoutput-buffer-size-fr.patch
|
||||
0041-cirrus-fix-oob-access-in-mode4and5-.patch
|
||||
0042-9pfs-use-g_malloc0-to-allocate-spac.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 3 21:07:30 UTC 2017 - brogers@suse.com
|
||||
|
||||
|
@ -65,6 +65,9 @@ Patch0036: 0036-io-fix-temp-directory-used-by-test-.patch
|
||||
Patch0037: 0037-io-fix-check-for-handshake-completi.patch
|
||||
Patch0038: 0038-crypto-fix-test-cert-generation-to-.patch
|
||||
Patch0039: 0039-vhost-user-disable-the-broken-subpr.patch
|
||||
Patch0040: 0040-io-monitor-encoutput-buffer-size-fr.patch
|
||||
Patch0041: 0041-cirrus-fix-oob-access-in-mode4and5-.patch
|
||||
Patch0042: 0042-9pfs-use-g_malloc0-to-allocate-spac.patch
|
||||
# Please do not add QEMU patches manually here.
|
||||
# Run update_git.sh to regenerate this queue.
|
||||
Source400: update_git.sh
|
||||
@ -157,6 +160,9 @@ run cross-architecture builds.
|
||||
%patch0037 -p1
|
||||
%patch0038 -p1
|
||||
%patch0039 -p1
|
||||
%patch0040 -p1
|
||||
%patch0041 -p1
|
||||
%patch0042 -p1
|
||||
|
||||
%build
|
||||
./configure \
|
||||
|
@ -1,3 +1,45 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 26 15:25:01 UTC 2017 - lyan@suse.com
|
||||
|
||||
- Wrap analyze-migration and vmstate-static-checker into tools from
|
||||
qemu scripts folder, also changed introduction of qemu-tools in
|
||||
spec file
|
||||
- Move supportplugin position in spec file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 19 21:57:57 UTC 2017 - brogers@suse.com
|
||||
|
||||
- Add announcement in support docs about qed storage format no
|
||||
longer being supported in next major SLE release (SLE15)
|
||||
(fate#324200)
|
||||
- Address various security/stability issues
|
||||
* Fix DoS in I/O channel websockets (CVE-2017-15268 bsc#1062942)
|
||||
0040-io-monitor-encoutput-buffer-size-fr.patch
|
||||
* Fix OOB access in cirrus vga device emulation (CVE-2017-15289
|
||||
bsc#1063122)
|
||||
0041-cirrus-fix-oob-access-in-mode4and5-.patch
|
||||
* Fix information leak in 9pfs interface (CVE-2017-15038 bsc#1062069)
|
||||
0042-9pfs-use-g_malloc0-to-allocate-spac.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.10
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 16 14:50:03 UTC 2017 - brogers@suse.com
|
||||
|
||||
- Don't tie glusterfs support to specific arch
|
||||
- Build skiboot firmware (OPAL), particularly since it's fairly
|
||||
easy to do so
|
||||
skiboot-GCC7-fixes-for-Wimplicit-fallthr.patch
|
||||
skiboot-libc-stdio-vsnprintf.c-add-expli.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 13 10:57:49 UTC 2017 - henrik.kuhn@origenis.de
|
||||
|
||||
- Added the global macro 'with_glusterfs' in order to re-enable
|
||||
glusterfs support. The macro enable easier future adjustments
|
||||
for various ARCH/targets/requiremnets.
|
||||
At first glusterfs support is enabled for openSUSE Leap 42.x and
|
||||
Factory for ARCH x86_64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 4 16:21:04 UTC 2017 - brogers@suse.com
|
||||
|
||||
|
@ -19,6 +19,7 @@
|
||||
%define noarch_supported 1110
|
||||
|
||||
%define build_x86_firmware_from_source 0
|
||||
%define build_skiboot_from_source 0
|
||||
%define build_slof_from_source 0
|
||||
%define kvm_available 0
|
||||
%define legacy_qemu_kvm 0
|
||||
@ -38,11 +39,13 @@
|
||||
%endif
|
||||
|
||||
%ifarch ppc64
|
||||
%define build_skiboot_from_source 1
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
|
||||
%ifarch ppc64le
|
||||
%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315
|
||||
%define build_skiboot_from_source 1
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
%endif
|
||||
@ -59,6 +62,10 @@
|
||||
%define with_systemd 1
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?is_opensuse} )
|
||||
%define with_glusterfs 1
|
||||
%endif
|
||||
|
||||
%ifarch x86_64
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} > 120100 ) )
|
||||
%define with_rbd 1
|
||||
@ -177,6 +184,9 @@ Patch0036: 0036-io-fix-temp-directory-used-by-test-.patch
|
||||
Patch0037: 0037-io-fix-check-for-handshake-completi.patch
|
||||
Patch0038: 0038-crypto-fix-test-cert-generation-to-.patch
|
||||
Patch0039: 0039-vhost-user-disable-the-broken-subpr.patch
|
||||
Patch0040: 0040-io-monitor-encoutput-buffer-size-fr.patch
|
||||
Patch0041: 0041-cirrus-fix-oob-access-in-mode4and5-.patch
|
||||
Patch0042: 0042-9pfs-use-g_malloc0-to-allocate-spac.patch
|
||||
# Please do not add QEMU patches manually here.
|
||||
# Run update_git.sh to regenerate this queue.
|
||||
|
||||
@ -193,6 +203,10 @@ Patch1200: sgabios-stable-buildid.patch
|
||||
|
||||
# SLOF (Currently no patches)
|
||||
|
||||
# skiboot
|
||||
Patch1400: skiboot-GCC7-fixes-for-Wimplicit-fallthr.patch
|
||||
Patch1401: skiboot-libc-stdio-vsnprintf.c-add-expli.patch
|
||||
|
||||
# this is to make lint happy
|
||||
Source300: qemu-rpmlintrc
|
||||
Source301: ipxe-stub-out-the-SAN-req-s-in-int13.patch
|
||||
@ -227,7 +241,7 @@ BuildRequires: gcc6
|
||||
%endif
|
||||
%endif
|
||||
BuildRequires: glib2-devel
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
BuildRequires: glusterfs-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1220
|
||||
@ -367,7 +381,7 @@ BuildRequires: qemu-ppc = %version
|
||||
BuildRequires: qemu-s390 = %version
|
||||
BuildRequires: qemu-tools = %version
|
||||
BuildRequires: qemu-x86 = %version
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
BuildRequires: qemu-block-gluster = %version
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
@ -413,7 +427,7 @@ Recommends: qemu-arm
|
||||
Suggests: qemu-arm
|
||||
%endif
|
||||
Suggests: qemu-block-dmg
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
Suggests: qemu-block-gluster
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
@ -431,10 +445,17 @@ Suggests: qemu-lang
|
||||
Recommends: qemu-ksm = %{version}
|
||||
%endif
|
||||
|
||||
%if %{build_slof_from_source}
|
||||
%define ppc_default_built_firmware {%nil}
|
||||
%if %{build_skiboot_from_source} && %{build_slof_from_source}
|
||||
%define ppc_extra_built_firmware {skiboot.lid slof.bin}
|
||||
%else
|
||||
%if %{build_skiboot_from_source}
|
||||
%define ppc_extra_built_firmware {skiboot.lid}
|
||||
%endif
|
||||
%if %{build_slof_from_source}
|
||||
%define ppc_extra_built_firmware {slof.bin}
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%ifarch ppc64
|
||||
%define ppc64_only_default_built_firmware {spapr-rtas.bin}
|
||||
@ -647,7 +668,7 @@ 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
|
||||
%if 0%{?with_glusterfs}
|
||||
%package block-gluster
|
||||
Summary: Universal CPU emulator -- GlusterFS block support
|
||||
Group: System/Emulators/PC
|
||||
@ -733,7 +754,8 @@ 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 various tools, including a bridge helper.
|
||||
This sub-package contains various tools, including a bridge helper,
|
||||
ivshmem, qemu disk tools and some scripts for different purposes.
|
||||
|
||||
%package guest-agent
|
||||
Summary: Universal CPU emulator -- Guest agent
|
||||
@ -869,6 +891,9 @@ This package provides a service file for starting and stopping KSM.
|
||||
%patch0037 -p1
|
||||
%patch0038 -p1
|
||||
%patch0039 -p1
|
||||
%patch0040 -p1
|
||||
%patch0041 -p1
|
||||
%patch0042 -p1
|
||||
|
||||
pushd roms/ipxe
|
||||
%patch1100 -p1
|
||||
@ -884,6 +909,11 @@ popd
|
||||
pushd roms/SLOF
|
||||
popd
|
||||
|
||||
pushd roms/skiboot
|
||||
%patch1400 -p1
|
||||
%patch1401 -p1
|
||||
popd
|
||||
|
||||
# as a safeguard, delete the firmware files that we intend to build
|
||||
for i in %built_firmware
|
||||
do
|
||||
@ -927,7 +957,7 @@ echo '%{version}' > roms/seabios/.version
|
||||
--enable-gcrypt \
|
||||
--disable-nettle \
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
--enable-glusterfs \
|
||||
%else
|
||||
--disable-glusterfs \
|
||||
@ -1132,6 +1162,10 @@ for i in %supported_nics_small
|
||||
done
|
||||
%endif
|
||||
|
||||
%if %{build_skiboot_from_source}
|
||||
make %{?_smp_mflags} -C roms skiboot SKIBOOT_VERSION=skiboot-5.3.7
|
||||
%endif
|
||||
|
||||
%if %{build_slof_from_source}
|
||||
make %{?_smp_mflags} -C roms slof
|
||||
%endif
|
||||
@ -1215,15 +1249,16 @@ done
|
||||
install -D -m 644 %{SOURCE302} %{buildroot}%{_sysconfdir}/qemu/bridge.conf
|
||||
install -D -m 755 %{SOURCE2} %{buildroot}/usr/share/qemu/qemu-ifup
|
||||
install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules
|
||||
install -D -m 755 scripts/analyze-migration.py %{buildroot}%{_bindir}/analyze-migration.py
|
||||
install -D -m 755 scripts/vmstate-static-checker.py %{buildroot}%{_bindir}/vmstate-static-checker.py
|
||||
mkdir -p %{buildroot}%{_libexecdir}/supportconfig/plugins
|
||||
install -D -m 0755 %{SOURCE16} %{buildroot}%{_libexecdir}/supportconfig/plugins/qemu
|
||||
%if 0%{?is_opensuse} == 0
|
||||
install -D -m 0644 %{SOURCE12} %{buildroot}%{_docdir}/qemu-x86/supported.txt
|
||||
install -D -m 0644 %{SOURCE13} %{buildroot}%{_docdir}/qemu-s390/supported.txt
|
||||
install -D -m 0644 %{SOURCE14} %{buildroot}%{_docdir}/qemu-arm/supported.txt
|
||||
install -D -m 0644 %{SOURCE15} %{buildroot}%{_docdir}/qemu-ppc/supported.txt
|
||||
%endif
|
||||
# install supportconfig plugin
|
||||
mkdir -p %{buildroot}%{_libexecdir}/supportconfig/plugins
|
||||
install -D -m 0755 %{SOURCE16} %{buildroot}%{_libexecdir}/supportconfig/plugins/qemu
|
||||
%if %{legacy_qemu_kvm}
|
||||
cat > %{buildroot}%{_bindir}/qemu-kvm << 'EOF'
|
||||
#!/bin/sh
|
||||
@ -1509,7 +1544,7 @@ fi
|
||||
%dir %_libdir/%name
|
||||
%_libdir/%name/block-dmg-bz2.so
|
||||
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
%files block-gluster
|
||||
%defattr(-, root, root)
|
||||
%dir %_libdir/%name
|
||||
@ -1597,6 +1632,8 @@ fi
|
||||
%verify(not mode) %attr(4750,root,kvm) %_libexecdir/qemu-bridge-helper
|
||||
%dir %_sysconfdir/%name
|
||||
%config %_sysconfdir/%name/bridge.conf
|
||||
%_bindir/analyze-migration.py
|
||||
%_bindir/vmstate-static-checker.py
|
||||
|
||||
%files guest-agent
|
||||
%defattr(-, root, root)
|
||||
|
42
qemu.changes
42
qemu.changes
@ -1,3 +1,45 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 26 15:25:01 UTC 2017 - lyan@suse.com
|
||||
|
||||
- Wrap analyze-migration and vmstate-static-checker into tools from
|
||||
qemu scripts folder, also changed introduction of qemu-tools in
|
||||
spec file
|
||||
- Move supportplugin position in spec file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Oct 19 21:57:57 UTC 2017 - brogers@suse.com
|
||||
|
||||
- Add announcement in support docs about qed storage format no
|
||||
longer being supported in next major SLE release (SLE15)
|
||||
(fate#324200)
|
||||
- Address various security/stability issues
|
||||
* Fix DoS in I/O channel websockets (CVE-2017-15268 bsc#1062942)
|
||||
0040-io-monitor-encoutput-buffer-size-fr.patch
|
||||
* Fix OOB access in cirrus vga device emulation (CVE-2017-15289
|
||||
bsc#1063122)
|
||||
0041-cirrus-fix-oob-access-in-mode4and5-.patch
|
||||
* Fix information leak in 9pfs interface (CVE-2017-15038 bsc#1062069)
|
||||
0042-9pfs-use-g_malloc0-to-allocate-spac.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.10
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 16 14:50:03 UTC 2017 - brogers@suse.com
|
||||
|
||||
- Don't tie glusterfs support to specific arch
|
||||
- Build skiboot firmware (OPAL), particularly since it's fairly
|
||||
easy to do so
|
||||
skiboot-GCC7-fixes-for-Wimplicit-fallthr.patch
|
||||
skiboot-libc-stdio-vsnprintf.c-add-expli.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 13 10:57:49 UTC 2017 - henrik.kuhn@origenis.de
|
||||
|
||||
- Added the global macro 'with_glusterfs' in order to re-enable
|
||||
glusterfs support. The macro enable easier future adjustments
|
||||
for various ARCH/targets/requiremnets.
|
||||
At first glusterfs support is enabled for openSUSE Leap 42.x and
|
||||
Factory for ARCH x86_64.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 4 16:21:04 UTC 2017 - brogers@suse.com
|
||||
|
||||
|
59
qemu.spec
59
qemu.spec
@ -19,6 +19,7 @@
|
||||
%define noarch_supported 1110
|
||||
|
||||
%define build_x86_firmware_from_source 0
|
||||
%define build_skiboot_from_source 0
|
||||
%define build_slof_from_source 0
|
||||
%define kvm_available 0
|
||||
%define legacy_qemu_kvm 0
|
||||
@ -38,11 +39,13 @@
|
||||
%endif
|
||||
|
||||
%ifarch ppc64
|
||||
%define build_skiboot_from_source 1
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
|
||||
%ifarch ppc64le
|
||||
%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315
|
||||
%define build_skiboot_from_source 1
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
%endif
|
||||
@ -59,6 +62,10 @@
|
||||
%define with_systemd 1
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?is_opensuse} )
|
||||
%define with_glusterfs 1
|
||||
%endif
|
||||
|
||||
%ifarch x86_64
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} > 120100 ) )
|
||||
%define with_rbd 1
|
||||
@ -177,6 +184,9 @@ Patch0036: 0036-io-fix-temp-directory-used-by-test-.patch
|
||||
Patch0037: 0037-io-fix-check-for-handshake-completi.patch
|
||||
Patch0038: 0038-crypto-fix-test-cert-generation-to-.patch
|
||||
Patch0039: 0039-vhost-user-disable-the-broken-subpr.patch
|
||||
Patch0040: 0040-io-monitor-encoutput-buffer-size-fr.patch
|
||||
Patch0041: 0041-cirrus-fix-oob-access-in-mode4and5-.patch
|
||||
Patch0042: 0042-9pfs-use-g_malloc0-to-allocate-spac.patch
|
||||
# Please do not add QEMU patches manually here.
|
||||
# Run update_git.sh to regenerate this queue.
|
||||
|
||||
@ -193,6 +203,10 @@ Patch1200: sgabios-stable-buildid.patch
|
||||
|
||||
# SLOF (Currently no patches)
|
||||
|
||||
# skiboot
|
||||
Patch1400: skiboot-GCC7-fixes-for-Wimplicit-fallthr.patch
|
||||
Patch1401: skiboot-libc-stdio-vsnprintf.c-add-expli.patch
|
||||
|
||||
# this is to make lint happy
|
||||
Source300: qemu-rpmlintrc
|
||||
Source301: ipxe-stub-out-the-SAN-req-s-in-int13.patch
|
||||
@ -227,7 +241,7 @@ BuildRequires: gcc6
|
||||
%endif
|
||||
%endif
|
||||
BuildRequires: glib2-devel
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
BuildRequires: glusterfs-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1220
|
||||
@ -367,7 +381,7 @@ BuildRequires: qemu-ppc = %version
|
||||
BuildRequires: qemu-s390 = %version
|
||||
BuildRequires: qemu-tools = %version
|
||||
BuildRequires: qemu-x86 = %version
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
BuildRequires: qemu-block-gluster = %version
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
@ -413,7 +427,7 @@ Recommends: qemu-arm
|
||||
Suggests: qemu-arm
|
||||
%endif
|
||||
Suggests: qemu-block-dmg
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
Suggests: qemu-block-gluster
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
@ -431,10 +445,17 @@ Suggests: qemu-lang
|
||||
Recommends: qemu-ksm = %{version}
|
||||
%endif
|
||||
|
||||
%if %{build_slof_from_source}
|
||||
%define ppc_default_built_firmware {%nil}
|
||||
%if %{build_skiboot_from_source} && %{build_slof_from_source}
|
||||
%define ppc_extra_built_firmware {skiboot.lid slof.bin}
|
||||
%else
|
||||
%if %{build_skiboot_from_source}
|
||||
%define ppc_extra_built_firmware {skiboot.lid}
|
||||
%endif
|
||||
%if %{build_slof_from_source}
|
||||
%define ppc_extra_built_firmware {slof.bin}
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%ifarch ppc64
|
||||
%define ppc64_only_default_built_firmware {spapr-rtas.bin}
|
||||
@ -647,7 +668,7 @@ 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
|
||||
%if 0%{?with_glusterfs}
|
||||
%package block-gluster
|
||||
Summary: Universal CPU emulator -- GlusterFS block support
|
||||
Group: System/Emulators/PC
|
||||
@ -733,7 +754,8 @@ 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 various tools, including a bridge helper.
|
||||
This sub-package contains various tools, including a bridge helper,
|
||||
ivshmem, qemu disk tools and some scripts for different purposes.
|
||||
|
||||
%package guest-agent
|
||||
Summary: Universal CPU emulator -- Guest agent
|
||||
@ -869,6 +891,9 @@ This package provides a service file for starting and stopping KSM.
|
||||
%patch0037 -p1
|
||||
%patch0038 -p1
|
||||
%patch0039 -p1
|
||||
%patch0040 -p1
|
||||
%patch0041 -p1
|
||||
%patch0042 -p1
|
||||
|
||||
pushd roms/ipxe
|
||||
%patch1100 -p1
|
||||
@ -884,6 +909,11 @@ popd
|
||||
pushd roms/SLOF
|
||||
popd
|
||||
|
||||
pushd roms/skiboot
|
||||
%patch1400 -p1
|
||||
%patch1401 -p1
|
||||
popd
|
||||
|
||||
# as a safeguard, delete the firmware files that we intend to build
|
||||
for i in %built_firmware
|
||||
do
|
||||
@ -927,7 +957,7 @@ echo '%{version}' > roms/seabios/.version
|
||||
--enable-gcrypt \
|
||||
--disable-nettle \
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
--enable-glusterfs \
|
||||
%else
|
||||
--disable-glusterfs \
|
||||
@ -1132,6 +1162,10 @@ for i in %supported_nics_small
|
||||
done
|
||||
%endif
|
||||
|
||||
%if %{build_skiboot_from_source}
|
||||
make %{?_smp_mflags} -C roms skiboot SKIBOOT_VERSION=skiboot-5.3.7
|
||||
%endif
|
||||
|
||||
%if %{build_slof_from_source}
|
||||
make %{?_smp_mflags} -C roms slof
|
||||
%endif
|
||||
@ -1215,15 +1249,16 @@ done
|
||||
install -D -m 644 %{SOURCE302} %{buildroot}%{_sysconfdir}/qemu/bridge.conf
|
||||
install -D -m 755 %{SOURCE2} %{buildroot}/usr/share/qemu/qemu-ifup
|
||||
install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules
|
||||
install -D -m 755 scripts/analyze-migration.py %{buildroot}%{_bindir}/analyze-migration.py
|
||||
install -D -m 755 scripts/vmstate-static-checker.py %{buildroot}%{_bindir}/vmstate-static-checker.py
|
||||
mkdir -p %{buildroot}%{_libexecdir}/supportconfig/plugins
|
||||
install -D -m 0755 %{SOURCE16} %{buildroot}%{_libexecdir}/supportconfig/plugins/qemu
|
||||
%if 0%{?is_opensuse} == 0
|
||||
install -D -m 0644 %{SOURCE12} %{buildroot}%{_docdir}/qemu-x86/supported.txt
|
||||
install -D -m 0644 %{SOURCE13} %{buildroot}%{_docdir}/qemu-s390/supported.txt
|
||||
install -D -m 0644 %{SOURCE14} %{buildroot}%{_docdir}/qemu-arm/supported.txt
|
||||
install -D -m 0644 %{SOURCE15} %{buildroot}%{_docdir}/qemu-ppc/supported.txt
|
||||
%endif
|
||||
# install supportconfig plugin
|
||||
mkdir -p %{buildroot}%{_libexecdir}/supportconfig/plugins
|
||||
install -D -m 0755 %{SOURCE16} %{buildroot}%{_libexecdir}/supportconfig/plugins/qemu
|
||||
%if %{legacy_qemu_kvm}
|
||||
cat > %{buildroot}%{_bindir}/qemu-kvm << 'EOF'
|
||||
#!/bin/sh
|
||||
@ -1509,7 +1544,7 @@ fi
|
||||
%dir %_libdir/%name
|
||||
%_libdir/%name/block-dmg-bz2.so
|
||||
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
%files block-gluster
|
||||
%defattr(-, root, root)
|
||||
%dir %_libdir/%name
|
||||
@ -1597,6 +1632,8 @@ fi
|
||||
%verify(not mode) %attr(4750,root,kvm) %_libexecdir/qemu-bridge-helper
|
||||
%dir %_sysconfdir/%name
|
||||
%config %_sysconfdir/%name/bridge.conf
|
||||
%_bindir/analyze-migration.py
|
||||
%_bindir/vmstate-static-checker.py
|
||||
|
||||
%files guest-agent
|
||||
%defattr(-, root, root)
|
||||
|
53
qemu.spec.in
53
qemu.spec.in
@ -19,6 +19,7 @@
|
||||
%define noarch_supported 1110
|
||||
|
||||
%define build_x86_firmware_from_source 0
|
||||
%define build_skiboot_from_source 0
|
||||
%define build_slof_from_source 0
|
||||
%define kvm_available 0
|
||||
%define legacy_qemu_kvm 0
|
||||
@ -38,11 +39,13 @@
|
||||
%endif
|
||||
|
||||
%ifarch ppc64
|
||||
%define build_skiboot_from_source 1
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
|
||||
%ifarch ppc64le
|
||||
%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315
|
||||
%define build_skiboot_from_source 1
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
%endif
|
||||
@ -59,6 +62,10 @@
|
||||
%define with_systemd 1
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?is_opensuse} )
|
||||
%define with_glusterfs 1
|
||||
%endif
|
||||
|
||||
%ifarch x86_64
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} > 120100 ) )
|
||||
%define with_rbd 1
|
||||
@ -155,6 +162,10 @@ Patch1200: sgabios-stable-buildid.patch
|
||||
|
||||
# SLOF (Currently no patches)
|
||||
|
||||
# skiboot
|
||||
Patch1400: skiboot-GCC7-fixes-for-Wimplicit-fallthr.patch
|
||||
Patch1401: skiboot-libc-stdio-vsnprintf.c-add-expli.patch
|
||||
|
||||
# this is to make lint happy
|
||||
Source300: qemu-rpmlintrc
|
||||
Source301: ipxe-stub-out-the-SAN-req-s-in-int13.patch
|
||||
@ -189,7 +200,7 @@ BuildRequires: gcc6
|
||||
%endif
|
||||
%endif
|
||||
BuildRequires: glib2-devel
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
BuildRequires: glusterfs-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1220
|
||||
@ -329,7 +340,7 @@ BuildRequires: qemu-ppc = %version
|
||||
BuildRequires: qemu-s390 = %version
|
||||
BuildRequires: qemu-tools = %version
|
||||
BuildRequires: qemu-x86 = %version
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
BuildRequires: qemu-block-gluster = %version
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
@ -375,7 +386,7 @@ Recommends: qemu-arm
|
||||
Suggests: qemu-arm
|
||||
%endif
|
||||
Suggests: qemu-block-dmg
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
Suggests: qemu-block-gluster
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
@ -393,10 +404,17 @@ Suggests: qemu-lang
|
||||
Recommends: qemu-ksm = %{version}
|
||||
%endif
|
||||
|
||||
%if %{build_slof_from_source}
|
||||
%define ppc_default_built_firmware {%nil}
|
||||
%if %{build_skiboot_from_source} && %{build_slof_from_source}
|
||||
%define ppc_extra_built_firmware {skiboot.lid slof.bin}
|
||||
%else
|
||||
%if %{build_skiboot_from_source}
|
||||
%define ppc_extra_built_firmware {skiboot.lid}
|
||||
%endif
|
||||
%if %{build_slof_from_source}
|
||||
%define ppc_extra_built_firmware {slof.bin}
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%ifarch ppc64
|
||||
%define ppc64_only_default_built_firmware {spapr-rtas.bin}
|
||||
@ -609,7 +627,7 @@ 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
|
||||
%if 0%{?with_glusterfs}
|
||||
%package block-gluster
|
||||
Summary: Universal CPU emulator -- GlusterFS block support
|
||||
Group: System/Emulators/PC
|
||||
@ -695,7 +713,8 @@ 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 various tools, including a bridge helper.
|
||||
This sub-package contains various tools, including a bridge helper,
|
||||
ivshmem, qemu disk tools and some scripts for different purposes.
|
||||
|
||||
%package guest-agent
|
||||
Summary: Universal CPU emulator -- Guest agent
|
||||
@ -808,6 +827,11 @@ popd
|
||||
pushd roms/SLOF
|
||||
popd
|
||||
|
||||
pushd roms/skiboot
|
||||
%patch1400 -p1
|
||||
%patch1401 -p1
|
||||
popd
|
||||
|
||||
# as a safeguard, delete the firmware files that we intend to build
|
||||
for i in %built_firmware
|
||||
do
|
||||
@ -851,7 +875,7 @@ echo '%{version}' > roms/seabios/.version
|
||||
--enable-gcrypt \
|
||||
--disable-nettle \
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
--enable-glusterfs \
|
||||
%else
|
||||
--disable-glusterfs \
|
||||
@ -1056,6 +1080,10 @@ for i in %supported_nics_small
|
||||
done
|
||||
%endif
|
||||
|
||||
%if %{build_skiboot_from_source}
|
||||
make %{?_smp_mflags} -C roms skiboot SKIBOOT_VERSION=skiboot-5.3.7
|
||||
%endif
|
||||
|
||||
%if %{build_slof_from_source}
|
||||
make %{?_smp_mflags} -C roms slof
|
||||
%endif
|
||||
@ -1139,15 +1167,16 @@ done
|
||||
install -D -m 644 %{SOURCE302} %{buildroot}%{_sysconfdir}/qemu/bridge.conf
|
||||
install -D -m 755 %{SOURCE2} %{buildroot}/usr/share/qemu/qemu-ifup
|
||||
install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules
|
||||
install -D -m 755 scripts/analyze-migration.py %{buildroot}%{_bindir}/analyze-migration.py
|
||||
install -D -m 755 scripts/vmstate-static-checker.py %{buildroot}%{_bindir}/vmstate-static-checker.py
|
||||
mkdir -p %{buildroot}%{_libexecdir}/supportconfig/plugins
|
||||
install -D -m 0755 %{SOURCE16} %{buildroot}%{_libexecdir}/supportconfig/plugins/qemu
|
||||
%if 0%{?is_opensuse} == 0
|
||||
install -D -m 0644 %{SOURCE12} %{buildroot}%{_docdir}/qemu-x86/supported.txt
|
||||
install -D -m 0644 %{SOURCE13} %{buildroot}%{_docdir}/qemu-s390/supported.txt
|
||||
install -D -m 0644 %{SOURCE14} %{buildroot}%{_docdir}/qemu-arm/supported.txt
|
||||
install -D -m 0644 %{SOURCE15} %{buildroot}%{_docdir}/qemu-ppc/supported.txt
|
||||
%endif
|
||||
# install supportconfig plugin
|
||||
mkdir -p %{buildroot}%{_libexecdir}/supportconfig/plugins
|
||||
install -D -m 0755 %{SOURCE16} %{buildroot}%{_libexecdir}/supportconfig/plugins/qemu
|
||||
%if %{legacy_qemu_kvm}
|
||||
cat > %{buildroot}%{_bindir}/qemu-kvm << 'EOF'
|
||||
#!/bin/sh
|
||||
@ -1433,7 +1462,7 @@ fi
|
||||
%dir %_libdir/%name
|
||||
%_libdir/%name/block-dmg-bz2.so
|
||||
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
%if 0%{?with_glusterfs}
|
||||
%files block-gluster
|
||||
%defattr(-, root, root)
|
||||
%dir %_libdir/%name
|
||||
@ -1521,6 +1550,8 @@ fi
|
||||
%verify(not mode) %attr(4750,root,kvm) %_libexecdir/qemu-bridge-helper
|
||||
%dir %_sysconfdir/%name
|
||||
%config %_sysconfdir/%name/bridge.conf
|
||||
%_bindir/analyze-migration.py
|
||||
%_bindir/vmstate-static-checker.py
|
||||
|
||||
%files guest-agent
|
||||
%defattr(-, root, root)
|
||||
|
64
skiboot-GCC7-fixes-for-Wimplicit-fallthr.patch
Normal file
64
skiboot-GCC7-fixes-for-Wimplicit-fallthr.patch
Normal file
@ -0,0 +1,64 @@
|
||||
From d2c3aad5b260f52dbc87dc93e81733daad154051 Mon Sep 17 00:00:00 2001
|
||||
From: Stewart Smith <stewart@linux.vnet.ibm.com>
|
||||
Date: Wed, 10 May 2017 19:33:52 +1000
|
||||
Subject: [PATCH] GCC7: fixes for -Wimplicit-fallthrough expected regexes
|
||||
|
||||
It turns out GCC7 adds a useful warning and does fancy things like
|
||||
parsing your comments to work out that you intended to do the fallthrough.
|
||||
There's a few places where we don't match the regex. Fix them, as it's
|
||||
harmless to do so.
|
||||
|
||||
Found by building on Fedora Rawhide in Travis.
|
||||
|
||||
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
core/pcie-slot.c | 3 ++-
|
||||
hw/fsp/fsp-sysparam.c | 2 +-
|
||||
platforms/ibm-fsp/firenze-pci.c | 3 ++-
|
||||
3 files changed, 5 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/core/pcie-slot.c b/core/pcie-slot.c
|
||||
index 62933a40..80972a6f 100644
|
||||
--- a/core/pcie-slot.c
|
||||
+++ b/core/pcie-slot.c
|
||||
@@ -383,7 +383,8 @@ static int64_t pcie_slot_sm_freset(struct pci_slot *slot)
|
||||
PCI_SLOT_STATE_FRESET_POWER_OFF);
|
||||
return pci_slot_set_sm_timeout(slot, msecs_to_tb(50));
|
||||
}
|
||||
- /* No power state change, fall through */
|
||||
+ /* No power state change, */
|
||||
+ /* fallthrough */
|
||||
case PCI_SLOT_STATE_FRESET_POWER_OFF:
|
||||
PCIE_SLOT_DBG(slot, "FRESET: Power is off, turn on\n");
|
||||
if (slot->ops.set_power_state)
|
||||
diff --git a/hw/fsp/fsp-sysparam.c b/hw/fsp/fsp-sysparam.c
|
||||
index 2dbf05c6..5d7ae91e 100644
|
||||
--- a/hw/fsp/fsp-sysparam.c
|
||||
+++ b/hw/fsp/fsp-sysparam.c
|
||||
@@ -100,7 +100,7 @@ static int fsp_sysparam_process(struct sysparam_req *r)
|
||||
case 0x00: /* XXX Is that even possible ? */
|
||||
case 0x11: /* Data in request */
|
||||
memcpy(r->ubuf, &r->resp.data.words[2], len);
|
||||
- /* pass through */
|
||||
+ /* fallthrough */
|
||||
case 0x12: /* Data in TCE */
|
||||
stlen = len;
|
||||
break;
|
||||
diff --git a/platforms/ibm-fsp/firenze-pci.c b/platforms/ibm-fsp/firenze-pci.c
|
||||
index fd15e88a..66f6efa9 100644
|
||||
--- a/platforms/ibm-fsp/firenze-pci.c
|
||||
+++ b/platforms/ibm-fsp/firenze-pci.c
|
||||
@@ -507,7 +507,8 @@ static int64_t firenze_pci_slot_freset(struct pci_slot *slot)
|
||||
msecs_to_tb(FIRENZE_PCI_SLOT_DELAY));
|
||||
}
|
||||
|
||||
- /* Fall through: Power is off, turn it on */
|
||||
+ /* Power is off, turn it on */
|
||||
+ /* Fallthrough */
|
||||
case FIRENZE_PCI_SLOT_FRESET_POWER_OFF:
|
||||
/* Update last power status */
|
||||
pval = (uint8_t *)(plat_slot->req->rw_buf);
|
||||
--
|
||||
2.14.1
|
||||
|
28
skiboot-libc-stdio-vsnprintf.c-add-expli.patch
Normal file
28
skiboot-libc-stdio-vsnprintf.c-add-expli.patch
Normal file
@ -0,0 +1,28 @@
|
||||
From bfb0e54f493d4003a397d5c1b50fc77195e7ffb5 Mon Sep 17 00:00:00 2001
|
||||
From: Stewart Smith <stewart@linux.vnet.ibm.com>
|
||||
Date: Thu, 2 Feb 2017 16:35:40 +1100
|
||||
Subject: [PATCH] libc/stdio/vsnprintf.c: add explicit fallthrough
|
||||
|
||||
silences recent GCC warning
|
||||
|
||||
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
libc/stdio/vsnprintf.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/libc/stdio/vsnprintf.c b/libc/stdio/vsnprintf.c
|
||||
index fbb84a0b..e83cee84 100644
|
||||
--- a/libc/stdio/vsnprintf.c
|
||||
+++ b/libc/stdio/vsnprintf.c
|
||||
@@ -164,6 +164,7 @@ print_format(char **buffer, size_t bufsize, const char *format, void *var)
|
||||
break;
|
||||
case 'X':
|
||||
upper = true;
|
||||
+ /* fallthrough */
|
||||
case 'x':
|
||||
sizec[i] = '\0';
|
||||
value = (unsigned long) var & convert[length_mod];
|
||||
--
|
||||
2.14.1
|
||||
|
@ -182,6 +182,12 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
- The previously supported blkdev-add QMP command has been flagged as lacking
|
||||
and could possibly change syntax in the future.
|
||||
|
||||
- Due to upstream's decision to no longer fully support the qed storage format
|
||||
going forward (since it really provides no benefit over qcow2 and is now no
|
||||
longer actively maintained upstream), creating qed storage images is no longer
|
||||
supported and it is highly discouraged to continuing to use existing qed
|
||||
images. They should instead be converted to another supported format.
|
||||
|
||||
QEMU Command-Line and Monitor Syntax and Support
|
||||
------------------------------------------------
|
||||
|
||||
@ -189,10 +195,10 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
qemu-system-aarch64 [options]
|
||||
|
||||
Where 'options' are taken from the options listed below.
|
||||
The images used with -drive or -cdrom, may be in the raw (no format), qcow2
|
||||
or qed storage formats, and may be located in files within the host
|
||||
filesystem, logical volumes, host physical disks, or network based storage.
|
||||
Read only media may also be accessed via URL style protocol specifiers.
|
||||
The images used with -drive or -cdrom, may be in the raw (no format) or qcow2
|
||||
storage formats, and may be located in files within the host filesystem,
|
||||
logical volumes, host physical disks, or network based storage. Read only
|
||||
media may also be accessed via URL style protocol specifiers.
|
||||
|
||||
Note that as a general rule, as new command line options are added which serve
|
||||
to replace an older option or interface, you are strongly encouraged to adapt
|
||||
@ -234,7 +240,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
virtio-scsi|virtio-rng|e1000-82540em)
|
||||
-dfilter range, ...
|
||||
-display ...
|
||||
-drive ... (if specified if=[virtio] and format=[qcow2|qed|raw] and
|
||||
-drive ... (if specified if=[virtio] and format=[qcow2|raw] and
|
||||
snapshot=off only)
|
||||
-echr ...
|
||||
-enable-fips
|
||||
@ -597,8 +603,8 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
(note that some of these device names represent supported devices and
|
||||
are used internally, but are not specifyable via -device even though
|
||||
they appear in the list of devices)
|
||||
-drive ,if=[scsi|mtd|pflash], snapshot=on, format=[anything besides qcow2, qed
|
||||
or raw]
|
||||
-drive ,if=[scsi|mtd|pflash], snapshot=on, format=[anything besides qcow2 or
|
||||
raw]
|
||||
-dtb file
|
||||
-enable-hax
|
||||
-fda/-fdb ...
|
||||
|
@ -182,6 +182,12 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
- The previously supported blkdev-add QMP command has been flagged as lacking
|
||||
and could possibly change syntax in the future.
|
||||
|
||||
- Due to upstream's decision to no longer fully support the qed storage format
|
||||
going forward (since it really provides no benefit over qcow2 and is now no
|
||||
longer actively maintained upstream), creating qed storage images is no longer
|
||||
supported and it is highly discouraged to continuing to use existing qed
|
||||
images. They should instead be converted to another supported format.
|
||||
|
||||
QEMU Command-Line and Monitor Syntax and Support
|
||||
------------------------------------------------
|
||||
|
||||
@ -189,10 +195,10 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
qemu-system-ppc64 [options]
|
||||
|
||||
Where 'options' are taken from the options listed below.
|
||||
The images used with -drive or -cdrom, may be in the raw (no format), qcow2
|
||||
or qed storage formats, and may be located in files within the host
|
||||
filesystem, logical volumes, host physical disks, or network based storage.
|
||||
Read only media may also be accessed via URL style protocol specifiers.
|
||||
The images used with -drive or -cdrom, may be in the raw (no format) or qcow2
|
||||
storage formats, and may be located in files within the host filesystem,
|
||||
logical volumes, host physical disks, or network based storage. Read only
|
||||
media may also be accessed via URL style protocol specifiers.
|
||||
|
||||
Note that as a general rule, as new command line options are added which serve
|
||||
to replace an older option or interface, you are strongly encouraged to adapt
|
||||
@ -234,7 +240,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
virtio-scsi|virtio-rng|e1000-82540em)
|
||||
-dfilter range, ...
|
||||
-display ...
|
||||
-drive ... (if specified if=[virtio] and format=[qcow2|qed|raw] and
|
||||
-drive ... (if specified if=[virtio] and format=[qcow2|raw] and
|
||||
snapshot=off only)
|
||||
-echr ...
|
||||
-enable-fips
|
||||
@ -547,8 +553,8 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
(note that some of these device names represent supported devices and
|
||||
are used internally, but are not specifyable via -device even though
|
||||
they appear in the list of devices)
|
||||
-drive ,if=[scsi|mtd|pflash], snapshot=on, format=[anything besides qcow2, qed
|
||||
or raw]
|
||||
-drive ,if=[scsi|mtd|pflash], snapshot=on, format=[anything besides qcow2 or
|
||||
raw]
|
||||
-dtb file
|
||||
-enable-hax
|
||||
-fda/-fdb ...
|
||||
|
@ -183,6 +183,12 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
- The previously supported blkdev-add QMP command has been flagged as lacking
|
||||
and could possibly change syntax in the future.
|
||||
|
||||
- Due to upstream's decision to no longer fully support the qed storage format
|
||||
going forward (since it really provides no benefit over qcow2 and is now no
|
||||
longer actively maintained upstream), creating qed storage images is no longer
|
||||
supported and it is highly discouraged to continuing to use existing qed
|
||||
images. They should instead be converted to another supported format.
|
||||
|
||||
QEMU Command-Line and Monitor Syntax and Support
|
||||
------------------------------------------------
|
||||
|
||||
@ -190,10 +196,10 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
qemu-system-s390x [options]
|
||||
|
||||
Where 'options' are taken from the options listed below.
|
||||
The images used with -drive or -cdrom, may be in the raw (no format), qcow2
|
||||
or qed storage formats, and may be located in files within the host
|
||||
filesystem, logical volumes, host physical disks, or network based storage.
|
||||
Read only media may also be accessed via URL style protocol specifiers.
|
||||
The images used with -drive or -cdrom, may be in the raw (no format) or qcow2
|
||||
storage formats, and may be located in files within the host filesystem,
|
||||
logical volumes, host physical disks, or network based storage. Read only
|
||||
media may also be accessed via URL style protocol specifiers.
|
||||
|
||||
Note that as a general rule, as new command line options are added which serve
|
||||
to replace an older option or interface, you are strongly encouraged to adapt
|
||||
@ -230,7 +236,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
virtio-net|virtio-serial|virtio-balloon|virtio-scsi|virtio-rng)
|
||||
-dfilter range, ...
|
||||
-display ...
|
||||
-drive ... (if specified if=[virtio] and format=[qcow2|qed|raw] and
|
||||
-drive ... (if specified if=[virtio] and format=[qcow2|raw] and
|
||||
snapshot=off only)
|
||||
-echr ...
|
||||
-enable-fips
|
||||
@ -557,8 +563,8 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
(note that some of these device names represent supported devices and
|
||||
are used internally, but are not specifyable via -device even though
|
||||
they appear in the list of devices)
|
||||
-drive ,if=[scsi|mtd|pflash], snapshot=on, format=[anything besides qcow2, qed
|
||||
or raw]
|
||||
-drive ,if=[scsi|mtd|pflash], snapshot=on, format=[anything besides qcow2 or
|
||||
raw]
|
||||
-dtb file
|
||||
-enable-hax
|
||||
-fda/-fdb ...
|
||||
|
@ -274,6 +274,12 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
are not supported in this release. The current q35 machine type is however now
|
||||
fully supported.
|
||||
|
||||
- Due to upstream's decision to no longer fully support the qed storage format
|
||||
going forward (since it really provides no benefit over qcow2 and is now no
|
||||
longer actively maintained upstream), creating qed storage images is no longer
|
||||
supported and it is highly discouraged to continuing to use existing qed
|
||||
images. They should instead be converted to another supported format.
|
||||
|
||||
QEMU Command-Line and Monitor Syntax and Support
|
||||
------------------------------------------------
|
||||
|
||||
@ -284,9 +290,9 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
Where 'options' are taken from the options listed below, and 'disk_image' is
|
||||
the file system reference to the the x86 guest's primary IDE based hard disk
|
||||
image. This image as well as those used with -drive or -cdrom, may be in the
|
||||
raw (no format), qcow2 or qed storage formats, and may be located in files
|
||||
within the host filesystem, logical volumes, host physical disks, or network
|
||||
based storage. Read only media may also be accessed via URL style protocol
|
||||
raw (no format) or qcow2 storage formats, and may be located in files within
|
||||
the host filesystem, logical volumes, host physical disks, or network based
|
||||
storage. Read only media may also be accessed via URL style protocol
|
||||
specifiers.
|
||||
|
||||
Note that as a general rule, as new command line options are added which serve
|
||||
@ -333,7 +339,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
virtio-scsi|virtio-rng|e1000-82540em)
|
||||
-dfilter range, ...
|
||||
-display ...
|
||||
-drive ... (if specified if=[floppy|ide|virtio] and format=[qcow2|qed|raw] and
|
||||
-drive ... (if specified if=[floppy|ide|virtio] and format=[qcow2|raw] and
|
||||
snapshot=off only)
|
||||
-echr ...
|
||||
-enable-fips
|
||||
@ -669,8 +675,8 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
(note that some of these device names represent supported devices and
|
||||
are used internally, but are not specifyable via -device even though
|
||||
they appear in the list of devices)
|
||||
-drive ,if=[scsi|mtd|pflash], snapshot=on, format=[anything besides qcow2, qed
|
||||
or raw]
|
||||
-drive ,if=[scsi|mtd|pflash], snapshot=on, format=[anything besides qcow2 or
|
||||
raw]
|
||||
-dtb file
|
||||
-enable-hax
|
||||
-g ...
|
||||
|
Loading…
Reference in New Issue
Block a user