Accepting request 660294 from Virtualization
OBS-URL: https://build.opensuse.org/request/show/660294 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/qemu?expand=0&rev=148
This commit is contained in:
commit
afb4cd1be2
@ -1,8 +1,9 @@
|
||||
From fc0c1906704dfc1c699bf1397e02e5887fd13da6 Mon Sep 17 00:00:00 2001
|
||||
From 832434a783511ecfd30db4d718dcf15210da866e Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Mon, 21 Nov 2011 23:50:36 +0100
|
||||
Subject: [PATCH] XXX dont dump core on sigabort
|
||||
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
linux-user/signal.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
@ -1,4 +1,4 @@
|
||||
From e7c65bc5548a677685a73132ae6113cfd511599c Mon Sep 17 00:00:00 2001
|
||||
From ecb8f5651091fb6538366fefc43ecd095328194a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Wed, 10 Aug 2016 19:00:24 +0200
|
||||
Subject: [PATCH] qemu-binfmt-conf: Modify default path
|
||||
@ -14,10 +14,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/scripts/qemu-binfmt-conf.sh b/scripts/qemu-binfmt-conf.sh
|
||||
index b0dc8a714a..e6a120e842 100755
|
||||
index b5a16742a1..4f1358e2fd 100755
|
||||
--- a/scripts/qemu-binfmt-conf.sh
|
||||
+++ b/scripts/qemu-binfmt-conf.sh
|
||||
@@ -315,7 +315,7 @@ BINFMT_SET=qemu_register_interpreter
|
||||
@@ -319,7 +319,7 @@ BINFMT_SET=qemu_register_interpreter
|
||||
SYSTEMDDIR="/etc/binfmt.d"
|
||||
DEBIANDIR="/usr/share/binfmts"
|
||||
|
||||
|
@ -1,23 +1,27 @@
|
||||
From 6d0df1babae523ed024402f716b433a2628473d4 Mon Sep 17 00:00:00 2001
|
||||
From 540d7a5df50656e9ec56cc78c909c36382814e54 Mon Sep 17 00:00:00 2001
|
||||
From: Ulrich Hecht <uli@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:25:41 +0200
|
||||
Subject: [PATCH] qemu-cvs-gettimeofday
|
||||
|
||||
No clue what this is for.
|
||||
|
||||
[BR: minor edits to pass qemu's checkpatch script]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
linux-user/syscall.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
linux-user/syscall.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index dfc851cc35..fec6d16aa6 100644
|
||||
index 280137da8c..0f6ce7231a 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -9292,6 +9292,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
@@ -8116,6 +8116,9 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1,
|
||||
case TARGET_NR_gettimeofday:
|
||||
{
|
||||
struct timeval tv;
|
||||
+ if(copy_from_user_timeval(&tv, arg1))
|
||||
+ goto efault;
|
||||
+ if (copy_from_user_timeval(&tv, arg1)) {
|
||||
+ return -TARGET_EFAULT;
|
||||
+ }
|
||||
ret = get_errno(gettimeofday(&tv, NULL));
|
||||
if (!is_error(ret)) {
|
||||
if (copy_to_user_timeval(arg1, &tv))
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 252fd8536222a6f851aae919665959a1fe2783fd Mon Sep 17 00:00:00 2001
|
||||
From 4b8064e9cf51af12d6c57a56fc795774eaf84ade Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:26:33 +0200
|
||||
Subject: [PATCH] qemu-cvs-ioctl_debug
|
||||
@ -7,24 +7,33 @@ Extends unsupported ioctl debug output.
|
||||
|
||||
Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
Signed-off-by: Ulrich Hecht <uli@suse.de>
|
||||
[BR: minor edits to pass qemu's checkpatch script]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
linux-user/syscall.c | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
linux-user/syscall.c | 14 +++++++++++++-
|
||||
1 file changed, 13 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index fec6d16aa6..0c4ba18b2f 100644
|
||||
index 0f6ce7231a..331177716b 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -5770,7 +5770,12 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
||||
@@ -4773,7 +4773,19 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
||||
ie = ioctl_entries;
|
||||
for(;;) {
|
||||
if (ie->target_cmd == 0) {
|
||||
- gemu_log("Unsupported ioctl: cmd=0x%04lx\n", (long)cmd);
|
||||
+ int i;
|
||||
+ gemu_log("Unsupported ioctl: cmd=0x%04lx (%x)\n", (unsigned long)cmd, (unsigned int)(cmd & (TARGET_IOC_SIZEMASK << TARGET_IOC_SIZESHIFT)) >> TARGET_IOC_SIZESHIFT);
|
||||
+ gemu_log("Unsupported ioctl: cmd=0x%04lx (%x)\n", (unsigned long)cmd,
|
||||
+ (unsigned int)(cmd & (TARGET_IOC_SIZEMASK << TARGET_IOC_SIZESHIFT))
|
||||
+ >> TARGET_IOC_SIZESHIFT);
|
||||
+ for (i = 0; ioctl_entries[i].target_cmd; i++) {
|
||||
+ if ((ioctl_entries[i].target_cmd & ~(TARGET_IOC_SIZEMASK << TARGET_IOC_SIZESHIFT)) == (cmd & ~(TARGET_IOC_SIZEMASK << TARGET_IOC_SIZESHIFT)))
|
||||
+ gemu_log("%p\t->\t%s (%x)\n", (void *)(unsigned long)ioctl_entries[i].host_cmd, ioctl_entries[i].name, (ioctl_entries[i].target_cmd & (TARGET_IOC_SIZEMASK << TARGET_IOC_SIZESHIFT)) >> TARGET_IOC_SIZESHIFT);
|
||||
+ if ((ioctl_entries[i].target_cmd & ~(TARGET_IOC_SIZEMASK
|
||||
+ << TARGET_IOC_SIZESHIFT)) == (cmd & ~(TARGET_IOC_SIZEMASK <<
|
||||
+ TARGET_IOC_SIZESHIFT)))
|
||||
+ gemu_log("%p\t->\t%s (%x)\n", (void *)(unsigned long)
|
||||
+ ioctl_entries[i].host_cmd, ioctl_entries[i].name,
|
||||
+ (ioctl_entries[i].target_cmd & (TARGET_IOC_SIZEMASK
|
||||
+ << TARGET_IOC_SIZESHIFT)) >> TARGET_IOC_SIZESHIFT);
|
||||
+ }
|
||||
return -TARGET_ENOSYS;
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
From a82a766a9e2802352c5a0f4e66ddb3be84e32afc Mon Sep 17 00:00:00 2001
|
||||
From ae20a979f7196eca1934f963b52a657374f1ac10 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:27:36 +0200
|
||||
Subject: [PATCH] qemu-cvs-ioctl_nodirection
|
||||
@ -10,15 +10,17 @@ IOC_RW.
|
||||
|
||||
Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
Signed-off-by: Ulrich Hecht <uli@suse.de>
|
||||
[BR: minor edits to pass qemu's checkpatch script]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
linux-user/syscall.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 0c4ba18b2f..76c1cbe36e 100644
|
||||
index 331177716b..f3cdecce7e 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -5807,6 +5807,11 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
||||
@@ -4814,6 +4814,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 +32,7 @@ index 0c4ba18b2f..76c1cbe36e 100644
|
||||
case IOC_R:
|
||||
ret = get_errno(safe_ioctl(fd, ie->host_cmd, buf_temp));
|
||||
if (!is_error(ret)) {
|
||||
@@ -5825,6 +5830,7 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
||||
@@ -4832,6 +4837,7 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
||||
unlock_user(argptr, arg, 0);
|
||||
ret = get_errno(safe_ioctl(fd, ie->host_cmd, buf_temp));
|
||||
break;
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 8d952c63e49ef3f04a79d3e2bc58a5c555bae585 Mon Sep 17 00:00:00 2001
|
||||
From 677597f3df31a00bfdfc515744a5acf20a20d204 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Fri, 30 Sep 2011 19:40:36 +0200
|
||||
Subject: [PATCH] linux-user: add binfmt wrapper for argv[0] handling
|
||||
@ -82,7 +82,7 @@ index 4d56298bbf..c85327169f 100644
|
||||
$(call quiet-command,rm -f $@ && $(SHELL) $(SRC_PATH)/scripts/feature_to_c.sh $@ $(TARGET_XML_FILES),"GEN","$(TARGET_DIR)$@")
|
||||
|
||||
diff --git a/linux-user/Makefile.objs b/linux-user/Makefile.objs
|
||||
index b5dfb71f25..cfd71c2648 100644
|
||||
index 769b8d8336..d48837313d 100644
|
||||
--- a/linux-user/Makefile.objs
|
||||
+++ b/linux-user/Makefile.objs
|
||||
@@ -7,3 +7,5 @@ obj-$(TARGET_HAS_BFLT) += flatload.o
|
||||
|
@ -1,4 +1,4 @@
|
||||
From a98cb00cf67a473e816ecde4058f9f4c01cd6d57 Mon Sep 17 00:00:00 2001
|
||||
From 698f8163ca702dd9b7c5e456907178579b7bf4a0 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Fri, 6 Jan 2012 01:05:55 +0100
|
||||
Subject: [PATCH] PPC: KVM: Disable mmu notifier check
|
||||
@ -8,15 +8,17 @@ check for MMU notifiers that on 970 can not be implemented properly.
|
||||
|
||||
So disable the check for mmu notifiers on PowerPC guests, making
|
||||
KVM guests work there, even if possibly racy in some odd circumstances.
|
||||
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
exec.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/exec.c b/exec.c
|
||||
index 4f5df07b6a..71520a9c89 100644
|
||||
index bb6170dbff..6ca259efaa 100644
|
||||
--- a/exec.c
|
||||
+++ b/exec.c
|
||||
@@ -2270,11 +2270,13 @@ RAMBlock *qemu_ram_alloc_from_fd(ram_addr_t size, MemoryRegion *mr,
|
||||
@@ -2248,11 +2248,13 @@ RAMBlock *qemu_ram_alloc_from_fd(ram_addr_t size, MemoryRegion *mr,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 40b72c9a181955522632a03e6b166a16ae1c9960 Mon Sep 17 00:00:00 2001
|
||||
From 73f6e4c049e433b4f492916e7366aedd3a970edb Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Thu, 2 Feb 2012 18:02:33 +0100
|
||||
Subject: [PATCH] linux-user: binfmt: support host binaries
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 7511bbd3bc2037599632fd8ff288fb3d32668977 Mon Sep 17 00:00:00 2001
|
||||
From 650ba31a809fe4d89bf3a0625c07729bbf5af035 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Mon, 23 Jul 2012 10:24:14 +0200
|
||||
Subject: [PATCH] linux-user: Fake /proc/cpuinfo
|
||||
@ -22,10 +22,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
1 file changed, 20 insertions(+)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 76c1cbe36e..1b55bd11c5 100644
|
||||
index f3cdecce7e..df07e84eba 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -7702,6 +7702,25 @@ static int open_self_stat(void *cpu_env, int fd)
|
||||
@@ -6658,6 +6658,25 @@ static int open_self_stat(void *cpu_env, int fd)
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -51,7 +51,7 @@ index 76c1cbe36e..1b55bd11c5 100644
|
||||
static int open_self_auxv(void *cpu_env, int fd)
|
||||
{
|
||||
CPUState *cpu = ENV_GET_CPU((CPUArchState *)cpu_env);
|
||||
@@ -7816,6 +7835,7 @@ static int do_openat(void *cpu_env, int dirfd, const char *pathname, int flags,
|
||||
@@ -6772,6 +6791,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
|
||||
|
@ -1,4 +1,4 @@
|
||||
From e13afd152f77bb443153a04bc9a1a3ef798859c1 Mon Sep 17 00:00:00 2001
|
||||
From 1e6c62c45c22da52f13ab2c1aefd0544c0307549 Mon Sep 17 00:00:00 2001
|
||||
From: Adam Williamson <awilliam@redhat.com>
|
||||
Date: Wed, 20 Dec 2017 15:43:07 -0800
|
||||
Subject: [PATCH] Remove problematic 'evdev 86' key from en-us keymap
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 4aecd955fdf4122a71f9b638650e0eec24ac725b Mon Sep 17 00:00:00 2001
|
||||
From a4464c46f03789eae3abf93281f1addcbdb53da0 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 9 Oct 2012 09:06:49 +0200
|
||||
Subject: [PATCH] linux-user: use target_ulong
|
||||
@ -13,14 +13,14 @@ Pass syscall arguments as ulong always.
|
||||
Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
---
|
||||
linux-user/qemu.h | 8 ++++----
|
||||
linux-user/syscall.c | 8 ++++----
|
||||
2 files changed, 8 insertions(+), 8 deletions(-)
|
||||
linux-user/syscall.c | 18 +++++++++---------
|
||||
2 files changed, 13 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
|
||||
index b4959e41c6..51ea01f2ef 100644
|
||||
index dd5771ce0c..7e5a0fd026 100644
|
||||
--- a/linux-user/qemu.h
|
||||
+++ b/linux-user/qemu.h
|
||||
@@ -202,10 +202,10 @@ abi_long memcpy_to_target(abi_ulong dest, const void *src,
|
||||
@@ -206,10 +206,10 @@ abi_long memcpy_to_target(abi_ulong dest, const void *src,
|
||||
void target_set_brk(abi_ulong new_brk);
|
||||
abi_long do_brk(abi_ulong new_brk);
|
||||
void syscall_init(void);
|
||||
@ -36,13 +36,37 @@ index b4959e41c6..51ea01f2ef 100644
|
||||
extern __thread CPUState *thread_cpu;
|
||||
void cpu_loop(CPUArchState *env);
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 1b55bd11c5..c2f2cb10b9 100644
|
||||
index df07e84eba..6ef3d3b5a8 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -8020,10 +8020,10 @@ static int host_to_target_cpu_mask(const unsigned long *host_mask,
|
||||
/* 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>. */
|
||||
@@ -6929,10 +6929,10 @@ static int host_to_target_cpu_mask(const unsigned long *host_mask,
|
||||
* of syscall results, can be performed.
|
||||
* All errnos that do_syscall() returns must be -TARGET_<errcode>.
|
||||
*/
|
||||
-static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1,
|
||||
- abi_long arg2, abi_long arg3, abi_long arg4,
|
||||
- abi_long arg5, abi_long arg6, abi_long arg7,
|
||||
- abi_long arg8)
|
||||
+static abi_long do_syscall1(void *cpu_env, int num, abi_ulong arg1,
|
||||
+ abi_ulong arg2, abi_ulong arg3, abi_ulong arg4,
|
||||
+ abi_ulong arg5, abi_ulong arg6, abi_ulong arg7,
|
||||
+ abi_ulong arg8)
|
||||
{
|
||||
CPUState *cpu = ENV_GET_CPU(cpu_env);
|
||||
abi_long ret;
|
||||
@@ -9668,7 +9668,7 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1,
|
||||
*/
|
||||
ret = -TARGET_EINVAL;
|
||||
if (cpu_isar_feature(aa64_sve, arm_env_get_cpu(cpu_env))
|
||||
- && arg2 >= 0 && arg2 <= 512 * 16 && !(arg2 & 15)) {
|
||||
+ && arg2 <= 512 * 16 && !(arg2 & 15)) {
|
||||
CPUARMState *env = cpu_env;
|
||||
ARMCPU *cpu = arm_env_get_cpu(env);
|
||||
uint32_t vq, old_vq;
|
||||
@@ -11521,10 +11521,10 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_long arg1,
|
||||
return ret;
|
||||
}
|
||||
|
||||
-abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
- abi_long arg2, abi_long arg3, abi_long arg4,
|
||||
- abi_long arg5, abi_long arg6, abi_long arg7,
|
||||
|
@ -1,4 +1,4 @@
|
||||
From b45f8e8056de05f0f116066038b1b207bb8d01ff Mon Sep 17 00:00:00 2001
|
||||
From 35506374079e31a526a7206813ef8f89aecaa04c Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Thu, 1 Apr 2010 17:36:23 +0200
|
||||
Subject: [PATCH] Make char muxer more robust wrt small FIFOs
|
||||
@ -19,6 +19,8 @@ it polls again after a while to check if the guest is now receiving input.
|
||||
This patch fixes input when using -nographic on s390 for me.
|
||||
|
||||
[AF: Rebased for v2.7.0-rc2]
|
||||
[BR: minor edits to pass qemu's checkpatch script]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
chardev/char-fe.c | 1 +
|
||||
chardev/char-mux.c | 14 ++++++++++++++
|
||||
@ -28,26 +30,26 @@ This patch fixes input when using -nographic on s390 for me.
|
||||
5 files changed, 20 insertions(+)
|
||||
|
||||
diff --git a/chardev/char-fe.c b/chardev/char-fe.c
|
||||
index b1f228e8b5..f6e923bd7d 100644
|
||||
index a8931f7afd..f2455ed619 100644
|
||||
--- a/chardev/char-fe.c
|
||||
+++ b/chardev/char-fe.c
|
||||
@@ -21,6 +21,7 @@
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
+#define HW_POISON_H // avoid poison since we patch against rules it "enforces"
|
||||
+#define HW_POISON_H /* avoid poison since we patch against rules it "enforces" */
|
||||
#include "qemu/osdep.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "qapi/error.h"
|
||||
diff --git a/chardev/char-mux.c b/chardev/char-mux.c
|
||||
index 6055e76293..1afcc09829 100644
|
||||
index 6055e76293..ef25fecb0c 100644
|
||||
--- a/chardev/char-mux.c
|
||||
+++ b/chardev/char-mux.c
|
||||
@@ -22,6 +22,7 @@
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
+#define HW_POISON_H // avoid poison since we patch against rules it "enforces"
|
||||
+#define HW_POISON_H /* avoid poison since we patch against rules it "enforces" */
|
||||
#include "qemu/osdep.h"
|
||||
#include "qapi/error.h"
|
||||
#include "qemu/option.h"
|
||||
@ -73,20 +75,20 @@ index 6055e76293..1afcc09829 100644
|
||||
d->focus = -1;
|
||||
+#if defined(TARGET_S390X)
|
||||
+ d->accept_timer = qemu_new_timer_ns(vm_clock,
|
||||
+ (QEMUTimerCB*)mux_chr_accept_input, chr);
|
||||
+ (QEMUTimerCB *)mux_chr_accept_input, chr);
|
||||
+#endif
|
||||
/* only default to opened state if we've realized the initial
|
||||
* set of muxes
|
||||
*/
|
||||
diff --git a/chardev/char.c b/chardev/char.c
|
||||
index 76d866e6fe..021744f7e9 100644
|
||||
index 152dde5327..4726d7b304 100644
|
||||
--- a/chardev/char.c
|
||||
+++ b/chardev/char.c
|
||||
@@ -22,6 +22,7 @@
|
||||
* THE SOFTWARE.
|
||||
*/
|
||||
|
||||
+#define HW_POISON_H // avoid poison since we patch against rules it "enforces"
|
||||
+#define HW_POISON_H /* avoid poison since we patch against rules it "enforces" */
|
||||
#include "qemu/osdep.h"
|
||||
#include "qemu/cutils.h"
|
||||
#include "monitor/monitor.h"
|
||||
@ -105,11 +107,11 @@ index 1e13187767..3a000a9e9f 100644
|
||||
int mux_cnt;
|
||||
int term_got_escape;
|
||||
diff --git a/tests/test-char.c b/tests/test-char.c
|
||||
index 5905d31441..15361748c7 100644
|
||||
index 19c3efad72..ea061dde50 100644
|
||||
--- a/tests/test-char.c
|
||||
+++ b/tests/test-char.c
|
||||
@@ -1,3 +1,4 @@
|
||||
+#define HW_POISON_H // avoid poison since we patch against rules it "enforces"
|
||||
+#define HW_POISON_H /* avoid poison since we patch against rules it "enforces" */
|
||||
#include "qemu/osdep.h"
|
||||
#include <glib/gstdio.h>
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 8c551cc70f35d5aee57fc4da9e58c81d8fec26b5 Mon Sep 17 00:00:00 2001
|
||||
From 02ce2ef5ff260d7ef395aa31dabd757776a6b67f Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Thu, 13 Dec 2012 14:29:22 +0100
|
||||
Subject: [PATCH] linux-user: lseek: explicitly cast non-set offsets to signed
|
||||
@ -16,23 +16,22 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
1 file changed, 7 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index c2f2cb10b9..b743694853 100644
|
||||
index 6ef3d3b5a8..e251ef4655 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -8396,9 +8396,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
|
||||
case TARGET_NR_oldstat:
|
||||
goto unimplemented;
|
||||
@@ -7283,8 +7283,13 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_ulong arg1,
|
||||
return ret;
|
||||
#endif
|
||||
#ifdef TARGET_NR_lseek
|
||||
- case TARGET_NR_lseek:
|
||||
- ret = get_errno(lseek(arg1, arg2, arg3));
|
||||
- return get_errno(lseek(arg1, arg2, arg3));
|
||||
+ case TARGET_NR_lseek: {
|
||||
+ off_t off = arg2;
|
||||
+ if (arg3 != SEEK_SET) {
|
||||
+ off = (abi_long)arg2;
|
||||
+ }
|
||||
+ ret = get_errno(lseek(arg1, off, arg3));
|
||||
break;
|
||||
+ return get_errno(lseek(arg1, off, arg3));
|
||||
+ }
|
||||
#endif
|
||||
#if defined(TARGET_NR_getxpid) && defined(TARGET_ALPHA)
|
||||
/* Alpha specific */
|
||||
case TARGET_NR_getxpid:
|
||||
|
@ -1,4 +1,4 @@
|
||||
From c82a9a0340bc03bc4aa4fe1cf2d667617371f558 Mon Sep 17 00:00:00 2001
|
||||
From a2de9e871de89fe1b188dfdb13cc6701eb302b00 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Wed, 14 Jan 2015 01:32:11 +0100
|
||||
Subject: [PATCH] AIO: Reduce number of threads for 32bit hosts
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 6ed042659b642186b1717038dbd93cd92da0030f Mon Sep 17 00:00:00 2001
|
||||
From 59d91f48a4a839456fcff66ba375f5c01dd6c42c Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Wed, 9 Mar 2016 15:18:11 -0700
|
||||
Subject: [PATCH] xen_disk: Add suse specific flush disable handling and map to
|
||||
@ -10,14 +10,15 @@ of xenstore, and set the equivalent flag within QEMU.
|
||||
Patch taken from Xen's patch queue, Olaf Hering being the original author.
|
||||
[bsc#879425]
|
||||
|
||||
[BR: minor edits to pass qemu's checkpatch script]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
Signed-off-by: Olaf Hering <olaf@aepfle.de>
|
||||
---
|
||||
hw/block/xen_disk.c | 16 ++++++++++++++++
|
||||
1 file changed, 16 insertions(+)
|
||||
hw/block/xen_disk.c | 19 +++++++++++++++++++
|
||||
1 file changed, 19 insertions(+)
|
||||
|
||||
diff --git a/hw/block/xen_disk.c b/hw/block/xen_disk.c
|
||||
index 36eff94f84..2b56c5e868 100644
|
||||
index 36eff94f84..ddd5c7cbfd 100644
|
||||
--- a/hw/block/xen_disk.c
|
||||
+++ b/hw/block/xen_disk.c
|
||||
@@ -90,6 +90,8 @@ struct XenBlkDev {
|
||||
@ -29,7 +30,7 @@ index 36eff94f84..2b56c5e868 100644
|
||||
gboolean feature_discard;
|
||||
|
||||
/* qemu block driver */
|
||||
@@ -642,6 +644,16 @@ static void blk_parse_discard(struct XenBlkDev *blkdev)
|
||||
@@ -642,6 +644,18 @@ static void blk_parse_discard(struct XenBlkDev *blkdev)
|
||||
}
|
||||
}
|
||||
|
||||
@ -39,14 +40,16 @@ index 36eff94f84..2b56c5e868 100644
|
||||
+
|
||||
+ blkdev->cache_unsafe = false;
|
||||
+
|
||||
+ if (xenstore_read_be_int(&blkdev->xendev, "suse-diskcache-disable-flush", &enable) == 0)
|
||||
+ if (xenstore_read_be_int(&blkdev->xendev, "suse-diskcache-disable-flush",
|
||||
+ &enable) == 0) {
|
||||
+ blkdev->cache_unsafe = !!enable;
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
static int blk_init(struct XenDevice *xendev)
|
||||
{
|
||||
struct XenBlkDev *blkdev = container_of(xendev, struct XenBlkDev, xendev);
|
||||
@@ -717,6 +729,7 @@ static int blk_init(struct XenDevice *xendev)
|
||||
@@ -717,6 +731,7 @@ static int blk_init(struct XenDevice *xendev)
|
||||
MAX_RING_PAGE_ORDER);
|
||||
|
||||
blk_parse_discard(blkdev);
|
||||
@ -54,12 +57,13 @@ index 36eff94f84..2b56c5e868 100644
|
||||
|
||||
g_free(directiosafe);
|
||||
return 0;
|
||||
@@ -764,6 +777,9 @@ static int blk_connect(struct XenDevice *xendev)
|
||||
@@ -764,6 +779,10 @@ static int blk_connect(struct XenDevice *xendev)
|
||||
qflags |= BDRV_O_UNMAP;
|
||||
}
|
||||
|
||||
+ if (blkdev->cache_unsafe)
|
||||
+ if (blkdev->cache_unsafe) {
|
||||
+ qflags |= BDRV_O_NO_FLUSH;
|
||||
+ }
|
||||
+
|
||||
/* init qemu block driver */
|
||||
index = (xendev->dev - 202 * 256) / 16;
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 960e9697aba84c52bb0a16512300d2a4ee4119c5 Mon Sep 17 00:00:00 2001
|
||||
From 12e80a565b210d70bc2a230e808ed6102ec3b123 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Tue, 2 Aug 2016 11:36:02 -0600
|
||||
Subject: [PATCH] qemu-bridge-helper: reduce security profile
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 1247ffeb8bfce7ec3e048fbe8b2864933b1cdb15 Mon Sep 17 00:00:00 2001
|
||||
From 8d32cd58427d7207c1ab44b666a7faf09e270c1b Mon Sep 17 00:00:00 2001
|
||||
From: Andreas Schwab <schwab@suse.de>
|
||||
Date: Fri, 12 Aug 2016 18:20:49 +0200
|
||||
Subject: [PATCH] qemu-binfmt-conf: use qemu-ARCH-binfmt
|
||||
@ -13,10 +13,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/scripts/qemu-binfmt-conf.sh b/scripts/qemu-binfmt-conf.sh
|
||||
index e6a120e842..3f031ca681 100755
|
||||
index 4f1358e2fd..13add7775e 100755
|
||||
--- a/scripts/qemu-binfmt-conf.sh
|
||||
+++ b/scripts/qemu-binfmt-conf.sh
|
||||
@@ -258,7 +258,7 @@ qemu_generate_register() {
|
||||
@@ -262,7 +262,7 @@ qemu_generate_register() {
|
||||
flags="${flags}F"
|
||||
fi
|
||||
|
||||
@ -25,7 +25,7 @@ index e6a120e842..3f031ca681 100755
|
||||
}
|
||||
|
||||
qemu_register_interpreter() {
|
||||
@@ -297,9 +297,9 @@ qemu_set_binfmts() {
|
||||
@@ -301,9 +301,9 @@ qemu_set_binfmts() {
|
||||
continue
|
||||
fi
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 94c36b397d6948d3fd704874acb923b504098214 Mon Sep 17 00:00:00 2001
|
||||
From 28321798381384bff19f886b167e25dc15e9fcdf Mon Sep 17 00:00:00 2001
|
||||
From: Andreas Schwab <schwab@linux-m68k.org>
|
||||
Date: Thu, 8 Sep 2016 11:21:05 +0200
|
||||
Subject: [PATCH] linux-user: properly test for infinite timeout in poll (#8)
|
||||
@ -16,10 +16,10 @@ Signed-off-by: Andreas Schwab <schwab@suse.de>
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index b743694853..bdf7571bd3 100644
|
||||
index e251ef4655..d978c67d6b 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -10580,7 +10580,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
|
||||
@@ -9301,7 +9301,7 @@ static abi_long do_syscall1(void *cpu_env, int num, abi_ulong arg1,
|
||||
{
|
||||
struct timespec ts, *pts;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d952859543912a233b133a0b614b4b871ca98535 Mon Sep 17 00:00:00 2001
|
||||
From 2df2bfd0ca9aabad27114bb778863cfeb76ca111 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Sat, 19 Nov 2016 08:06:30 -0700
|
||||
Subject: [PATCH] roms/Makefile: pass a packaging timestamp to subpackages with
|
||||
@ -20,10 +20,10 @@ Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
1 file changed, 12 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/roms/Makefile b/roms/Makefile
|
||||
index f1ac85ae9b..6d590147e4 100644
|
||||
index f4141e1d96..3b3d9b7a67 100644
|
||||
--- a/roms/Makefile
|
||||
+++ b/roms/Makefile
|
||||
@@ -52,6 +52,12 @@ SEABIOS_EXTRAVERSION="-prebuilt.qemu-project.org"
|
||||
@@ -52,6 +52,12 @@ SEABIOS_EXTRAVERSION="-prebuilt.qemu.org"
|
||||
#
|
||||
EFIROM ?= $(shell which EfiRom 2>/dev/null)
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From a6216a05efcd1354fcbfbdecf89c75651d9a8447 Mon Sep 17 00:00:00 2001
|
||||
From 544752d713e0a6a8a00cae1cbd902d95944d68a2 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Sun, 15 Jan 2012 19:53:49 +0100
|
||||
Subject: [PATCH] Raise soft address space limit to hard limit
|
||||
@ -17,7 +17,7 @@ Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/vl.c b/vl.c
|
||||
index 16b913f9d5..3af5bcdc9e 100644
|
||||
index a5ae5f23d2..3882df6ebe 100644
|
||||
--- a/vl.c
|
||||
+++ b/vl.c
|
||||
@@ -29,6 +29,7 @@
|
||||
@ -28,7 +28,7 @@ index 16b913f9d5..3af5bcdc9e 100644
|
||||
#include "sysemu/seccomp.h"
|
||||
|
||||
#ifdef CONFIG_SDL
|
||||
@@ -2949,6 +2950,7 @@ int main(int argc, char **argv, char **envp)
|
||||
@@ -3014,6 +3015,7 @@ int main(int argc, char **argv, char **envp)
|
||||
} BlockdevOptions_queue;
|
||||
QSIMPLEQ_HEAD(, BlockdevOptions_queue) bdo_queue
|
||||
= QSIMPLEQ_HEAD_INITIALIZER(bdo_queue);
|
||||
@ -36,7 +36,7 @@ index 16b913f9d5..3af5bcdc9e 100644
|
||||
|
||||
module_call_init(MODULE_INIT_TRACE);
|
||||
|
||||
@@ -2957,6 +2959,16 @@ int main(int argc, char **argv, char **envp)
|
||||
@@ -3022,6 +3024,16 @@ int main(int argc, char **argv, char **envp)
|
||||
|
||||
qemu_mutex_lock_iothread();
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 3efe84f92126685bd9c82a9b0ee3c3f2e00515f7 Mon Sep 17 00:00:00 2001
|
||||
From da91336daba1034e76118bb089beb312124f0e90 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Fri, 17 May 2013 16:49:58 -0600
|
||||
Subject: [PATCH] increase x86_64 physical bits to 42
|
||||
@ -19,10 +19,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/target/i386/cpu.h b/target/i386/cpu.h
|
||||
index c18863ec7a..7e1a04fb6c 100644
|
||||
index 9c52d0cbeb..48a6186e2f 100644
|
||||
--- a/target/i386/cpu.h
|
||||
+++ b/target/i386/cpu.h
|
||||
@@ -1675,7 +1675,7 @@ uint64_t cpu_get_tsc(CPUX86State *env);
|
||||
@@ -1699,7 +1699,7 @@ uint64_t cpu_get_tsc(CPUX86State *env);
|
||||
/* XXX: This value should match the one returned by CPUID
|
||||
* and in exec.c */
|
||||
# if defined(TARGET_X86_64)
|
||||
|
@ -1,4 +1,4 @@
|
||||
From edd9909ef3e115102f142f23aaa298d6928a97b9 Mon Sep 17 00:00:00 2001
|
||||
From 3643b477312298e50ad42cc9ee4b0e047521c1cb Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Wed, 12 Jun 2013 19:26:37 +0200
|
||||
Subject: [PATCH] vga: Raise VRAM to 16 MiB for pc-0.15 and below
|
||||
@ -25,10 +25,10 @@ Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
1 file changed, 26 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
|
||||
index dc09466b3e..7c6a9bdaa3 100644
|
||||
index 7092d6d13f..253952d3a3 100644
|
||||
--- a/hw/i386/pc_piix.c
|
||||
+++ b/hw/i386/pc_piix.c
|
||||
@@ -809,7 +809,32 @@ DEFINE_I440FX_MACHINE(v1_0, "pc-1.0", pc_compat_1_2,
|
||||
@@ -818,7 +818,32 @@ DEFINE_I440FX_MACHINE(v1_0, "pc-1.0", pc_compat_1_2,
|
||||
|
||||
|
||||
#define PC_COMPAT_0_15 \
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 83a2c6af42a497053dcf1614879896f4609eaa55 Mon Sep 17 00:00:00 2001
|
||||
From 52eec29e3edc64659edd2911aae28d82a8893528 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Wed, 31 Jul 2013 17:05:29 +0200
|
||||
Subject: [PATCH] i8254: Fix migration from SLE11 SP2
|
||||
|
@ -1,4 +1,4 @@
|
||||
From ff50be5b0f523ba1e5137e1d1eacd509b92d4079 Mon Sep 17 00:00:00 2001
|
||||
From 292bd3fb22d5487b3deecd660d2ab8d0d24d0c82 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Wed, 31 Jul 2013 17:32:35 +0200
|
||||
Subject: [PATCH] acpi_piix4: Fix migration from SLE11 SP2
|
||||
@ -17,7 +17,7 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c
|
||||
index 6404af5f33..4e74f91f77 100644
|
||||
index e330f24c71..b0bd10b3f9 100644
|
||||
--- a/hw/acpi/piix4.c
|
||||
+++ b/hw/acpi/piix4.c
|
||||
@@ -310,7 +310,7 @@ static const VMStateDescription vmstate_cpuhp_state = {
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 613a8ec4414bbc66f4997f0ebf0679d1c5d49544 Mon Sep 17 00:00:00 2001
|
||||
From 8616cd9931328170f8a4a3ecae6dda9d180601b8 Mon Sep 17 00:00:00 2001
|
||||
From: Chunyan Liu <cyliu@suse.com>
|
||||
Date: Thu, 3 Mar 2016 16:48:17 +0800
|
||||
Subject: [PATCH] Fix tigervnc long press issue
|
||||
@ -24,10 +24,10 @@ Signed-off-by: Chunyan Liu <cyliu@suse.com>
|
||||
1 file changed, 19 insertions(+)
|
||||
|
||||
diff --git a/ui/vnc.c b/ui/vnc.c
|
||||
index 359693238b..3dd8528a5e 100644
|
||||
index 0c1b477425..1c98bb91c7 100644
|
||||
--- a/ui/vnc.c
|
||||
+++ b/ui/vnc.c
|
||||
@@ -1825,6 +1825,25 @@ static void do_key_event(VncState *vs, int down, int keycode, int sym)
|
||||
@@ -1824,6 +1824,25 @@ static void do_key_event(VncState *vs, int down, int keycode, int sym)
|
||||
if (down)
|
||||
vs->modifiers_state[keycode] ^= 1;
|
||||
break;
|
||||
|
@ -1,4 +1,4 @@
|
||||
From ad93dd9db343779846b46338433db321a2dfc9b5 Mon Sep 17 00:00:00 2001
|
||||
From 259d16f0a869f9d2371036a20fb5ff19980e61b8 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Thu, 24 Sep 2015 19:21:11 +0200
|
||||
Subject: [PATCH] string-input-visitor: Fix uint64 parsing
|
||||
@ -17,15 +17,27 @@ prefer the use of qemu_strto[u]ll() over strto[u]ll().
|
||||
|
||||
Cc: qemu-stable@nongnu.org
|
||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
[BR: define qemu_strtoll and qemu_strtoull and use to avoid checkpatch
|
||||
error. Grr}
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
qapi/string-input-visitor.c | 63 +++++++++++++++++++++++++++++--------
|
||||
1 file changed, 50 insertions(+), 13 deletions(-)
|
||||
qapi/string-input-visitor.c | 65 +++++++++++++++++++++++++++++--------
|
||||
1 file changed, 52 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/qapi/string-input-visitor.c b/qapi/string-input-visitor.c
|
||||
index b3fdd0827d..d64ad081b7 100644
|
||||
index b3fdd0827d..ac118d03c8 100644
|
||||
--- a/qapi/string-input-visitor.c
|
||||
+++ b/qapi/string-input-visitor.c
|
||||
@@ -44,7 +44,8 @@ static void free_range(void *range, void *dummy)
|
||||
@@ -21,6 +21,8 @@
|
||||
#include "qemu/queue.h"
|
||||
#include "qemu/range.h"
|
||||
|
||||
+#define qemu_strtoll strtoll
|
||||
+#define qemu_strtoull strtoull
|
||||
|
||||
struct StringInputVisitor
|
||||
{
|
||||
@@ -44,7 +46,8 @@ static void free_range(void *range, void *dummy)
|
||||
g_free(range);
|
||||
}
|
||||
|
||||
@ -35,33 +47,33 @@ index b3fdd0827d..d64ad081b7 100644
|
||||
{
|
||||
char *str = (char *) siv->string;
|
||||
long long start, end;
|
||||
@@ -61,7 +62,11 @@ static int parse_str(StringInputVisitor *siv, const char *name, Error **errp)
|
||||
@@ -61,7 +64,11 @@ static int parse_str(StringInputVisitor *siv, const char *name, Error **errp)
|
||||
|
||||
do {
|
||||
errno = 0;
|
||||
- start = strtoll(str, &endptr, 0);
|
||||
+ if (u64) {
|
||||
+ start = strtoull(str, &endptr, 0);
|
||||
+ start = qemu_strtoull(str, &endptr, 0);
|
||||
+ } else {
|
||||
+ start = strtoll(str, &endptr, 0);
|
||||
+ start = qemu_strtoll(str, &endptr, 0);
|
||||
+ }
|
||||
if (errno == 0 && endptr > str) {
|
||||
if (*endptr == '\0') {
|
||||
cur = g_malloc0(sizeof(*cur));
|
||||
@@ -72,7 +77,11 @@ static int parse_str(StringInputVisitor *siv, const char *name, Error **errp)
|
||||
@@ -72,7 +79,11 @@ static int parse_str(StringInputVisitor *siv, const char *name, Error **errp)
|
||||
} else if (*endptr == '-') {
|
||||
str = endptr + 1;
|
||||
errno = 0;
|
||||
- end = strtoll(str, &endptr, 0);
|
||||
+ if (u64) {
|
||||
+ end = strtoull(str, &endptr, 0);
|
||||
+ end = qemu_strtoull(str, &endptr, 0);
|
||||
+ } else {
|
||||
+ end = strtoll(str, &endptr, 0);
|
||||
+ end = qemu_strtoll(str, &endptr, 0);
|
||||
+ }
|
||||
if (errno == 0 && endptr > str && start <= end &&
|
||||
(start > INT64_MAX - 65536 ||
|
||||
end < start + 65536)) {
|
||||
@@ -128,7 +137,7 @@ start_list(Visitor *v, const char *name, GenericList **list, size_t size,
|
||||
@@ -128,7 +139,7 @@ start_list(Visitor *v, const char *name, GenericList **list, size_t size,
|
||||
assert(list);
|
||||
siv->list = list;
|
||||
|
||||
@ -70,7 +82,7 @@ index b3fdd0827d..d64ad081b7 100644
|
||||
*list = NULL;
|
||||
return;
|
||||
}
|
||||
@@ -216,7 +225,7 @@ static void parse_type_int64(Visitor *v, const char *name, int64_t *obj,
|
||||
@@ -216,7 +227,7 @@ static void parse_type_int64(Visitor *v, const char *name, int64_t *obj,
|
||||
{
|
||||
StringInputVisitor *siv = to_siv(v);
|
||||
|
||||
@ -79,7 +91,7 @@ index b3fdd0827d..d64ad081b7 100644
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -252,15 +261,43 @@ error:
|
||||
@@ -252,15 +263,43 @@ error:
|
||||
static void parse_type_uint64(Visitor *v, const char *name, uint64_t *obj,
|
||||
Error **errp)
|
||||
{
|
||||
|
@ -1,4 +1,4 @@
|
||||
From bc42c484c1d4fdc9efcda8d0a0162357eee8a68b Mon Sep 17 00:00:00 2001
|
||||
From 1729f9280988abd42f94d5f9a4bae20febac90cb Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Thu, 24 Sep 2015 19:23:50 +0200
|
||||
Subject: [PATCH] test-string-input-visitor: Add int test case
|
||||
|
@ -1,4 +1,4 @@
|
||||
From ec5cf6d449fa658c58de6331a6226b917ad468cb Mon Sep 17 00:00:00 2001
|
||||
From 327e8a8a3e53dd39c6966dac5428e440ec376514 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Thu, 24 Sep 2015 19:24:23 +0200
|
||||
Subject: [PATCH] test-string-input-visitor: Add uint64 test
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d6d65620fcb384c26f5f60ca65c1706c2d064a2a Mon Sep 17 00:00:00 2001
|
||||
From 310ea98c034bd4c957375b3ebb02b6d43e8d8c09 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Sun, 6 Sep 2015 20:12:42 +0200
|
||||
Subject: [PATCH] tests: Add QOM property unit tests
|
||||
@ -11,36 +11,35 @@ Add a test for parsing and setting a uint64 property.
|
||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
---
|
||||
MAINTAINERS | 1 +
|
||||
tests/Makefile.include | 3 +
|
||||
tests/Makefile.include | 2 +
|
||||
tests/check-qom-props.c | 122 ++++++++++++++++++++++++++++++++++++++++
|
||||
3 files changed, 126 insertions(+)
|
||||
3 files changed, 125 insertions(+)
|
||||
|
||||
diff --git a/MAINTAINERS b/MAINTAINERS
|
||||
index 666e936812..0c212e09c1 100644
|
||||
index 63effdc473..d8521ade0d 100644
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -1685,6 +1685,7 @@ F: qom/
|
||||
@@ -1889,6 +1889,7 @@ F: qom/
|
||||
X: qom/cpu.c
|
||||
F: tests/check-qom-interface.c
|
||||
F: tests/check-qom-proplist.c
|
||||
+F: tests/check-qom-props.c
|
||||
F: tests/qom-test.c
|
||||
|
||||
QMP
|
||||
M: Markus Armbruster <armbru@redhat.com>
|
||||
diff --git a/tests/Makefile.include b/tests/Makefile.include
|
||||
index a49282704e..51e4011191 100644
|
||||
index fb0b449c02..f7e6b841cb 100644
|
||||
--- a/tests/Makefile.include
|
||||
+++ b/tests/Makefile.include
|
||||
@@ -129,6 +129,8 @@ check-unit-y += tests/check-qom-interface$(EXESUF)
|
||||
gcov-files-check-qom-interface-y = qom/object.c
|
||||
@@ -94,6 +94,7 @@ check-unit-y += tests/test-bitcnt$(EXESUF)
|
||||
check-unit-y += tests/test-qdev-global-props$(EXESUF)
|
||||
check-unit-y += tests/check-qom-interface$(EXESUF)
|
||||
check-unit-y += tests/check-qom-proplist$(EXESUF)
|
||||
gcov-files-check-qom-proplist-y = qom/object.c
|
||||
+check-unit-y += tests/check-qom-props$(EXESUF)
|
||||
+gcov-files-check-qom-props-y = qom/object.c
|
||||
check-unit-y += tests/test-qemu-opts$(EXESUF)
|
||||
gcov-files-test-qemu-opts-y = util/qemu-option.c
|
||||
check-unit-y += tests/test-keyval$(EXESUF)
|
||||
@@ -629,6 +631,7 @@ tests/check-qjson$(EXESUF): tests/check-qjson.o $(test-util-obj-y)
|
||||
check-unit-y += tests/test-write-threshold$(EXESUF)
|
||||
@@ -528,6 +529,7 @@ tests/check-qjson$(EXESUF): tests/check-qjson.o $(test-util-obj-y)
|
||||
tests/check-qlit$(EXESUF): tests/check-qlit.o $(test-util-obj-y)
|
||||
tests/check-qom-interface$(EXESUF): tests/check-qom-interface.o $(test-qom-obj-y)
|
||||
tests/check-qom-proplist$(EXESUF): tests/check-qom-proplist.o $(test-qom-obj-y)
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 874f90da7dcc12f828778dee408b776bdfb2f029 Mon Sep 17 00:00:00 2001
|
||||
From 3c695b87e039baa1539d8855aeda4ee072bc6a42 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Fri, 25 Sep 2015 12:31:11 +0200
|
||||
Subject: [PATCH] tests: Add scsi-disk test
|
||||
@ -14,36 +14,35 @@ Cc: Paolo Bonzini <pbonzini@redhat.com>
|
||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
---
|
||||
MAINTAINERS | 1 +
|
||||
tests/Makefile.include | 3 ++
|
||||
tests/Makefile.include | 2 +
|
||||
tests/scsi-disk-test.c | 83 ++++++++++++++++++++++++++++++++++++++++++
|
||||
3 files changed, 87 insertions(+)
|
||||
3 files changed, 86 insertions(+)
|
||||
|
||||
diff --git a/MAINTAINERS b/MAINTAINERS
|
||||
index 0c212e09c1..34cd91c0da 100644
|
||||
index d8521ade0d..d1e90f6f64 100644
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -1125,6 +1125,7 @@ R: Fam Zheng <famz@redhat.com>
|
||||
@@ -1286,6 +1286,7 @@ R: Fam Zheng <famz@redhat.com>
|
||||
S: Supported
|
||||
F: include/hw/scsi/*
|
||||
F: hw/scsi/*
|
||||
+F: tests/scsi-disk-test.c
|
||||
F: tests/virtio-scsi-test.c
|
||||
T: git git://github.com/bonzini/qemu.git scsi-next
|
||||
T: git https://github.com/bonzini/qemu.git scsi-next
|
||||
|
||||
diff --git a/tests/Makefile.include b/tests/Makefile.include
|
||||
index 51e4011191..d6f0290685 100644
|
||||
index f7e6b841cb..d6f67eed85 100644
|
||||
--- a/tests/Makefile.include
|
||||
+++ b/tests/Makefile.include
|
||||
@@ -203,6 +203,8 @@ check-qtest-virtio-y += tests/virtio-rng-test$(EXESUF)
|
||||
gcov-files-virtio-y += hw/virtio/virtio-rng.c
|
||||
@@ -151,6 +151,7 @@ check-qtest-virtio-y += tests/virtio-balloon-test$(EXESUF)
|
||||
check-qtest-virtio-y += tests/virtio-blk-test$(EXESUF)
|
||||
check-qtest-virtio-y += tests/virtio-rng-test$(EXESUF)
|
||||
check-qtest-virtio-y += tests/virtio-scsi-test$(EXESUF)
|
||||
gcov-files-virtio-y += i386-softmmu/hw/scsi/virtio-scsi.c
|
||||
+check-qtest-virtio-y += tests/scsi-disk-test$(EXESUF)
|
||||
+gcov-files-virtio-y += i386-softmmu/hw/scsi/scsi-disk.c
|
||||
ifeq ($(CONFIG_VIRTIO)$(CONFIG_VIRTFS)$(CONFIG_PCI),yyy)
|
||||
check-qtest-virtio-y += tests/virtio-9p-test$(EXESUF)
|
||||
gcov-files-virtio-y += hw/9pfs/virtio-9p.c
|
||||
@@ -840,6 +842,7 @@ tests/migration-test$(EXESUF): tests/migration-test.o
|
||||
endif
|
||||
@@ -748,6 +749,7 @@ tests/migration-test$(EXESUF): tests/migration-test.o
|
||||
tests/vhost-user-test$(EXESUF): tests/vhost-user-test.o $(test-util-obj-y) \
|
||||
$(qtest-obj-y) $(test-io-obj-y) $(libqos-virtio-obj-y) $(libqos-pc-obj-y) \
|
||||
$(chardev-obj-y)
|
||||
|
@ -1,4 +1,4 @@
|
||||
From f813f4f807bb16471bef7a9144335089fb5e80cf Mon Sep 17 00:00:00 2001
|
||||
From bd18c7118a50c88b572a0df2f7cc24562ea20767 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Fri, 3 Nov 2017 11:12:40 -0600
|
||||
Subject: [PATCH] Switch order of libraries for mpath support
|
||||
@ -10,10 +10,10 @@ Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 2da686be33..8ad4ef03aa 100644
|
||||
index f2947186a4..ea30cd3fb6 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -547,7 +547,7 @@ fsdev/virtfs-proxy-helper$(EXESUF): LIBS += -lcap
|
||||
@@ -551,7 +551,7 @@ fsdev/virtfs-proxy-helper$(EXESUF): LIBS += -lcap
|
||||
|
||||
scsi/qemu-pr-helper$(EXESUF): scsi/qemu-pr-helper.o scsi/utils.o $(crypto-obj-y) $(io-obj-y) $(qom-obj-y) $(COMMON_LDADDS)
|
||||
ifdef CONFIG_MPATH
|
||||
@ -23,15 +23,15 @@ index 2da686be33..8ad4ef03aa 100644
|
||||
|
||||
qemu-img-cmds.h: $(SRC_PATH)/qemu-img-cmds.hx $(SRC_PATH)/scripts/hxtool
|
||||
diff --git a/configure b/configure
|
||||
index 2a7796ea80..039923ab4e 100755
|
||||
index 0a3c6a72c3..84cd35c1b9 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -3577,7 +3577,7 @@ int main(void) {
|
||||
@@ -3594,7 +3594,7 @@ int main(void) {
|
||||
return 0;
|
||||
}
|
||||
EOF
|
||||
- if compile_prog "" "-ludev -lmultipath -lmpathpersist" ; then
|
||||
+ if compile_prog "" "-ludev -lmpathpersist -lmultipath" ; then
|
||||
mpathpersist=yes
|
||||
mpathpersist_new_api=yes
|
||||
else
|
||||
mpathpersist=no
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 6d5e50164b7b72337af2ab9332e75c9bb0cc8b01 Mon Sep 17 00:00:00 2001
|
||||
From fac5e1c088d083876e9a707e0f7e9d6d05d092c0 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Thu, 25 Jan 2018 14:16:10 -0700
|
||||
Subject: [PATCH] Make installed scripts explicitly python3
|
||||
|
@ -1,75 +0,0 @@
|
||||
From 579a6f80e0ea312e9c113bd79be8bef36eabb090 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Wed, 21 Feb 2018 14:00:52 -0700
|
||||
Subject: [PATCH] migration: warn about inconsistent spec_ctrl state
|
||||
|
||||
As an attempt to help the user do the right thing, warn if we
|
||||
detect spec_ctrl data in the migration stream, but where the
|
||||
cpu defined doesn't have the feature. This would indicate the
|
||||
migration is from the quick and dirty qemu produced in January
|
||||
2018 to handle Spectre v2. That qemu version exposed the IBRS
|
||||
cpu feature to all vcpu types, which helped in the short term
|
||||
but wasn't a well designed approach.
|
||||
Warn the user that the now migrated guest needs to be restarted
|
||||
as soon as possible, using the spec_ctrl cpu feature flag or a
|
||||
*-IBRS vcpu model specified as appropriate.
|
||||
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
cpus.c | 12 ++++++++++++
|
||||
include/qemu/thread.h | 1 +
|
||||
migration/migration.c | 8 ++++++++
|
||||
3 files changed, 21 insertions(+)
|
||||
|
||||
diff --git a/cpus.c b/cpus.c
|
||||
index b5844b7103..2717f2e105 100644
|
||||
--- a/cpus.c
|
||||
+++ b/cpus.c
|
||||
@@ -2367,6 +2367,18 @@ exit:
|
||||
fclose(f);
|
||||
}
|
||||
|
||||
+bool spec_ctrl_is_inconsistent(void)
|
||||
+{
|
||||
+#if defined(TARGET_I386)
|
||||
+ X86CPU *x86_cpu = X86_CPU(current_cpu);
|
||||
+ CPUX86State *env = x86_cpu != NULL ? &x86_cpu->env : NULL;
|
||||
+ if (env && !(env->features[FEAT_7_0_EDX] & CPUID_7_0_EDX_SPEC_CTRL) &&
|
||||
+ env->spec_ctrl)
|
||||
+ return true;
|
||||
+#endif
|
||||
+ return false;
|
||||
+}
|
||||
+
|
||||
void qmp_inject_nmi(Error **errp)
|
||||
{
|
||||
nmi_monitor_handle(monitor_get_cpu_index(), errp);
|
||||
diff --git a/include/qemu/thread.h b/include/qemu/thread.h
|
||||
index ef7bd16123..c4ecb386fe 100644
|
||||
--- a/include/qemu/thread.h
|
||||
+++ b/include/qemu/thread.h
|
||||
@@ -240,4 +240,5 @@ void qemu_lockcnt_inc_and_unlock(QemuLockCnt *lockcnt);
|
||||
*/
|
||||
unsigned qemu_lockcnt_count(QemuLockCnt *lockcnt);
|
||||
|
||||
+bool spec_ctrl_is_inconsistent(void);
|
||||
#endif
|
||||
diff --git a/migration/migration.c b/migration/migration.c
|
||||
index b7d9854bda..31b4d8bd28 100644
|
||||
--- a/migration/migration.c
|
||||
+++ b/migration/migration.c
|
||||
@@ -2575,6 +2575,14 @@ static void migration_completion(MigrationState *s)
|
||||
migrate_set_state(&s->state, current_active_state,
|
||||
MIGRATION_STATUS_COMPLETED);
|
||||
}
|
||||
+ if (spec_ctrl_is_inconsistent()) {
|
||||
+ fprintf(stderr, "WARNING! Migration from qemu with rudimentary "
|
||||
+ "Spectre v2 support to newer qemu\ndetected! To "
|
||||
+ "maintain proper protection, restart the guest as "
|
||||
+ "soon as possible\nusing the spec_ctrl cpu feature "
|
||||
+ "flag or a *-IBRS vcpu model specified\nas appropriate."
|
||||
+ "\n");
|
||||
+ }
|
||||
|
||||
return;
|
||||
|
@ -1,4 +1,4 @@
|
||||
From a0170ac31193117fd280bd8bb2a72fb768459c57 Mon Sep 17 00:00:00 2001
|
||||
From f6b18bb5a86c6bcff0589078e156c116fb3a95af Mon Sep 17 00:00:00 2001
|
||||
From: Lin Ma <lma@suse.com>
|
||||
Date: Wed, 14 Mar 2018 14:31:26 +0800
|
||||
Subject: [PATCH] smbios: Add 1 terminator if any string fields defined in
|
||||
@ -29,11 +29,11 @@ Signed-off-by: Lin Ma <lma@suse.com>
|
||||
2 files changed, 134 insertions(+)
|
||||
|
||||
diff --git a/hw/smbios/smbios.c b/hw/smbios/smbios.c
|
||||
index a27e54b2fa..1dedd08780 100644
|
||||
index 920939454e..52d1e10c3c 100644
|
||||
--- a/hw/smbios/smbios.c
|
||||
+++ b/hw/smbios/smbios.c
|
||||
@@ -952,6 +952,9 @@ void smbios_entry_add(QemuOpts *opts, Error **errp)
|
||||
{
|
||||
@@ -953,6 +953,9 @@ void smbios_entry_add(QemuOpts *opts, Error **errp)
|
||||
Error *err = NULL;
|
||||
const char *val;
|
||||
|
||||
+ int i, terminator_count = 2, table_str_field_count = 0;
|
||||
@ -42,7 +42,7 @@ index a27e54b2fa..1dedd08780 100644
|
||||
assert(!smbios_immutable);
|
||||
|
||||
val = qemu_opt_get(opts, "file");
|
||||
@@ -993,7 +996,94 @@ void smbios_entry_add(QemuOpts *opts, Error **errp)
|
||||
@@ -999,7 +1002,94 @@ void smbios_entry_add(QemuOpts *opts, Error **errp)
|
||||
smbios_type4_count++;
|
||||
}
|
||||
|
@ -1,31 +1,23 @@
|
||||
From cf1f31580527f27ea02bce3df8ff6fed88613d21 Mon Sep 17 00:00:00 2001
|
||||
From 9684904be240ac18d63e9b1e8f3293d80a028abe Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Fri, 6 Apr 2018 13:33:31 -0600
|
||||
Subject: [PATCH] qemu-io tests: comment out problematic block io tests issues
|
||||
|
||||
The following issue is seen:
|
||||
130 - timeout resulting from failed to get shared "write" lock
|
||||
The following issues are seen:
|
||||
153 - error resulting from failed to get "write" lock
|
||||
162 - sometimes we see different error code / message
|
||||
229 - we get periodic failures on ARM and POWER, not sure why
|
||||
235 - test explicitly requires KVM as part of the test
|
||||
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
tests/qemu-iotests/group | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
tests/qemu-iotests/group | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group
|
||||
index b973dc842d..f64d962a99 100644
|
||||
index 61a6d98ebd..85b2bf75a8 100644
|
||||
--- a/tests/qemu-iotests/group
|
||||
+++ b/tests/qemu-iotests/group
|
||||
@@ -136,7 +136,7 @@
|
||||
127 rw auto backing quick
|
||||
128 rw auto quick
|
||||
129 rw auto quick
|
||||
-130 rw auto quick
|
||||
+#ISSUES 130 rw auto quick
|
||||
131 rw auto quick
|
||||
132 rw auto quick
|
||||
133 auto quick
|
||||
@@ -159,7 +159,7 @@
|
||||
150 rw auto quick
|
||||
151 rw auto
|
||||
@ -35,12 +27,24 @@ index b973dc842d..f64d962a99 100644
|
||||
154 rw auto backing quick
|
||||
155 rw auto
|
||||
156 rw auto quick
|
||||
@@ -167,7 +167,7 @@
|
||||
158 rw auto quick
|
||||
@@ -168,7 +168,7 @@
|
||||
159 rw auto quick
|
||||
160 rw auto quick
|
||||
161 rw auto quick
|
||||
-162 auto quick
|
||||
+#ISSUES 162 auto quick
|
||||
163 rw auto
|
||||
165 rw auto quick
|
||||
169 rw auto quick migration
|
||||
@@ -227,9 +227,9 @@
|
||||
225 rw auto quick
|
||||
226 auto quick
|
||||
227 auto quick
|
||||
-229 auto quick
|
||||
+#ISSUES on ARM and POWER, we somtimes see failure, not sure why 229 auto quick
|
||||
231 auto quick
|
||||
232 auto quick
|
||||
233 auto quick
|
||||
234 auto quick migration
|
||||
-235 auto quick
|
||||
+#ISSUES - requires KVM 235 auto quick
|
@ -1,26 +0,0 @@
|
||||
From ce30b89aa845332c2c22287ffc9f03ea0414d438 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Fri, 6 Apr 2018 09:21:56 -0600
|
||||
Subject: [PATCH] configure: Modify python used for io tests
|
||||
|
||||
Because the block io tests are not yet ported to python3, change
|
||||
the python env var to explicitly reference python2.
|
||||
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
configure | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 039923ab4e..f08f2812e4 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -7418,7 +7418,7 @@ iotests_check="tests/qemu-iotests/check"
|
||||
|
||||
echo "# Automatically generated by configure - do not modify" > "$iotests_common_env"
|
||||
echo >> "$iotests_common_env"
|
||||
-echo "export PYTHON='$python'" >> "$iotests_common_env"
|
||||
+echo "export PYTHON='/usr/bin/python2 -B'" >> "$iotests_common_env"
|
||||
|
||||
if [ ! -e "$iotests_check" ]; then
|
||||
symlink "$source_path/$iotests_check" "$iotests_check"
|
@ -1,4 +1,4 @@
|
||||
From 0903be7746e8710c7e7856f8223441396fa4be72 Mon Sep 17 00:00:00 2001
|
||||
From d58238438527d65192caa54feac77221880b3ba2 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Fri, 13 Apr 2018 11:46:47 -0600
|
||||
Subject: [PATCH] tests: test-thread-pool is racy - add some barriers
|
||||
@ -7,20 +7,21 @@ I imagine there is more to be done to fix the memory consistency
|
||||
races here, but these added barriers at least let it pass on ppc64le,
|
||||
whereas before it would fail regularly there.
|
||||
|
||||
[BR: minor edits to pass qemu's checkpatch script]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
tests/test-thread-pool.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/tests/test-thread-pool.c b/tests/test-thread-pool.c
|
||||
index 9cdccb3a47..9f9e42af65 100644
|
||||
index 9cdccb3a47..2cbabaadd3 100644
|
||||
--- a/tests/test-thread-pool.c
|
||||
+++ b/tests/test-thread-pool.c
|
||||
@@ -171,6 +171,7 @@ static void do_test_cancel(bool sync)
|
||||
/* Cancel the jobs that haven't been started yet. */
|
||||
num_canceled = 0;
|
||||
for (i = 0; i < 100; i++) {
|
||||
+ smp_mb();
|
||||
+ smp_mb(); /* test is currently racy */
|
||||
if (atomic_cmpxchg(&data[i].n, 0, 3) == 0) {
|
||||
data[i].ret = -ECANCELED;
|
||||
if (sync) {
|
||||
@ -28,7 +29,7 @@ index 9cdccb3a47..9f9e42af65 100644
|
||||
g_assert_cmpint(num_canceled, <, 100);
|
||||
|
||||
for (i = 0; i < 100; i++) {
|
||||
+ smp_mb();
|
||||
+ smp_mb(); /* test is currently racy */
|
||||
if (data[i].aiocb && data[i].n != 3) {
|
||||
if (sync) {
|
||||
/* Canceling the others will be a blocking operation. */
|
||||
@ -36,7 +37,7 @@ index 9cdccb3a47..9f9e42af65 100644
|
||||
}
|
||||
g_assert_cmpint(active, ==, 0);
|
||||
for (i = 0; i < 100; i++) {
|
||||
+ smp_mb();
|
||||
+ smp_mb(); /* test is currently racy */
|
||||
if (data[i].n == 3) {
|
||||
g_assert_cmpint(data[i].ret, ==, -ECANCELED);
|
||||
g_assert(data[i].aiocb == NULL);
|
@ -1,4 +1,4 @@
|
||||
From 780702171c0213af1594a9ba8a0756073ded5f49 Mon Sep 17 00:00:00 2001
|
||||
From 197d3a02669dce7d0ac0207cea5c989cc12b391d Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Fri, 8 Jun 2018 11:04:36 -0600
|
||||
Subject: [PATCH] xen: add block resize support for xen disks
|
||||
@ -7,6 +7,7 @@ Provide monitor naming of xen disks, and plumb guest driver
|
||||
notification through xenstore of resizing instigated via the
|
||||
monitor.
|
||||
|
||||
[BR: minor edits to pass qemu's checkpatch script]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
block/block-backend.c | 12 +++++++++++-
|
||||
@ -18,7 +19,7 @@ Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
6 files changed, 57 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/block/block-backend.c b/block/block-backend.c
|
||||
index f2f75a977d..f62217d967 100644
|
||||
index 60d37a0c3d..1d41622942 100644
|
||||
--- a/block/block-backend.c
|
||||
+++ b/block/block-backend.c
|
||||
@@ -23,6 +23,7 @@
|
||||
@ -29,7 +30,7 @@ index f2f75a977d..f62217d967 100644
|
||||
|
||||
/* Number of coroutines to reserve per attached device model */
|
||||
#define COROUTINE_POOL_RESERVATION 64
|
||||
@@ -900,7 +901,9 @@ char *blk_get_attached_dev_id(BlockBackend *blk)
|
||||
@@ -910,7 +911,9 @@ char *blk_get_attached_dev_id(BlockBackend *blk)
|
||||
{
|
||||
DeviceState *dev;
|
||||
|
||||
@ -40,7 +41,7 @@ index f2f75a977d..f62217d967 100644
|
||||
dev = blk->dev;
|
||||
|
||||
if (!dev) {
|
||||
@@ -2005,6 +2008,13 @@ int blk_truncate(BlockBackend *blk, int64_t offset, PreallocMode prealloc,
|
||||
@@ -2012,6 +2015,13 @@ int blk_truncate(BlockBackend *blk, int64_t offset, PreallocMode prealloc,
|
||||
return bdrv_truncate(blk->root, offset, prealloc, errp);
|
||||
}
|
||||
|
||||
@ -55,10 +56,10 @@ index f2f75a977d..f62217d967 100644
|
||||
{
|
||||
BlkRwCo *rwco = opaque;
|
||||
diff --git a/blockdev.c b/blockdev.c
|
||||
index dcf8c8d2ab..bf1b82539c 100644
|
||||
index 81f95d920b..e67116974e 100644
|
||||
--- a/blockdev.c
|
||||
+++ b/blockdev.c
|
||||
@@ -3175,6 +3175,7 @@ void qmp_block_resize(bool has_device, const char *device,
|
||||
@@ -3091,6 +3091,7 @@ void qmp_block_resize(bool has_device, const char *device,
|
||||
{
|
||||
Error *local_err = NULL;
|
||||
BlockBackend *blk = NULL;
|
||||
@ -66,7 +67,7 @@ index dcf8c8d2ab..bf1b82539c 100644
|
||||
BlockDriverState *bs;
|
||||
AioContext *aio_context;
|
||||
int ret;
|
||||
@@ -3187,6 +3188,10 @@ void qmp_block_resize(bool has_device, const char *device,
|
||||
@@ -3103,6 +3104,10 @@ void qmp_block_resize(bool has_device, const char *device,
|
||||
return;
|
||||
}
|
||||
|
||||
@ -77,7 +78,7 @@ index dcf8c8d2ab..bf1b82539c 100644
|
||||
aio_context = bdrv_get_aio_context(bs);
|
||||
aio_context_acquire(aio_context);
|
||||
|
||||
@@ -3213,6 +3218,9 @@ void qmp_block_resize(bool has_device, const char *device,
|
||||
@@ -3129,6 +3134,9 @@ void qmp_block_resize(bool has_device, const char *device,
|
||||
|
||||
bdrv_drained_begin(bs);
|
||||
ret = blk_truncate(blk, size, PREALLOC_MODE_OFF, errp);
|
||||
@ -88,10 +89,10 @@ index dcf8c8d2ab..bf1b82539c 100644
|
||||
|
||||
out:
|
||||
diff --git a/hw/block/xen_disk.c b/hw/block/xen_disk.c
|
||||
index 2b56c5e868..a90df967a3 100644
|
||||
index ddd5c7cbfd..d9a55faf27 100644
|
||||
--- a/hw/block/xen_disk.c
|
||||
+++ b/hw/block/xen_disk.c
|
||||
@@ -759,6 +759,7 @@ static int blk_connect(struct XenDevice *xendev)
|
||||
@@ -761,6 +761,7 @@ static int blk_connect(struct XenDevice *xendev)
|
||||
int order, ring_ref;
|
||||
unsigned int ring_size, max_grants;
|
||||
unsigned int i;
|
||||
@ -99,7 +100,7 @@ index 2b56c5e868..a90df967a3 100644
|
||||
|
||||
trace_xen_disk_connect(xendev->name);
|
||||
|
||||
@@ -818,6 +819,13 @@ static int blk_connect(struct XenDevice *xendev)
|
||||
@@ -821,6 +822,13 @@ static int blk_connect(struct XenDevice *xendev)
|
||||
blk_ref(blkdev->blk);
|
||||
}
|
||||
blk_attach_dev_legacy(blkdev->blk, blkdev);
|
||||
@ -113,7 +114,7 @@ index 2b56c5e868..a90df967a3 100644
|
||||
blkdev->file_size = blk_getlength(blkdev->blk);
|
||||
if (blkdev->file_size < 0) {
|
||||
BlockDriverState *bs = blk_bs(blkdev->blk);
|
||||
@@ -968,6 +976,7 @@ static void blk_disconnect(struct XenDevice *xendev)
|
||||
@@ -971,6 +979,7 @@ static void blk_disconnect(struct XenDevice *xendev)
|
||||
if (blkdev->blk) {
|
||||
blk_set_aio_context(blkdev->blk, qemu_get_aio_context());
|
||||
blk_detach_dev(blkdev->blk, blkdev);
|
||||
@ -121,7 +122,7 @@ index 2b56c5e868..a90df967a3 100644
|
||||
blk_unref(blkdev->blk);
|
||||
blkdev->blk = NULL;
|
||||
}
|
||||
@@ -1015,6 +1024,21 @@ static void blk_event(struct XenDevice *xendev)
|
||||
@@ -1018,6 +1027,21 @@ static void blk_event(struct XenDevice *xendev)
|
||||
qemu_bh_schedule(blkdev->bh);
|
||||
}
|
||||
|
||||
@ -157,7 +158,7 @@ index 7efcdaa8fe..45c8c0b6f7 100644
|
||||
+
|
||||
#endif /* QEMU_HW_XEN_H */
|
||||
diff --git a/include/sysemu/block-backend.h b/include/sysemu/block-backend.h
|
||||
index 830d873f24..5ac2638d63 100644
|
||||
index c96bcdee14..0488cf45ff 100644
|
||||
--- a/include/sysemu/block-backend.h
|
||||
+++ b/include/sysemu/block-backend.h
|
||||
@@ -236,5 +236,6 @@ int coroutine_fn blk_co_copy_range(BlockBackend *blk_in, int64_t off_in,
|
28
0037-tests-qemu-iotests-Triple-timeout-o.patch
Normal file
28
0037-tests-qemu-iotests-Triple-timeout-o.patch
Normal file
@ -0,0 +1,28 @@
|
||||
From ea96fb81295d2c6e5ed20201dc3c9583d2b8bb4c Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Tue, 20 Nov 2018 15:46:41 -0700
|
||||
Subject: [PATCH] tests/qemu-iotests: Triple timeout of i/o tests due to obs
|
||||
environment
|
||||
|
||||
Executing tests in obs is very fickle, since you aren't guaranteed
|
||||
reliable cpu time. Triple the timeout for each test to help ensure
|
||||
we don't fail a test because the stars align against us.
|
||||
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
tests/qemu-iotests/common.qemu | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/tests/qemu-iotests/common.qemu b/tests/qemu-iotests/common.qemu
|
||||
index 7c87b897fa..2793e9fde6 100644
|
||||
--- a/tests/qemu-iotests/common.qemu
|
||||
+++ b/tests/qemu-iotests/common.qemu
|
||||
@@ -76,7 +76,7 @@ _timed_wait_for()
|
||||
timeout=yes
|
||||
|
||||
QEMU_STATUS[$h]=0
|
||||
- while IFS= read -t ${QEMU_COMM_TIMEOUT} resp <&${QEMU_OUT[$h]}
|
||||
+ while IFS= read -t $((${QEMU_COMM_TIMEOUT}*3)) resp <&${QEMU_OUT[$h]}
|
||||
do
|
||||
if [ -z "${silent}" ] && [ -z "${mismatch_only}" ]; then
|
||||
echo "${resp}" | _filter_testdir | _filter_qemu \
|
33
0038-tests-block-io-test-130-needs-some-.patch
Normal file
33
0038-tests-block-io-test-130-needs-some-.patch
Normal file
@ -0,0 +1,33 @@
|
||||
From 20ab0810e2eab9dc47fab57bb1949e1a84c8cba5 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Sun, 25 Nov 2018 18:01:36 -0700
|
||||
Subject: [PATCH] tests: block-io test 130 needs some delays
|
||||
|
||||
I haven't figured out exactly the best solution, but we need some delays
|
||||
in this test.
|
||||
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
tests/qemu-iotests/130 | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/tests/qemu-iotests/130 b/tests/qemu-iotests/130
|
||||
index f2f2706b28..69d7a7286a 100755
|
||||
--- a/tests/qemu-iotests/130
|
||||
+++ b/tests/qemu-iotests/130
|
||||
@@ -63,6 +63,7 @@ echo
|
||||
# Test that a backing file isn't written
|
||||
_launch_qemu -drive id=testdisk,file="$TEST_IMG",backing.file.filename="$TEST_IMG.base"
|
||||
_send_qemu_cmd $QEMU_HANDLE "commit testdisk" "(qemu)"
|
||||
+sleep 5
|
||||
_send_qemu_cmd $QEMU_HANDLE '' '(qemu)'
|
||||
_cleanup_qemu
|
||||
_img_info | _filter_img_info
|
||||
@@ -72,6 +73,7 @@ _img_info | _filter_img_info
|
||||
_make_test_img -F raw -b "$TEST_IMG.orig" 64M
|
||||
_launch_qemu -drive id=testdisk,file="$TEST_IMG",backing.file.filename="$TEST_IMG.base",backing.driver=$IMGFMT
|
||||
_send_qemu_cmd $QEMU_HANDLE "commit testdisk" "(qemu)"
|
||||
+sleep 5
|
||||
_send_qemu_cmd $QEMU_HANDLE '' '(qemu)'
|
||||
_cleanup_qemu
|
||||
_img_info | _filter_img_info
|
@ -1,37 +0,0 @@
|
||||
From eb6fab8ccd1380173483e35ff830d7c829d79742 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Maydell <peter.maydell@linaro.org>
|
||||
Date: Fri, 17 Aug 2018 17:14:04 +0100
|
||||
Subject: [PATCH] tests/boot-serial-test: Bump timeout to 6 minutes
|
||||
|
||||
On a SPARC host that I'm using as a build test machine, the
|
||||
boot-serial-test for the SPARC guest machines takes about 65
|
||||
seconds to execute. This means that it hits the current
|
||||
60 second timer on these tests. Push the timeout up so
|
||||
that it doesn't trigger spuriously on slow hosts like this one.
|
||||
|
||||
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
|
||||
Reviewed-by: Thomas Huth <thuth@redhat.com>
|
||||
Acked-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
|
||||
Message-id: 20180817161404.9420-1-peter.maydell@linaro.org
|
||||
(cherry picked from commit 627fce617868df87b3757375a2a0318ad2beb381)
|
||||
[BR: We have seen this issue occasionally for qemu-testsuite on armv7l]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
tests/boot-serial-test.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/tests/boot-serial-test.c b/tests/boot-serial-test.c
|
||||
index 952a2e7ead..7fbf7b35de 100644
|
||||
--- a/tests/boot-serial-test.c
|
||||
+++ b/tests/boot-serial-test.c
|
||||
@@ -116,8 +116,8 @@ static bool check_guest_output(const testdef_t *test, int fd)
|
||||
int i, nbr = 0, pos = 0, ccnt;
|
||||
char ch;
|
||||
|
||||
- /* Poll serial output... Wait at most 60 seconds */
|
||||
- for (i = 0; i < 6000; ++i) {
|
||||
+ /* Poll serial output... Wait at most 360 seconds */
|
||||
+ for (i = 0; i < 36000; ++i) {
|
||||
ccnt = 0;
|
||||
while (ccnt++ < 512 && (nbr = read(fd, &ch, 1)) == 1) {
|
||||
if (ch == test->expect[pos]) {
|
79
0039-xen_disk-Avoid-repeated-memory-allo.patch
Normal file
79
0039-xen_disk-Avoid-repeated-memory-allo.patch
Normal file
@ -0,0 +1,79 @@
|
||||
From f88c2f1b54da7a92420724189a6df37e6b3faed3 Mon Sep 17 00:00:00 2001
|
||||
From: Tim Smith <tim.smith@citrix.com>
|
||||
Date: Fri, 2 Nov 2018 10:01:09 +0000
|
||||
Subject: [PATCH] xen_disk: Avoid repeated memory allocation
|
||||
|
||||
xen_disk currently allocates memory to hold the data for each ioreq
|
||||
as that ioreq is used, and frees it afterwards. Because it requires
|
||||
page-aligned blocks, this interacts poorly with non-page-aligned
|
||||
allocations and balloons the heap.
|
||||
|
||||
Instead, allocate the maximum possible requirement, which is
|
||||
BLKIF_MAX_SEGMENTS_PER_REQUEST pages (currently 11 pages) when
|
||||
the ioreq is created, and keep that allocation until it is destroyed.
|
||||
Since the ioreqs themselves are re-used via a free list, this
|
||||
should actually improve memory usage.
|
||||
|
||||
Signed-off-by: Tim Smith <tim.smith@citrix.com>
|
||||
[BSC#1100408]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/block/xen_disk.c | 7 ++-----
|
||||
1 file changed, 2 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/hw/block/xen_disk.c b/hw/block/xen_disk.c
|
||||
index d9a55faf27..e9501ee34c 100644
|
||||
--- a/hw/block/xen_disk.c
|
||||
+++ b/hw/block/xen_disk.c
|
||||
@@ -110,7 +110,6 @@ static void ioreq_reset(struct ioreq *ioreq)
|
||||
memset(&ioreq->req, 0, sizeof(ioreq->req));
|
||||
ioreq->status = 0;
|
||||
ioreq->start = 0;
|
||||
- ioreq->buf = NULL;
|
||||
ioreq->size = 0;
|
||||
ioreq->presync = 0;
|
||||
|
||||
@@ -135,6 +134,7 @@ static struct ioreq *ioreq_start(struct XenBlkDev *blkdev)
|
||||
/* allocate new struct */
|
||||
ioreq = g_malloc0(sizeof(*ioreq));
|
||||
ioreq->blkdev = blkdev;
|
||||
+ ioreq->buf = qemu_memalign(XC_PAGE_SIZE, BLKIF_MAX_SEGMENTS_PER_REQUEST * XC_PAGE_SIZE);
|
||||
blkdev->requests_total++;
|
||||
qemu_iovec_init(&ioreq->v, 1);
|
||||
} else {
|
||||
@@ -317,14 +317,12 @@ static void qemu_aio_complete(void *opaque, int ret)
|
||||
if (ret == 0) {
|
||||
ioreq_grant_copy(ioreq);
|
||||
}
|
||||
- qemu_vfree(ioreq->buf);
|
||||
break;
|
||||
case BLKIF_OP_WRITE:
|
||||
case BLKIF_OP_FLUSH_DISKCACHE:
|
||||
if (!ioreq->req.nr_segments) {
|
||||
break;
|
||||
}
|
||||
- qemu_vfree(ioreq->buf);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -392,12 +390,10 @@ static int ioreq_runio_qemu_aio(struct ioreq *ioreq)
|
||||
{
|
||||
struct XenBlkDev *blkdev = ioreq->blkdev;
|
||||
|
||||
- ioreq->buf = qemu_memalign(XC_PAGE_SIZE, ioreq->size);
|
||||
if (ioreq->req.nr_segments &&
|
||||
(ioreq->req.operation == BLKIF_OP_WRITE ||
|
||||
ioreq->req.operation == BLKIF_OP_FLUSH_DISKCACHE) &&
|
||||
ioreq_grant_copy(ioreq)) {
|
||||
- qemu_vfree(ioreq->buf);
|
||||
goto err;
|
||||
}
|
||||
|
||||
@@ -1007,6 +1003,7 @@ static int blk_free(struct XenDevice *xendev)
|
||||
ioreq = QLIST_FIRST(&blkdev->freelist);
|
||||
QLIST_REMOVE(ioreq, list);
|
||||
qemu_iovec_destroy(&ioreq->v);
|
||||
+ qemu_vfree(ioreq->buf);
|
||||
g_free(ioreq);
|
||||
}
|
||||
|
@ -1,47 +0,0 @@
|
||||
From 8194d18811df960052d42d93cdc5105b8ef089cc Mon Sep 17 00:00:00 2001
|
||||
From: Fei Li <fli@suse.com>
|
||||
Date: Fri, 7 Sep 2018 14:15:05 +0800
|
||||
Subject: [PATCH] linux-headers: update
|
||||
|
||||
Update to Linux upstream commit 2ad0d5269970
|
||||
("Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net")
|
||||
|
||||
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
|
||||
(cherry picked from commit d36f7de82995a42b749c29c5b60ba31483995a42)
|
||||
[FL: bsc#1107489 - actually only backport the linux-header's update
|
||||
for the etoken cpu feature used on the s390x platform)
|
||||
Signed-off-by: Fei Li <fli@suse.com>
|
||||
---
|
||||
linux-headers/asm-s390/kvm.h | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/linux-headers/asm-s390/kvm.h b/linux-headers/asm-s390/kvm.h
|
||||
index 11def14301..1ab9901911 100644
|
||||
--- a/linux-headers/asm-s390/kvm.h
|
||||
+++ b/linux-headers/asm-s390/kvm.h
|
||||
@@ -4,7 +4,7 @@
|
||||
/*
|
||||
* KVM s390 specific structures and definitions
|
||||
*
|
||||
- * Copyright IBM Corp. 2008
|
||||
+ * Copyright IBM Corp. 2008, 2018
|
||||
*
|
||||
* Author(s): Carsten Otte <cotte@de.ibm.com>
|
||||
* Christian Borntraeger <borntraeger@de.ibm.com>
|
||||
@@ -225,6 +225,7 @@ struct kvm_guest_debug_arch {
|
||||
#define KVM_SYNC_FPRS (1UL << 8)
|
||||
#define KVM_SYNC_GSCB (1UL << 9)
|
||||
#define KVM_SYNC_BPBC (1UL << 10)
|
||||
+#define KVM_SYNC_ETOKEN (1UL << 11)
|
||||
/* length and alignment of the sdnx as a power of two */
|
||||
#define SDNXC 8
|
||||
#define SDNXL (1UL << SDNXC)
|
||||
@@ -258,6 +259,8 @@ struct kvm_sync_regs {
|
||||
struct {
|
||||
__u64 reserved1[2];
|
||||
__u64 gscb[4];
|
||||
+ __u64 etoken;
|
||||
+ __u64 etoken_extension;
|
||||
};
|
||||
};
|
||||
};
|
@ -1,183 +0,0 @@
|
||||
From 3ff69067e3144565368ace51672cbbeaefd62489 Mon Sep 17 00:00:00 2001
|
||||
From: Christian Borntraeger <borntraeger@de.ibm.com>
|
||||
Date: Tue, 31 Jul 2018 11:04:48 +0200
|
||||
Subject: [PATCH] s390x/kvm: add etoken facility
|
||||
|
||||
Provide the etoken facility. We need to handle cpu model, migration and
|
||||
clear reset.
|
||||
|
||||
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
|
||||
Acked-by: Janosch Frank <frankja@linux.ibm.com>
|
||||
Message-Id: <20180731090448.36662-3-borntraeger@de.ibm.com>
|
||||
Reviewed-by: David Hildenbrand <david@redhat.com>
|
||||
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
|
||||
(cherry picked from commit 27e84d4ebd25b981ab27cb590fe06d1b0fcd06d2)
|
||||
[FL: bsc#1107489]
|
||||
Signed-off-by: Fei Li <fli@suse.com>
|
||||
---
|
||||
target/s390x/cpu.h | 3 +++
|
||||
target/s390x/cpu_features.c | 3 ++-
|
||||
target/s390x/cpu_features_def.h | 3 ++-
|
||||
target/s390x/gen-features.c | 3 ++-
|
||||
target/s390x/kvm.c | 11 +++++++++++
|
||||
target/s390x/machine.c | 20 +++++++++++++++++++-
|
||||
6 files changed, 39 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h
|
||||
index 2c3dd2d189..21b2f211fe 100644
|
||||
--- a/target/s390x/cpu.h
|
||||
+++ b/target/s390x/cpu.h
|
||||
@@ -2,6 +2,7 @@
|
||||
* S/390 virtual CPU header
|
||||
*
|
||||
* Copyright (c) 2009 Ulrich Hecht
|
||||
+ * Copyright IBM Corp. 2012, 2018
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
@@ -68,6 +69,8 @@ struct CPUS390XState {
|
||||
uint32_t aregs[16]; /* access registers */
|
||||
uint8_t riccb[64]; /* runtime instrumentation control */
|
||||
uint64_t gscb[4]; /* guarded storage control */
|
||||
+ uint64_t etoken; /* etoken */
|
||||
+ uint64_t etoken_extension; /* etoken extension */
|
||||
|
||||
/* Fields up to this point are not cleared by initial CPU reset */
|
||||
struct {} start_initial_reset_fields;
|
||||
diff --git a/target/s390x/cpu_features.c b/target/s390x/cpu_features.c
|
||||
index 3b9e2745e9..e05e6aaaf4 100644
|
||||
--- a/target/s390x/cpu_features.c
|
||||
+++ b/target/s390x/cpu_features.c
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* CPU features/facilities for s390x
|
||||
*
|
||||
- * Copyright 2016 IBM Corp.
|
||||
+ * Copyright IBM Corp. 2016, 2018
|
||||
*
|
||||
* Author(s): David Hildenbrand <dahi@linux.vnet.ibm.com>
|
||||
*
|
||||
@@ -106,6 +106,7 @@ static const S390FeatDef s390_features[] = {
|
||||
FEAT_INIT("irbm", S390_FEAT_TYPE_STFL, 145, "Insert-reference-bits-multiple facility"),
|
||||
FEAT_INIT("msa8-base", S390_FEAT_TYPE_STFL, 146, "Message-security-assist-extension-8 facility (excluding subfunctions)"),
|
||||
FEAT_INIT("cmmnt", S390_FEAT_TYPE_STFL, 147, "CMM: ESSA-enhancement (no translate) facility"),
|
||||
+ FEAT_INIT("etoken", S390_FEAT_TYPE_STFL, 156, "Etoken facility"),
|
||||
|
||||
/* SCLP SCCB Byte 80 - 98 (bit numbers relative to byte-80) */
|
||||
FEAT_INIT("gsls", S390_FEAT_TYPE_SCLP_CONF_CHAR, 40, "SIE: Guest-storage-limit-suppression facility"),
|
||||
diff --git a/target/s390x/cpu_features_def.h b/target/s390x/cpu_features_def.h
|
||||
index 7c5915c7b2..ac2c947f30 100644
|
||||
--- a/target/s390x/cpu_features_def.h
|
||||
+++ b/target/s390x/cpu_features_def.h
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* CPU features/facilities for s390
|
||||
*
|
||||
- * Copyright 2016 IBM Corp.
|
||||
+ * Copyright IBM Corp. 2016, 2018
|
||||
*
|
||||
* Author(s): Michael Mueller <mimu@linux.vnet.ibm.com>
|
||||
* David Hildenbrand <dahi@linux.vnet.ibm.com>
|
||||
@@ -93,6 +93,7 @@ typedef enum {
|
||||
S390_FEAT_INSERT_REFERENCE_BITS_MULT,
|
||||
S390_FEAT_MSA_EXT_8,
|
||||
S390_FEAT_CMM_NT,
|
||||
+ S390_FEAT_ETOKEN,
|
||||
|
||||
/* Sclp Conf Char */
|
||||
S390_FEAT_SIE_GSLS,
|
||||
diff --git a/target/s390x/gen-features.c b/target/s390x/gen-features.c
|
||||
index 6626b6f565..5af042c003 100644
|
||||
--- a/target/s390x/gen-features.c
|
||||
+++ b/target/s390x/gen-features.c
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* S390 feature list generator
|
||||
*
|
||||
- * Copyright 2016 IBM Corp.
|
||||
+ * Copyright IBM Corp. 2016, 2018
|
||||
*
|
||||
* Author(s): Michael Mueller <mimu@linux.vnet.ibm.com>
|
||||
* David Hildenbrand <dahi@linux.vnet.ibm.com>
|
||||
@@ -471,6 +471,7 @@ static uint16_t full_GEN14_GA1[] = {
|
||||
S390_FEAT_GROUP_MSA_EXT_7,
|
||||
S390_FEAT_GROUP_MSA_EXT_8,
|
||||
S390_FEAT_CMM_NT,
|
||||
+ S390_FEAT_ETOKEN,
|
||||
S390_FEAT_HPMA2,
|
||||
S390_FEAT_SIE_KSS,
|
||||
S390_FEAT_GROUP_MULTIPLE_EPOCH_PTFF,
|
||||
diff --git a/target/s390x/kvm.c b/target/s390x/kvm.c
|
||||
index d923cf4240..af83955e5f 100644
|
||||
--- a/target/s390x/kvm.c
|
||||
+++ b/target/s390x/kvm.c
|
||||
@@ -493,6 +493,12 @@ int kvm_arch_put_registers(CPUState *cs, int level)
|
||||
cs->kvm_run->kvm_dirty_regs |= KVM_SYNC_BPBC;
|
||||
}
|
||||
|
||||
+ if (can_sync_regs(cs, KVM_SYNC_ETOKEN)) {
|
||||
+ cs->kvm_run->s.regs.etoken = env->etoken;
|
||||
+ cs->kvm_run->s.regs.etoken_extension = env->etoken_extension;
|
||||
+ cs->kvm_run->kvm_dirty_regs |= KVM_SYNC_ETOKEN;
|
||||
+ }
|
||||
+
|
||||
/* Finally the prefix */
|
||||
if (can_sync_regs(cs, KVM_SYNC_PREFIX)) {
|
||||
cs->kvm_run->s.regs.prefix = env->psa;
|
||||
@@ -607,6 +613,11 @@ int kvm_arch_get_registers(CPUState *cs)
|
||||
env->bpbc = cs->kvm_run->s.regs.bpbc;
|
||||
}
|
||||
|
||||
+ if (can_sync_regs(cs, KVM_SYNC_ETOKEN)) {
|
||||
+ env->etoken = cs->kvm_run->s.regs.etoken;
|
||||
+ env->etoken_extension = cs->kvm_run->s.regs.etoken_extension;
|
||||
+ }
|
||||
+
|
||||
/* pfault parameters */
|
||||
if (can_sync_regs(cs, KVM_SYNC_PFAULT)) {
|
||||
env->pfault_token = cs->kvm_run->s.regs.pft;
|
||||
diff --git a/target/s390x/machine.c b/target/s390x/machine.c
|
||||
index bd3230d027..cb792aa103 100644
|
||||
--- a/target/s390x/machine.c
|
||||
+++ b/target/s390x/machine.c
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* S390x machine definitions and functions
|
||||
*
|
||||
- * Copyright IBM Corp. 2014
|
||||
+ * Copyright IBM Corp. 2014, 2018
|
||||
*
|
||||
* Authors:
|
||||
* Thomas Huth <thuth@linux.vnet.ibm.com>
|
||||
@@ -216,6 +216,23 @@ const VMStateDescription vmstate_bpbc = {
|
||||
}
|
||||
};
|
||||
|
||||
+static bool etoken_needed(void *opaque)
|
||||
+{
|
||||
+ return s390_has_feat(S390_FEAT_ETOKEN);
|
||||
+}
|
||||
+
|
||||
+const VMStateDescription vmstate_etoken = {
|
||||
+ .name = "cpu/etoken",
|
||||
+ .version_id = 1,
|
||||
+ .minimum_version_id = 1,
|
||||
+ .needed = etoken_needed,
|
||||
+ .fields = (VMStateField[]) {
|
||||
+ VMSTATE_UINT64(env.etoken, S390CPU),
|
||||
+ VMSTATE_UINT64(env.etoken_extension, S390CPU),
|
||||
+ VMSTATE_END_OF_LIST()
|
||||
+ }
|
||||
+};
|
||||
+
|
||||
const VMStateDescription vmstate_s390_cpu = {
|
||||
.name = "cpu",
|
||||
.post_load = cpu_post_load,
|
||||
@@ -251,6 +268,7 @@ const VMStateDescription vmstate_s390_cpu = {
|
||||
&vmstate_exval,
|
||||
&vmstate_gscb,
|
||||
&vmstate_bpbc,
|
||||
+ &vmstate_etoken,
|
||||
NULL
|
||||
},
|
||||
};
|
@ -1,90 +0,0 @@
|
||||
From 6edbf80f95ecc20ced40004ce0e882e1cf756b98 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
|
||||
Date: Wed, 22 Aug 2018 19:02:48 +0200
|
||||
Subject: [PATCH] seccomp: prefer SCMP_ACT_KILL_PROCESS if available
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
The upcoming libseccomp release should have SCMP_ACT_KILL_PROCESS
|
||||
action (https://github.com/seccomp/libseccomp/issues/96).
|
||||
|
||||
SCMP_ACT_KILL_PROCESS is preferable to immediately terminate the
|
||||
offending process, rather than having the SIGSYS handler running.
|
||||
|
||||
Use SECCOMP_GET_ACTION_AVAIL to check availability of kernel support,
|
||||
as libseccomp will fallback on SCMP_ACT_KILL otherwise, and we still
|
||||
prefer SCMP_ACT_TRAP.
|
||||
|
||||
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
|
||||
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
|
||||
Acked-by: Eduardo Otubo <otubo@redhat.com>
|
||||
(cherry picked from commit bda08a5764d470f101fa38635d30b41179a313e1)
|
||||
[LD: BSC#1106222 CVE-2018-15746]
|
||||
Signed-off-by: Larry Dewey <ldewey@suse.com>
|
||||
---
|
||||
qemu-seccomp.c | 31 ++++++++++++++++++++++++++++++-
|
||||
1 file changed, 30 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/qemu-seccomp.c b/qemu-seccomp.c
|
||||
index 9cd8eb9499..f0c833f3ca 100644
|
||||
--- a/qemu-seccomp.c
|
||||
+++ b/qemu-seccomp.c
|
||||
@@ -20,6 +20,7 @@
|
||||
#include <sys/prctl.h>
|
||||
#include <seccomp.h>
|
||||
#include "sysemu/seccomp.h"
|
||||
+#include <linux/seccomp.h>
|
||||
|
||||
/* For some architectures (notably ARM) cacheflush is not supported until
|
||||
* libseccomp 2.2.3, but configure enforces that we are using a more recent
|
||||
@@ -107,12 +108,40 @@ static const struct QemuSeccompSyscall blacklist[] = {
|
||||
{ SCMP_SYS(sched_get_priority_min), QEMU_SECCOMP_SET_RESOURCECTL },
|
||||
};
|
||||
|
||||
+static inline __attribute__((unused)) int
|
||||
+qemu_seccomp(unsigned int operation, unsigned int flags, void *args)
|
||||
+{
|
||||
+#ifdef __NR_seccomp
|
||||
+ return syscall(__NR_seccomp, operation, flags, args);
|
||||
+#else
|
||||
+ errno = ENOSYS;
|
||||
+ return -1;
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+static uint32_t qemu_seccomp_get_kill_action(void)
|
||||
+{
|
||||
+#if defined(SECCOMP_GET_ACTION_AVAIL) && defined(SCMP_ACT_KILL_PROCESS) && \
|
||||
+ defined(SECCOMP_RET_KILL_PROCESS)
|
||||
+ {
|
||||
+ uint32_t action = SECCOMP_RET_KILL_PROCESS;
|
||||
+
|
||||
+ if (qemu_seccomp(SECCOMP_GET_ACTION_AVAIL, 0, &action) == 0) {
|
||||
+ return SCMP_ACT_KILL_PROCESS;
|
||||
+ }
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
+ return SCMP_ACT_TRAP;
|
||||
+}
|
||||
+
|
||||
|
||||
static int seccomp_start(uint32_t seccomp_opts)
|
||||
{
|
||||
int rc = 0;
|
||||
unsigned int i = 0;
|
||||
scmp_filter_ctx ctx;
|
||||
+ uint32_t action = qemu_seccomp_get_kill_action();
|
||||
|
||||
ctx = seccomp_init(SCMP_ACT_ALLOW);
|
||||
if (ctx == NULL) {
|
||||
@@ -125,7 +154,7 @@ static int seccomp_start(uint32_t seccomp_opts)
|
||||
continue;
|
||||
}
|
||||
|
||||
- rc = seccomp_rule_add_array(ctx, SCMP_ACT_KILL, blacklist[i].num,
|
||||
+ rc = seccomp_rule_add_array(ctx, action, blacklist[i].num,
|
||||
blacklist[i].narg, blacklist[i].arg_cmp);
|
||||
if (rc < 0) {
|
||||
goto seccomp_return;
|
@ -1,53 +0,0 @@
|
||||
From a9794287e84a87f4372a4aed027319491ec5eb68 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
|
||||
Date: Wed, 22 Aug 2018 19:02:49 +0200
|
||||
Subject: [PATCH] configure: require libseccomp 2.2.0
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
The following patch is going to require TSYNC, which is only available
|
||||
since libseccomp 2.2.0.
|
||||
|
||||
libseccomp 2.2.0 was released February 12, 2015.
|
||||
|
||||
According to repology, libseccomp version in different distros:
|
||||
|
||||
RHEL-7: 2.3.1
|
||||
Debian (Stretch): 2.3.1
|
||||
OpenSUSE Leap 15: 2.3.2
|
||||
Ubuntu (Xenial): 2.3.1
|
||||
|
||||
This will drop support for -sandbox on:
|
||||
|
||||
Debian (Jessie): 2.1.1 (but 2.2.3 in backports)
|
||||
|
||||
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
|
||||
Acked-by: Eduardo Otubo <otubo@redhat.com>
|
||||
(cherry picked from commit d0699bd37c48067cffbd80383172efc29da6d2f9)
|
||||
[LD: BSC#1106222 CVE-2018-15746]
|
||||
Signed-off-by: Larry Dewey <ldewey@suse.com>
|
||||
---
|
||||
configure | 7 ++-----
|
||||
1 file changed, 2 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index f08f2812e4..bceba37e90 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -2216,13 +2216,10 @@ fi
|
||||
##########################################
|
||||
# libseccomp check
|
||||
|
||||
+libseccomp_minver="2.2.0"
|
||||
if test "$seccomp" != "no" ; then
|
||||
case "$cpu" in
|
||||
- i386|x86_64)
|
||||
- libseccomp_minver="2.1.0"
|
||||
- ;;
|
||||
- mips)
|
||||
- libseccomp_minver="2.2.0"
|
||||
+ i386|x86_64|mips)
|
||||
;;
|
||||
arm|aarch64)
|
||||
libseccomp_minver="2.2.3"
|
@ -1,57 +0,0 @@
|
||||
From e31313eacacefad16dc536b883e139a041fd2c28 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
|
||||
Date: Wed, 22 Aug 2018 19:02:50 +0200
|
||||
Subject: [PATCH] seccomp: set the seccomp filter to all threads
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
When using "-seccomp on", the seccomp policy is only applied to the
|
||||
main thread, the vcpu worker thread and other worker threads created
|
||||
after seccomp policy is applied; the seccomp policy is not applied to
|
||||
e.g. the RCU thread because it is created before the seccomp policy is
|
||||
applied and SECCOMP_FILTER_FLAG_TSYNC isn't used.
|
||||
|
||||
This can be verified with
|
||||
for task in /proc/`pidof qemu`/task/*; do cat $task/status | grep Secc ; done
|
||||
Seccomp: 2
|
||||
Seccomp: 0
|
||||
Seccomp: 0
|
||||
Seccomp: 2
|
||||
Seccomp: 2
|
||||
Seccomp: 2
|
||||
|
||||
Starting with libseccomp 2.2.0 and kernel >= 3.17, we can use
|
||||
seccomp_attr_set(ctx, > SCMP_FLTATR_CTL_TSYNC, 1) to update the policy
|
||||
on all threads.
|
||||
|
||||
libseccomp requirement was bumped to 2.2.0 in previous patch.
|
||||
libseccomp should fail to set the filter if it can't honour
|
||||
SCMP_FLTATR_CTL_TSYNC (untested), and thus -sandbox will now fail on
|
||||
kernel < 3.17.
|
||||
|
||||
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
|
||||
Acked-by: Eduardo Otubo <otubo@redhat.com>
|
||||
(cherry picked from commit 70dfabeaa79ba4d7a3b699abe1a047c8012db114)
|
||||
[LD: BSC#1106222 CVE-2018-15746]
|
||||
Signed-off-by: Larry Dewey <ldewey@suse.com>
|
||||
---
|
||||
qemu-seccomp.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/qemu-seccomp.c b/qemu-seccomp.c
|
||||
index f0c833f3ca..4729eb107f 100644
|
||||
--- a/qemu-seccomp.c
|
||||
+++ b/qemu-seccomp.c
|
||||
@@ -149,6 +149,11 @@ static int seccomp_start(uint32_t seccomp_opts)
|
||||
goto seccomp_return;
|
||||
}
|
||||
|
||||
+ rc = seccomp_attr_set(ctx, SCMP_FLTATR_CTL_TSYNC, 1);
|
||||
+ if (rc != 0) {
|
||||
+ goto seccomp_return;
|
||||
+ }
|
||||
+
|
||||
for (i = 0; i < ARRAY_SIZE(blacklist); i++) {
|
||||
if (!(seccomp_opts & blacklist[i].set)) {
|
||||
continue;
|
@ -1,39 +0,0 @@
|
||||
From b481a5487b92fa40b74d8bf8c786a35d09eb97cd Mon Sep 17 00:00:00 2001
|
||||
From: Yi Min Zhao <zyimin@linux.ibm.com>
|
||||
Date: Thu, 31 May 2018 11:29:37 +0800
|
||||
Subject: [PATCH] sandbox: disable -sandbox if CONFIG_SECCOMP undefined
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
If CONFIG_SECCOMP is undefined, the option 'elevatedprivileges' remains
|
||||
compiled. This would make libvirt set the corresponding capability and
|
||||
then trigger failure during guest startup. This patch moves the code
|
||||
regarding seccomp command line options to qemu-seccomp.c file and
|
||||
wraps qemu_opts_foreach finding sandbox option with CONFIG_SECCOMP.
|
||||
Because parse_sandbox() is moved into qemu-seccomp.c file, change
|
||||
seccomp_start() to static function.
|
||||
|
||||
Signed-off-by: Yi Min Zhao <zyimin@linux.ibm.com>
|
||||
Reviewed-by: Ján Tomko <jtomko@redhat.com>
|
||||
Tested-by: Ján Tomko <jtomko@redhat.com>
|
||||
Acked-by: Eduardo Otubo <otubo@redhat.com>
|
||||
(cherry picked from commit 9d0fdecbad130f01b602e35e87c6d3fad5821d6e)
|
||||
[LD: BSC#1106222 CVE-2018-15746]
|
||||
Signed-off-by: Larry Dewey <ldewey@suse.com>
|
||||
---
|
||||
qemu-seccomp.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/qemu-seccomp.c b/qemu-seccomp.c
|
||||
index 4729eb107f..5507d9c4ef 100644
|
||||
--- a/qemu-seccomp.c
|
||||
+++ b/qemu-seccomp.c
|
||||
@@ -135,7 +135,6 @@ static uint32_t qemu_seccomp_get_kill_action(void)
|
||||
return SCMP_ACT_TRAP;
|
||||
}
|
||||
|
||||
-
|
||||
static int seccomp_start(uint32_t seccomp_opts)
|
||||
{
|
||||
int rc = 0;
|
@ -1,68 +0,0 @@
|
||||
From 79883c93023ec6d7b55cf2a3e91afcfda44e3a61 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Marc-Andr=C3=A9=20Lureau?= <marcandre.lureau@redhat.com>
|
||||
Date: Thu, 30 Aug 2018 16:33:48 +0200
|
||||
Subject: [PATCH] seccomp: check TSYNC host capability
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Remove -sandbox option if the host is not capable of TSYNC, since the
|
||||
sandbox will fail at setup time otherwise. This will help libvirt, for
|
||||
ex, to figure out if -sandbox will work.
|
||||
|
||||
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
|
||||
Signed-off-by: Eduardo Otubo <otubo@redhat.com>
|
||||
Acked-by: Eduardo Otubo <otubo@redhat.com>
|
||||
(cherry picked from commit 5780760f5ea6163939a5dabe7427318b4f07d1a2)
|
||||
[LD: BSC#1106222 CVE-2018-15746]
|
||||
Signed-off-by: Larry Dewey <ldewey@suse.com>
|
||||
---
|
||||
qemu-seccomp.c | 19 ++++++++++++++++++-
|
||||
vl.c | 4 ++--
|
||||
2 files changed, 20 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/qemu-seccomp.c b/qemu-seccomp.c
|
||||
index 5507d9c4ef..1d94bdaf55 100644
|
||||
--- a/qemu-seccomp.c
|
||||
+++ b/qemu-seccomp.c
|
||||
@@ -281,7 +281,24 @@ static QemuOptsList qemu_sandbox_opts = {
|
||||
|
||||
static void seccomp_register(void)
|
||||
{
|
||||
- qemu_add_opts(&qemu_sandbox_opts);
|
||||
+ bool add = false;
|
||||
+
|
||||
+ /* FIXME: use seccomp_api_get() >= 2 check when released */
|
||||
+
|
||||
+#if defined(SECCOMP_FILTER_FLAG_TSYNC)
|
||||
+ int check;
|
||||
+
|
||||
+ /* check host TSYNC capability, it returns errno == ENOSYS if unavailable */
|
||||
+ check = qemu_seccomp(SECCOMP_SET_MODE_FILTER,
|
||||
+ SECCOMP_FILTER_FLAG_TSYNC, NULL);
|
||||
+ if (check < 0 && errno == EFAULT) {
|
||||
+ add = true;
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
+ if (add) {
|
||||
+ qemu_add_opts(&qemu_sandbox_opts);
|
||||
+ }
|
||||
}
|
||||
opts_init(seccomp_register);
|
||||
#endif
|
||||
diff --git a/vl.c b/vl.c
|
||||
index 3af5bcdc9e..a0295abb3e 100644
|
||||
--- a/vl.c
|
||||
+++ b/vl.c
|
||||
@@ -4015,8 +4015,8 @@ int main(int argc, char **argv, char **envp)
|
||||
}
|
||||
|
||||
#ifdef CONFIG_SECCOMP
|
||||
- if (qemu_opts_foreach(qemu_find_opts("sandbox"),
|
||||
- parse_sandbox, NULL, NULL)) {
|
||||
+ olist = qemu_find_opts_err("sandbox", NULL);
|
||||
+ if (olist && qemu_opts_foreach(olist, parse_sandbox, NULL, NULL)) {
|
||||
exit(1);
|
||||
}
|
||||
#endif
|
55
_constraints
55
_constraints
@ -1,25 +1,58 @@
|
||||
<constraints>
|
||||
<!-- All builds are fine with 8GB disk -->
|
||||
<overwrite>
|
||||
<conditions>
|
||||
<package>qemu-testsuite</package>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<physicalmemory>
|
||||
<size unit="M">1500</size>
|
||||
</physicalmemory>
|
||||
</hardware>
|
||||
</overwrite>
|
||||
<overwrite>
|
||||
<conditions>
|
||||
<arch>i586</arch>
|
||||
<arch>x86_64</arch>
|
||||
<arch>ppc64</arch>
|
||||
<arch>ppc64le</arch>
|
||||
<arch>s390x</arch>
|
||||
<package>qemu</package>
|
||||
<package>qemu-linux-user</package>
|
||||
<package>qemu-testsuite</package>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<disk>
|
||||
<size unit="G">7</size>
|
||||
<size unit="G">8</size>
|
||||
</disk>
|
||||
</hardware>
|
||||
</overwrite>
|
||||
<!-- To build qemu, s390x needs more than the default memory -->
|
||||
<overwrite>
|
||||
<conditions>
|
||||
<arch>s390x</arch>
|
||||
<package>qemu</package>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<memory>
|
||||
<size unit="M">1200</size>
|
||||
</memory>
|
||||
</hardware>
|
||||
</overwrite>
|
||||
<!-- Excluding ARM, qemu-testsuite needs more than the default memory -->
|
||||
<overwrite>
|
||||
<conditions>
|
||||
<arch>ppc64</arch>
|
||||
<arch>ppc64le</arch>
|
||||
<package>qemu-testsuite</package>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<memory>
|
||||
<size unit="M">3600</size>
|
||||
</memory>
|
||||
</hardware>
|
||||
</overwrite>
|
||||
<!-- And x86 needs even more, as certain tests are x86 only -->
|
||||
<overwrite>
|
||||
<conditions>
|
||||
<arch>i586</arch>
|
||||
<arch>x86_64</arch>
|
||||
<package>qemu-testsuite</package>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<memory>
|
||||
<size unit="M">4400</size>
|
||||
</memory>
|
||||
</hardware>
|
||||
</overwrite>
|
||||
</constraints>
|
||||
|
@ -9,7 +9,7 @@ to find enough opportunities in the ipxe code and data to reduce
|
||||
its size, and found that using a more recent compiler would be the
|
||||
best solution to keeping the rom size within the 64K size limit.
|
||||
|
||||
Signed-Off-By: Bruce Rogers <brogers@suse.com>
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -24,7 +24,7 @@ ECHO := echo
|
||||
|
@ -6,8 +6,8 @@ ConditionVirtualization=no
|
||||
[Service]
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
ExecStart=/bin/echo 1 > /sys/kernel/mm/ksm/run
|
||||
ExecStop=/bin/echo 0 > /sys/kernel/mm/ksm/run
|
||||
ExecStart=/bin/bash -c "/bin/echo 1 > /sys/kernel/mm/ksm/run"
|
||||
ExecStop=/bin/bash -c "/bin/echo 0 > /sys/kernel/mm/ksm/run"
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8d7af64fe8bd5ea5c3bdf17131a8b858491bcce1ee3839425a6d91fb821b5713
|
||||
size 35624516
|
Binary file not shown.
3
qemu-3.1.0.tar.xz
Normal file
3
qemu-3.1.0.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:6a0508df079a0a33c2487ca936a56c12122f105b8a96a44374704bef6c69abfc
|
||||
size 36070104
|
BIN
qemu-3.1.0.tar.xz.sig
Normal file
BIN
qemu-3.1.0.tar.xz.sig
Normal file
Binary file not shown.
@ -1,3 +1,74 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 12 21:33:15 UTC 2018 - Bruce Rogers <brogers@suse.com>
|
||||
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-3.1
|
||||
* Patches added:
|
||||
0039-xen_disk-Avoid-repeated-memory-allo.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 11 17:38:47 UTC 2018 - Bruce Rogers <brogers@suse.com>
|
||||
|
||||
- Update to v3.1.0: See http://wiki.qemu.org/ChangeLog/3.1
|
||||
Take note that ongoing feature deprecation is tracked at both
|
||||
http://wiki.qemu-project.org/Features/LegacyRemoval and in
|
||||
Appendix B of the qemu-doc.* files installed with the qemu package
|
||||
Some noteworthy changes:
|
||||
* Multithreaded TCG on x86 is considered supportable
|
||||
* Improvements to netlink emulation
|
||||
* Support for usbfs ioctls
|
||||
* xtensa-linux-user support the bFLT format
|
||||
* Patches dropped (upstream unless otherwise noted):
|
||||
0033-migration-warn-about-inconsistent-s.patch (shouldn't be needed anymore)
|
||||
0035-configure-Modify-python-used-for-io.patch (upstream now python3 friendly)
|
||||
0039-tests-boot-serial-test-Bump-timeout.patch
|
||||
0040-linux-headers-update.patch
|
||||
0041-s390x-kvm-add-etoken-facility.patch
|
||||
0042-seccomp-prefer-SCMP_ACT_KILL_PROCES.patch
|
||||
0043-configure-require-libseccomp-2.2.0.patch
|
||||
0044-seccomp-set-the-seccomp-filter-to-a.patch
|
||||
0045-sandbox-disable-sandbox-if-CONFIG_S.patch
|
||||
0046-seccomp-check-TSYNC-host-capability.patch
|
||||
0047-linux-user-init_guest_space-Try-to-.patch
|
||||
0048-ne2000-fix-possible-out-of-bound-ac.patch
|
||||
0049-rtl8139-fix-possible-out-of-bound-a.patch
|
||||
0050-pcnet-fix-possible-buffer-overflow.patch
|
||||
0051-net-ignore-packet-size-greater-than.patch
|
||||
0052-lsi53c895a-check-message-length-val.patch
|
||||
0053-nvme-fix-oob-access-issue-CVE-2018-.patch (fixed differently upstream)
|
||||
* Patches renamed:
|
||||
0034-smbios-Add-1-terminator-if-any-stri.patch
|
||||
-> 0033-smbios-Add-1-terminator-if-any-stri.patch
|
||||
0036-qemu-io-tests-comment-out-problemat.patch
|
||||
-> 0034-qemu-io-tests-comment-out-problemat.patch
|
||||
0037-tests-test-thread-pool-is-racy-add-.patch
|
||||
-> 0035-tests-test-thread-pool-is-racy-add-.patch
|
||||
0038-xen-add-block-resize-support-for-xe.patch
|
||||
-> 0036-xen-add-block-resize-support-for-xe.patch
|
||||
* Patches added:
|
||||
0037-tests-qemu-iotests-Triple-timeout-o.patch
|
||||
0038-tests-block-io-test-130-needs-some-.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-3.1
|
||||
- Tweaked patches we carry to pass qemu's checkpatch checker
|
||||
- Modify update_git.sh script to enable packaging qemu from development
|
||||
time sources, not just at release time.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 8 18:07:32 UTC 2018 - Bruce Rogers <brogers@suse.com>
|
||||
|
||||
- Re-sync openSUSE and SUSE SLE qemu packages. This changes file
|
||||
is the openSUSE one with this entry providing the intervening
|
||||
SLE CVE, FATE, and bugzilla references, which are still addressed
|
||||
in this package, and not yet called out in this changes file.
|
||||
* bsc#1112499
|
||||
* Patches added:
|
||||
0047-linux-user-init_guest_space-Try-to-.patch
|
||||
0048-ne2000-fix-possible-out-of-bound-ac.patch
|
||||
0049-rtl8139-fix-possible-out-of-bound-a.patch
|
||||
0050-pcnet-fix-possible-buffer-overflow.patch
|
||||
0051-net-ignore-packet-size-greater-than.patch
|
||||
0052-lsi53c895a-check-message-length-val.patch
|
||||
0053-nvme-fix-oob-access-issue-CVE-2018-.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 5 16:52:18 UTC 2018 - Larry Dewey <ldewey@suse.com>
|
||||
|
||||
|
@ -22,14 +22,15 @@ Url: https://www.qemu.org/
|
||||
Summary: CPU emulator for user space
|
||||
License: BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
|
||||
Group: System/Emulators/PC
|
||||
Version: 3.0.0
|
||||
%define qemuver 3.1.0
|
||||
%define srcver 3.1.0
|
||||
Version: %qemuver
|
||||
Release: 0
|
||||
%define qemuver 3.0.0
|
||||
Source: https://wiki.qemu.org/download/%{srcname}-%{version}.tar.xz
|
||||
Source99: https://wiki.qemu.org/download/%{srcname}-%{version}.tar.xz.sig
|
||||
Source: https://wiki.qemu.org/download/%{srcname}-%{srcver}.tar.xz
|
||||
Source99: https://wiki.qemu.org/download/%{srcname}-%{srcver}.tar.xz.sig
|
||||
Source100: %{srcname}.keyring
|
||||
Source400: update_git.sh
|
||||
# Upstream First -- https://wiki.qemu-project.org/Contribute/SubmitAPatch
|
||||
# Upstream First -- https://wiki.qemu.org/Contribute/SubmitAPatch
|
||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
|
||||
Patch0002: 0002-qemu-binfmt-conf-Modify-default-pat.patch
|
||||
@ -63,20 +64,13 @@ Patch0029: 0029-tests-Add-QOM-property-unit-tests.patch
|
||||
Patch0030: 0030-tests-Add-scsi-disk-test.patch
|
||||
Patch0031: 0031-Switch-order-of-libraries-for-mpath.patch
|
||||
Patch0032: 0032-Make-installed-scripts-explicitly-p.patch
|
||||
Patch0033: 0033-migration-warn-about-inconsistent-s.patch
|
||||
Patch0034: 0034-smbios-Add-1-terminator-if-any-stri.patch
|
||||
Patch0035: 0035-configure-Modify-python-used-for-io.patch
|
||||
Patch0036: 0036-qemu-io-tests-comment-out-problemat.patch
|
||||
Patch0037: 0037-tests-test-thread-pool-is-racy-add-.patch
|
||||
Patch0038: 0038-xen-add-block-resize-support-for-xe.patch
|
||||
Patch0039: 0039-tests-boot-serial-test-Bump-timeout.patch
|
||||
Patch0040: 0040-linux-headers-update.patch
|
||||
Patch0041: 0041-s390x-kvm-add-etoken-facility.patch
|
||||
Patch0042: 0042-seccomp-prefer-SCMP_ACT_KILL_PROCES.patch
|
||||
Patch0043: 0043-configure-require-libseccomp-2.2.0.patch
|
||||
Patch0044: 0044-seccomp-set-the-seccomp-filter-to-a.patch
|
||||
Patch0045: 0045-sandbox-disable-sandbox-if-CONFIG_S.patch
|
||||
Patch0046: 0046-seccomp-check-TSYNC-host-capability.patch
|
||||
Patch0033: 0033-smbios-Add-1-terminator-if-any-stri.patch
|
||||
Patch0034: 0034-qemu-io-tests-comment-out-problemat.patch
|
||||
Patch0035: 0035-tests-test-thread-pool-is-racy-add-.patch
|
||||
Patch0036: 0036-xen-add-block-resize-support-for-xe.patch
|
||||
Patch0037: 0037-tests-qemu-iotests-Triple-timeout-o.patch
|
||||
Patch0038: 0038-tests-block-io-test-130-needs-some-.patch
|
||||
Patch0039: 0039-xen_disk-Avoid-repeated-memory-allo.patch
|
||||
# Please do not add QEMU patches manually here.
|
||||
# Run update_git.sh to regenerate this queue.
|
||||
ExcludeArch: s390
|
||||
@ -107,7 +101,7 @@ architecture. The syscall interface is intercepted and execution below the
|
||||
syscall layer occurs on the native hardware and operating system.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{srcname}-%{version}
|
||||
%setup -q -n %{srcname}-%{expand:%%(SV=%{srcver};echo ${SV%%%%+git*})}
|
||||
%patch0001 -p1
|
||||
%patch0002 -p1
|
||||
%patch0003 -p1
|
||||
@ -147,13 +141,6 @@ syscall layer occurs on the native hardware and operating system.
|
||||
%patch0037 -p1
|
||||
%patch0038 -p1
|
||||
%patch0039 -p1
|
||||
%patch0040 -p1
|
||||
%patch0041 -p1
|
||||
%patch0042 -p1
|
||||
%patch0043 -p1
|
||||
%patch0044 -p1
|
||||
%patch0045 -p1
|
||||
%patch0046 -p1
|
||||
|
||||
%build
|
||||
./configure \
|
||||
@ -180,13 +167,16 @@ syscall layer occurs on the native hardware and operating system.
|
||||
--enable-attr \
|
||||
--disable-blobs \
|
||||
--disable-bluez \
|
||||
--disable-bochs \
|
||||
--disable-brlapi \
|
||||
--disable-bzip2 \
|
||||
--disable-cap-ng \
|
||||
--disable-capstone \
|
||||
--disable-cloop \
|
||||
--enable-coroutine-pool \
|
||||
--disable-curl \
|
||||
--disable-curses \
|
||||
--disable-dmg \
|
||||
--disable-fdt \
|
||||
--disable-gcrypt \
|
||||
--disable-glusterfs \
|
||||
@ -197,6 +187,10 @@ syscall layer occurs on the native hardware and operating system.
|
||||
--disable-jemalloc \
|
||||
--disable-kvm \
|
||||
--disable-libiscsi \
|
||||
--disable-libnfs \
|
||||
--disable-libpmem \
|
||||
--disable-libssh2 \
|
||||
--disable-libusb \
|
||||
--disable-libxml2 \
|
||||
--disable-linux-aio \
|
||||
--disable-lzo \
|
||||
@ -207,12 +201,17 @@ syscall layer occurs on the native hardware and operating system.
|
||||
--disable-nettle \
|
||||
--disable-numa \
|
||||
--disable-opengl \
|
||||
--disable-parallels \
|
||||
--disable-pvrdma \
|
||||
--disable-qcow1 \
|
||||
--disable-qed \
|
||||
--disable-rbd \
|
||||
--disable-rdma \
|
||||
--disable-replication \
|
||||
--disable-sanitizers \
|
||||
--disable-sdl \
|
||||
--disable-seccomp \
|
||||
--disable-sheepdog \
|
||||
--disable-smartcard \
|
||||
--disable-snappy \
|
||||
--disable-spice \
|
||||
@ -220,6 +219,7 @@ syscall layer occurs on the native hardware and operating system.
|
||||
--disable-tpm \
|
||||
--disable-usb-redir \
|
||||
--disable-vde \
|
||||
--disable-vdi \
|
||||
--disable-vhost-crypto \
|
||||
--disable-vhost-net \
|
||||
--disable-virglrenderer \
|
||||
@ -229,6 +229,7 @@ syscall layer occurs on the native hardware and operating system.
|
||||
--disable-vnc-png \
|
||||
--disable-vnc-sasl \
|
||||
--disable-vte \
|
||||
--disable-vvfat \
|
||||
--disable-whpx \
|
||||
--disable-xen \
|
||||
--disable-xen-pci-passthrough \
|
||||
|
@ -24,11 +24,10 @@ License: BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-
|
||||
Group: System/Emulators/PC
|
||||
QEMU_VERSION
|
||||
Release: 0
|
||||
Source: https://wiki.qemu.org/download/%{srcname}-%{version}.tar.xz
|
||||
Source99: https://wiki.qemu.org/download/%{srcname}-%{version}.tar.xz.sig
|
||||
Source: https://wiki.qemu.org/download/%{srcname}-%{srcver}.tar.xz
|
||||
Source100: %{srcname}.keyring
|
||||
Source400: update_git.sh
|
||||
# Upstream First -- https://wiki.qemu-project.org/Contribute/SubmitAPatch
|
||||
# Upstream First -- https://wiki.qemu.org/Contribute/SubmitAPatch
|
||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||
PATCH_FILES
|
||||
# Please do not add QEMU patches manually here.
|
||||
@ -61,7 +60,7 @@ architecture. The syscall interface is intercepted and execution below the
|
||||
syscall layer occurs on the native hardware and operating system.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{srcname}-%{version}
|
||||
%setup -q -n %{srcname}-%{expand:%%(SV=%{srcver};echo ${SV%%%%+git*})}
|
||||
PATCH_EXEC
|
||||
|
||||
%build
|
||||
@ -89,13 +88,16 @@ PATCH_EXEC
|
||||
--enable-attr \
|
||||
--disable-blobs \
|
||||
--disable-bluez \
|
||||
--disable-bochs \
|
||||
--disable-brlapi \
|
||||
--disable-bzip2 \
|
||||
--disable-cap-ng \
|
||||
--disable-capstone \
|
||||
--disable-cloop \
|
||||
--enable-coroutine-pool \
|
||||
--disable-curl \
|
||||
--disable-curses \
|
||||
--disable-dmg \
|
||||
--disable-fdt \
|
||||
--disable-gcrypt \
|
||||
--disable-glusterfs \
|
||||
@ -106,6 +108,10 @@ PATCH_EXEC
|
||||
--disable-jemalloc \
|
||||
--disable-kvm \
|
||||
--disable-libiscsi \
|
||||
--disable-libnfs \
|
||||
--disable-libpmem \
|
||||
--disable-libssh2 \
|
||||
--disable-libusb \
|
||||
--disable-libxml2 \
|
||||
--disable-linux-aio \
|
||||
--disable-lzo \
|
||||
@ -116,12 +122,17 @@ PATCH_EXEC
|
||||
--disable-nettle \
|
||||
--disable-numa \
|
||||
--disable-opengl \
|
||||
--disable-parallels \
|
||||
--disable-pvrdma \
|
||||
--disable-qcow1 \
|
||||
--disable-qed \
|
||||
--disable-rbd \
|
||||
--disable-rdma \
|
||||
--disable-replication \
|
||||
--disable-sanitizers \
|
||||
--disable-sdl \
|
||||
--disable-seccomp \
|
||||
--disable-sheepdog \
|
||||
--disable-smartcard \
|
||||
--disable-snappy \
|
||||
--disable-spice \
|
||||
@ -129,6 +140,7 @@ PATCH_EXEC
|
||||
--disable-tpm \
|
||||
--disable-usb-redir \
|
||||
--disable-vde \
|
||||
--disable-vdi \
|
||||
--disable-vhost-crypto \
|
||||
--disable-vhost-net \
|
||||
--disable-virglrenderer \
|
||||
@ -138,6 +150,7 @@ PATCH_EXEC
|
||||
--disable-vnc-png \
|
||||
--disable-vnc-sasl \
|
||||
--disable-vte \
|
||||
--disable-vvfat \
|
||||
--disable-whpx \
|
||||
--disable-xen \
|
||||
--disable-xen-pci-passthrough \
|
||||
|
@ -1,3 +1,120 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 14 06:24:53 UTC 2018 - lma@suse.com
|
||||
|
||||
- Use /bin/bash to echo value into sys fs for ksm control (bsc#1112646)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 12 21:33:13 UTC 2018 - Bruce Rogers <brogers@suse.com>
|
||||
|
||||
- fix memory leak in xen_disk (bsc#1100408)
|
||||
0039-xen_disk-Avoid-repeated-memory-allo.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-3.1
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 12 09:31:20 UTC 2018 - olaf@aepfle.de
|
||||
|
||||
- building against xen-devel requires the XC_* compat macros to be
|
||||
set because this version of QEMU will be built against many
|
||||
versions of Xen. configure will decide on the appropriate function
|
||||
names it knows about today. To actually call these functions,
|
||||
future versions of Xen may require XC_* to be set.
|
||||
Furthermore, fix a bug in QEMU: xen_common.h undefines the XC_*
|
||||
macros unconditionally.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 11 17:38:09 UTC 2018 - Bruce Rogers <brogers@suse.com>
|
||||
|
||||
- Update to v3.1.0: See http://wiki.qemu.org/ChangeLog/3.1
|
||||
Take note that ongoing feature deprecation is tracked at both
|
||||
http://wiki.qemu-project.org/Features/LegacyRemoval and in
|
||||
Appendix B of the qemu-doc.* files installed with the qemu package
|
||||
Some noteworthy changes:
|
||||
* x86 IceLake-Server and IceLake-Client cpu models added
|
||||
* Document recommendations for choosing cpu modesl for x86 guests
|
||||
* Support for Hyper-V enlightened VMCS
|
||||
* stdvga and bochs-display devices can expose EDID information to the
|
||||
guest. stdvga xres and yres properties are exposed in the EDID information
|
||||
* s390 improvements: vfio-ap crypto device support, max-cpu model added,
|
||||
etoken support, huge page backing support
|
||||
* ARM: ARMv6M architecture and Cortex-M0 cpu host support added,
|
||||
Cortex-A72 cpu model added, GICv2 virtualization extensions, emulation
|
||||
of AArch32 virtualization, Scalable Vector Extension implemented
|
||||
* Support for AMD IOMMU interrupt remapping and guest virtual APIC mode
|
||||
* Multithreaded TCG on x86 is considered supportable
|
||||
* Add a patch to triple timeout of block io tests, since the obs
|
||||
environment is fickle
|
||||
* x86 save/restore and live migration is prohibited if Intel KVM nested
|
||||
virtualization is enabled
|
||||
* Patches dropped (upstream unless otherwise noted):
|
||||
0033-migration-warn-about-inconsistent-s.patch (shouldn't be needed anymore)
|
||||
0035-configure-Modify-python-used-for-io.patch (upstream now python3 friendly)
|
||||
0039-tests-boot-serial-test-Bump-timeout.patch
|
||||
0040-linux-headers-update.patch
|
||||
0041-s390x-kvm-add-etoken-facility.patch
|
||||
0042-seccomp-prefer-SCMP_ACT_KILL_PROCES.patch
|
||||
0043-configure-require-libseccomp-2.2.0.patch
|
||||
0044-seccomp-set-the-seccomp-filter-to-a.patch
|
||||
0045-sandbox-disable-sandbox-if-CONFIG_S.patch
|
||||
0046-seccomp-check-TSYNC-host-capability.patch
|
||||
0047-linux-user-init_guest_space-Try-to-.patch
|
||||
0048-ne2000-fix-possible-out-of-bound-ac.patch
|
||||
0049-rtl8139-fix-possible-out-of-bound-a.patch
|
||||
0050-pcnet-fix-possible-buffer-overflow.patch
|
||||
0051-net-ignore-packet-size-greater-than.patch
|
||||
0052-lsi53c895a-check-message-length-val.patch
|
||||
0053-nvme-fix-oob-access-issue-CVE-2018-.patch (fixed differently upstream)
|
||||
* Patches renamed:
|
||||
0034-smbios-Add-1-terminator-if-any-stri.patch
|
||||
-> 0033-smbios-Add-1-terminator-if-any-stri.patch
|
||||
0036-qemu-io-tests-comment-out-problemat.patch
|
||||
-> 0034-qemu-io-tests-comment-out-problemat.patch
|
||||
0037-tests-test-thread-pool-is-racy-add-.patch
|
||||
-> 0035-tests-test-thread-pool-is-racy-add-.patch
|
||||
0038-xen-add-block-resize-support-for-xe.patch
|
||||
-> 0036-xen-add-block-resize-support-for-xe.patch
|
||||
* Patches added:
|
||||
0037-tests-qemu-iotests-Triple-timeout-o.patch
|
||||
0038-tests-block-io-test-130-needs-some-.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-3.1
|
||||
- Update includes the following bug fixes: bsc#1108474, bsc#1117615
|
||||
- Update includes the following SLE requested functionality: FATE#324810,
|
||||
FATE#325875, FATE#326369, FATE#326378, FATE#326379, FATE#326401,
|
||||
FATE#326672, FATE#326829
|
||||
- Make the following packaging changes related to the new release
|
||||
* Enable libpmem, pvrdma, vhost-crypto features and qemu-block-nfs
|
||||
subpackage
|
||||
* New roms available: vgabios-bochs-display.bin, vgabios-ramfb.bin
|
||||
* New binary tool included (qemu-edid) for testing the new qemu edid
|
||||
generator
|
||||
- Tweaked patches we carry to pass qemu's checkpatch checker
|
||||
- Modify update_git.sh script to enable packaging qemu from development
|
||||
time sources, not just at release time
|
||||
- Removed erroneous (and now useless) tests for tar and gzip formats
|
||||
- Don't exclude s390x anymore from building the qemu-testsuite
|
||||
- Based on current OBS building observations make changes to storage
|
||||
and memory requires specified in the _constraints file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 8 17:42:55 UTC 2018 - Bruce Rogers <brogers@suse.com>
|
||||
|
||||
- Re-sync openSUSE and SUSE SLE qemu packages. This changes file
|
||||
is the openSUSE one with this entry providing the intervening
|
||||
SLE CVE, FATE, and bugzilla references, which are still addressed
|
||||
in this package, and not yet called out in this changes file.
|
||||
* CVE-2018-10839 CVE-2018-16847 CVE-2018-17958 CVE-2018-17962
|
||||
CVE-2018-17963 CVE-2018-18849
|
||||
* bsc#1110910 bsc#1111006 bsc#1111010 bsc#1111013 bsc#1114422
|
||||
bsc#1114529
|
||||
* Patches added:
|
||||
0047-linux-user-init_guest_space-Try-to-.patch
|
||||
0048-ne2000-fix-possible-out-of-bound-ac.patch
|
||||
0049-rtl8139-fix-possible-out-of-bound-a.patch
|
||||
0050-pcnet-fix-possible-buffer-overflow.patch
|
||||
0051-net-ignore-packet-size-greater-than.patch
|
||||
0052-lsi53c895a-check-message-length-val.patch
|
||||
0053-nvme-fix-oob-access-issue-CVE-2018-.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-3.0
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 5 16:52:15 UTC 2018 - Larry Dewey <ldewey@suse.com>
|
||||
* Adding changes to mitigate seccomp vulnerability
|
||||
|
@ -110,11 +110,12 @@ Url: https://www.qemu.org/
|
||||
Summary: Machine emulator and virtualizer
|
||||
License: BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
|
||||
Group: System/Emulators/PC
|
||||
Version: 3.0.0
|
||||
%define qemuver 3.1.0
|
||||
%define srcver 3.1.0
|
||||
Version: %qemuver
|
||||
Release: 0
|
||||
%define qemuver 3.0.0
|
||||
Source: https://wiki.qemu.org/download/%{srcname}-%{version}.tar.xz
|
||||
Source99: https://wiki.qemu.org/download/%{srcname}-%{version}.tar.xz.sig
|
||||
Source: https://wiki.qemu.org/download/%{srcname}-%{srcver}.tar.xz
|
||||
Source99: https://wiki.qemu.org/download/%{srcname}-%{srcver}.tar.xz.sig
|
||||
Source100: %{srcname}.keyring
|
||||
Source1: 80-kvm.rules
|
||||
Source2: 71-sev.rules
|
||||
@ -134,7 +135,7 @@ Source14: supported.arm.txt
|
||||
Source300: qemu-rpmlintrc
|
||||
Source301: ipxe-stub-out-the-SAN-req-s-in-int13.patch
|
||||
Source400: update_git.sh
|
||||
# Upstream First -- https://wiki.qemu-project.org/Contribute/SubmitAPatch
|
||||
# Upstream First -- https://wiki.qemu.org/Contribute/SubmitAPatch
|
||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
|
||||
Patch0002: 0002-qemu-binfmt-conf-Modify-default-pat.patch
|
||||
@ -168,52 +169,42 @@ Patch0029: 0029-tests-Add-QOM-property-unit-tests.patch
|
||||
Patch0030: 0030-tests-Add-scsi-disk-test.patch
|
||||
Patch0031: 0031-Switch-order-of-libraries-for-mpath.patch
|
||||
Patch0032: 0032-Make-installed-scripts-explicitly-p.patch
|
||||
Patch0033: 0033-migration-warn-about-inconsistent-s.patch
|
||||
Patch0034: 0034-smbios-Add-1-terminator-if-any-stri.patch
|
||||
Patch0035: 0035-configure-Modify-python-used-for-io.patch
|
||||
Patch0036: 0036-qemu-io-tests-comment-out-problemat.patch
|
||||
Patch0037: 0037-tests-test-thread-pool-is-racy-add-.patch
|
||||
Patch0038: 0038-xen-add-block-resize-support-for-xe.patch
|
||||
Patch0039: 0039-tests-boot-serial-test-Bump-timeout.patch
|
||||
Patch0040: 0040-linux-headers-update.patch
|
||||
Patch0041: 0041-s390x-kvm-add-etoken-facility.patch
|
||||
Patch0042: 0042-seccomp-prefer-SCMP_ACT_KILL_PROCES.patch
|
||||
Patch0043: 0043-configure-require-libseccomp-2.2.0.patch
|
||||
Patch0044: 0044-seccomp-set-the-seccomp-filter-to-a.patch
|
||||
Patch0045: 0045-sandbox-disable-sandbox-if-CONFIG_S.patch
|
||||
Patch0046: 0046-seccomp-check-TSYNC-host-capability.patch
|
||||
Patch0033: 0033-smbios-Add-1-terminator-if-any-stri.patch
|
||||
Patch0034: 0034-qemu-io-tests-comment-out-problemat.patch
|
||||
Patch0035: 0035-tests-test-thread-pool-is-racy-add-.patch
|
||||
Patch0036: 0036-xen-add-block-resize-support-for-xe.patch
|
||||
Patch0037: 0037-tests-qemu-iotests-Triple-timeout-o.patch
|
||||
Patch0038: 0038-tests-block-io-test-130-needs-some-.patch
|
||||
Patch0039: 0039-xen_disk-Avoid-repeated-memory-allo.patch
|
||||
# Please do not add QEMU patches manually here.
|
||||
# Run update_git.sh to regenerate this queue.
|
||||
|
||||
# If for any reason we have base QEMU patches which are conditionally applied,
|
||||
# include them here
|
||||
|
||||
# SeaBIOS / SeaVGABIOS
|
||||
# SeaBIOS / SeaVGABIOS - path: roms/seabios (patch range 1100-1199)
|
||||
Patch1100: seabios-use-python2-explicitly-as-needed.patch
|
||||
Patch1101: seabios-switch-to-python3-as-needed.patch
|
||||
|
||||
# ipxe
|
||||
# PATCH-FIX-OPENSUSE ipxe-stable-buildid.patch brogers@suse.com -- reproducible builds
|
||||
# ipxe - path: roms/ipxe (patch range 1200-1299)
|
||||
Patch1200: ipxe-stable-buildid.patch
|
||||
Patch1201: ipxe-use-gcc6-for-more-compact-code.patch
|
||||
Patch1202: ipxe-efi-guard-strncpy-with-gcc-warning-ignore-pragma.patch
|
||||
Patch1203: ipxe-fix-build.patch
|
||||
|
||||
# sgabios
|
||||
# PATCH-FIX-OPENSUSE sgabios-stable-buildid.patch brogers@suse.com -- reproducible builds
|
||||
# sgabios - path: roms/sgabios (patch range 1300-1399)
|
||||
Patch1300: sgabios-stable-buildid.patch
|
||||
|
||||
# SLOF (Currently no patches)
|
||||
# SLOF - path: roms/SLOF (patch range 1400-1499) (Currently no patches)
|
||||
|
||||
# skiboot
|
||||
# skiboot - path: roms/skiboot (patch range 1500-1599)
|
||||
Patch1500: skiboot-hdata-i2c.c-fix-building-with-gcc8.patch
|
||||
|
||||
# ui/keycodemapdb (Currently no patches)
|
||||
# keycodemapdb - path: ui/keycodemapdb (patch range 1600-1699) (Currently no patches)
|
||||
|
||||
# openBIOS - path: roms/openbios (patch range 1700-1799) (Currently no patches)
|
||||
|
||||
# If for any reason we have any QEMU patches which are conditionally applied,
|
||||
# "manually" include them here:
|
||||
|
||||
ExcludeArch: s390
|
||||
%if "%{name}" == "qemu-testsuite"
|
||||
ExcludeArch: s390x
|
||||
%endif
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
#!BuildIgnore: gcc-PIE
|
||||
BuildRequires: Mesa-devel
|
||||
@ -264,17 +255,13 @@ BuildRequires: libfdt1-devel
|
||||
BuildRequires: libgbm-devel
|
||||
BuildRequires: libgcrypt-devel
|
||||
BuildRequires: libgnutls-devel
|
||||
%if 0%{?with_rbd}
|
||||
%if 0%{?is_opensuse} || 0%{?sle_version} > 120100
|
||||
BuildRequires: librbd-devel
|
||||
%else
|
||||
BuildRequires: ceph-devel
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: libiscsi-devel
|
||||
%endif
|
||||
BuildRequires: libjpeg-devel
|
||||
%if 0%{?is_opensuse}
|
||||
BuildRequires: libnfs-devel
|
||||
%endif
|
||||
%ifarch %ix86 x86_64
|
||||
%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315
|
||||
BuildRequires: libnuma-devel
|
||||
@ -292,8 +279,18 @@ BuildRequires: libnuma-devel
|
||||
%endif
|
||||
BuildRequires: libpcap-devel
|
||||
BuildRequires: libpixman-1-0-devel
|
||||
%ifarch x86_64
|
||||
BuildRequires: libpmem-devel
|
||||
%endif
|
||||
BuildRequires: libpng-devel
|
||||
BuildRequires: libpulse-devel
|
||||
%if 0%{?with_rbd}
|
||||
%if 0%{?is_opensuse} || 0%{?sle_version} > 120100
|
||||
BuildRequires: librbd-devel
|
||||
%else
|
||||
BuildRequires: ceph-devel
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?with_seccomp}
|
||||
BuildRequires: libseccomp-devel
|
||||
%endif
|
||||
@ -361,6 +358,9 @@ BuildRequires: qemu-block-gluster = %{qemuver}
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: qemu-block-iscsi = %{qemuver}
|
||||
%endif
|
||||
%if 0%{?is_opensuse}
|
||||
BuildRequires: qemu-block-nfs = %{qemuver}
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
BuildRequires: qemu-block-rbd = %{qemuver}
|
||||
%endif
|
||||
@ -417,6 +417,9 @@ Suggests: qemu-block-gluster
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
Suggests: qemu-block-iscsi
|
||||
%endif
|
||||
%if 0%{?is_opensuse}
|
||||
Suggests: qemu-block-nfs
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
Suggests: qemu-block-rbd
|
||||
%endif
|
||||
@ -457,12 +460,13 @@ multiboot.bin kvmvapic.bin}
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define x86_extra_built_firmware_list {bios.bin bios-256k.bin sgabios.bin \
|
||||
vgabios.bin vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin \
|
||||
vgabios-vmware.bin vgabios-qxl.bin pxe-e1000.rom pxe-pcnet.rom \
|
||||
pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
|
||||
%define x86_extra_built_firmware_list {bios.bin bios-256k.bin pxe-e1000.rom \
|
||||
pxe-eepro100.rom pxe-ne2k_pci.rom pxe-pcnet.rom pxe-rtl8139.rom pxe-virtio.rom \
|
||||
sgabios.bin vgabios-bochs-display.bin vgabios.bin vgabios-cirrus.bin \
|
||||
vgabios-qxl.bin vgabios-ramfb.bin vgabios-stdvga.bin vgabios-virtio.bin \
|
||||
vgabios-vmware.bin}
|
||||
%define x86_64_only_extra_built_firmware_list {efi-e1000.rom efi-e1000e.rom \
|
||||
efi-eepro100.rom efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom \
|
||||
efi-eepro100.rom efi-ne2k_pci.rom efi-pcnet.rom efi-rtl8139.rom efi-virtio.rom \
|
||||
efi-vmxnet3.rom}
|
||||
|
||||
%if %{build_x86_firmware_from_source}
|
||||
@ -685,6 +689,18 @@ This package contains a module for accessing network-based image files over an
|
||||
iSCSI network connection from qemu-img tool and QEMU system emulation.
|
||||
%endif
|
||||
|
||||
%if 0%{?is_opensuse}
|
||||
%package block-nfs
|
||||
Summary: direct Network File System support for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: %{qemuver}
|
||||
Release: 0
|
||||
%{qemu_module_conflicts}
|
||||
|
||||
%description block-nfs
|
||||
This package contains a module for directly accessing nfs based image files.
|
||||
%endif
|
||||
|
||||
%if 0%{?with_rbd}
|
||||
%package block-rbd
|
||||
Summary: Rados Block Device (Ceph) support for QEMU
|
||||
@ -820,7 +836,7 @@ to provide information and control at the guest OS level.
|
||||
%package seabios
|
||||
Summary: x86 Legacy BIOS for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: 1.11.2
|
||||
Version: 1.12.0
|
||||
Release: 0
|
||||
BuildArch: noarch
|
||||
Conflicts: %name < 1.6.0
|
||||
@ -832,7 +848,7 @@ is the default and legacy BIOS for QEMU.
|
||||
%package vgabios
|
||||
Summary: VGA BIOSes for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: 1.11.2
|
||||
Version: 1.12.0
|
||||
Release: 0
|
||||
BuildArch: noarch
|
||||
Conflicts: %name < 1.6.0
|
||||
@ -887,7 +903,7 @@ This package provides a service file for starting and stopping KSM.
|
||||
%endif # !qemu-testsuite
|
||||
|
||||
%prep
|
||||
%setup -q -n %{srcname}-%{qemuver}
|
||||
%setup -q -n %{srcname}-%{expand:%%(SV=%{srcver};echo ${SV%%%%+git*})}
|
||||
%patch0001 -p1
|
||||
%patch0002 -p1
|
||||
%patch0003 -p1
|
||||
@ -927,13 +943,6 @@ This package provides a service file for starting and stopping KSM.
|
||||
%patch0037 -p1
|
||||
%patch0038 -p1
|
||||
%patch0039 -p1
|
||||
%patch0040 -p1
|
||||
%patch0041 -p1
|
||||
%patch0042 -p1
|
||||
%patch0043 -p1
|
||||
%patch0044 -p1
|
||||
%patch0045 -p1
|
||||
%patch0046 -p1
|
||||
|
||||
pushd roms/seabios
|
||||
%patch1100 -p1
|
||||
@ -965,6 +974,9 @@ popd
|
||||
pushd ui/keycodemapdb
|
||||
popd
|
||||
|
||||
pushd roms/openbios
|
||||
popd
|
||||
|
||||
# as a safeguard, delete the firmware files that we intend to build
|
||||
for i in %built_firmware
|
||||
do
|
||||
@ -972,6 +984,15 @@ do
|
||||
done
|
||||
|
||||
%build
|
||||
XC_COMPAT="
|
||||
-DXC_WANT_COMPAT_DEVICEMODEL_API=1
|
||||
-DXC_WANT_COMPAT_EVTCHN_API=1
|
||||
-DXC_WANT_COMPAT_GNTTAB_API=1
|
||||
-DXC_WANT_COMPAT_MAP_FOREIGN_API=1
|
||||
"
|
||||
XC_COMPAT="`echo ${XC_COMPAT} | xargs`"
|
||||
sed -i~ /undef/d include/hw/xen/xen_common.h
|
||||
diff -u include/hw/xen/xen_common.h~ include/hw/xen/xen_common.h || :
|
||||
./configure \
|
||||
--prefix=%_prefix \
|
||||
--sysconfdir=%_sysconfdir \
|
||||
@ -985,7 +1006,7 @@ done
|
||||
%else
|
||||
--python=%_bindir/python2 \
|
||||
%endif
|
||||
--extra-cflags="%{optflags}" \
|
||||
--extra-cflags="%{optflags} ${XC_COMPAT}" \
|
||||
--disable-stack-protector \
|
||||
--disable-strip \
|
||||
--with-pkgversion="%(echo '%{distro}' | sed 's/ (.*)//')" \
|
||||
@ -1001,14 +1022,17 @@ done
|
||||
%endif
|
||||
--enable-attr \
|
||||
--enable-bluez \
|
||||
--enable-bochs \
|
||||
--enable-brlapi \
|
||||
--enable-bzip2 \
|
||||
--enable-cap-ng \
|
||||
--disable-capstone \
|
||||
--enable-cloop \
|
||||
--enable-coroutine-pool \
|
||||
--disable-crypto-afalg \
|
||||
--enable-curl \
|
||||
--enable-curses \
|
||||
--enable-dmg \
|
||||
--enable-fdt \
|
||||
--enable-gcrypt \
|
||||
%if 0%{?with_glusterfs}
|
||||
@ -1018,7 +1042,6 @@ done
|
||||
%endif
|
||||
--enable-gnutls \
|
||||
--enable-gtk \
|
||||
--with-gtkabi=3.0 \
|
||||
--disable-hax \
|
||||
--disable-hvf \
|
||||
--disable-jemalloc \
|
||||
@ -1032,7 +1055,16 @@ done
|
||||
%else
|
||||
--disable-libiscsi \
|
||||
%endif
|
||||
%if 0%{?is_opensuse}
|
||||
--enable-libnfs \
|
||||
%else
|
||||
--disable-libnfs \
|
||||
%endif
|
||||
%ifarch x86_64
|
||||
--enable-libpmem \
|
||||
%else
|
||||
--disable-libpmem \
|
||||
%endif
|
||||
--enable-libssh2 \
|
||||
--enable-libusb \
|
||||
--disable-libxml2 \
|
||||
@ -1071,6 +1103,14 @@ done
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-opengl \
|
||||
%endif
|
||||
--enable-parallels \
|
||||
%if 0%{?suse_version} >= 1315
|
||||
--enable-pvrdma \
|
||||
%else
|
||||
--disable-pvrdma \
|
||||
%endif
|
||||
--enable-qcow1 \
|
||||
--enable-qed \
|
||||
%if 0%{?with_rbd}
|
||||
--enable-rbd \
|
||||
%else
|
||||
@ -1098,6 +1138,7 @@ done
|
||||
%else
|
||||
--disable-seccomp \
|
||||
%endif
|
||||
--enable-sheepdog \
|
||||
%if 0%{?is_opensuse}
|
||||
--enable-smartcard \
|
||||
%else
|
||||
@ -1109,7 +1150,8 @@ done
|
||||
--enable-tpm \
|
||||
--enable-usb-redir \
|
||||
--enable-vde \
|
||||
--disable-vhost-crypto \
|
||||
--enable-vdi \
|
||||
--enable-vhost-crypto \
|
||||
--enable-vhost-net \
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-virglrenderer \
|
||||
@ -1124,6 +1166,7 @@ done
|
||||
%else
|
||||
--enable-vte \
|
||||
%endif
|
||||
--enable-vvfat \
|
||||
--disable-whpx \
|
||||
%ifarch x86_64
|
||||
--enable-xen \
|
||||
@ -1213,7 +1256,7 @@ done
|
||||
%endif
|
||||
|
||||
%if %{build_skiboot_from_source}
|
||||
make %{?_smp_mflags} -C roms skiboot SKIBOOT_VERSION=skiboot-5.9 CROSS=
|
||||
make %{?_smp_mflags} -C roms skiboot CROSS=
|
||||
%endif
|
||||
|
||||
%if %{build_slof_from_source}
|
||||
@ -1255,19 +1298,6 @@ export QEMU_IO_PROG=%_bindir/qemu-io
|
||||
export QEMU_NBD_PROG=%_bindir/qemu-nbd
|
||||
make check-block V=1
|
||||
|
||||
# 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
|
||||
@ -1424,6 +1454,7 @@ fi
|
||||
%_docdir/%name/qemu-ga-ref.html
|
||||
%_mandir/man1/%name.1.gz
|
||||
%_mandir/man7/qemu-block-drivers.7.gz
|
||||
%_mandir/man7/qemu-cpu-models.7.gz
|
||||
%_mandir/man7/qemu-qmp-ref.7.gz
|
||||
%_mandir/man7/qemu-ga-ref.7.gz
|
||||
%dir %_datadir/%name
|
||||
@ -1463,7 +1494,6 @@ fi
|
||||
%defattr(-, root, root)
|
||||
%_bindir/qemu-system-ppc
|
||||
%_bindir/qemu-system-ppc64
|
||||
%_bindir/qemu-system-ppcemb
|
||||
%_datadir/%name/bamboo.dtb
|
||||
%_datadir/%name/canyonlands.dtb
|
||||
%_datadir/%name/openbios-ppc
|
||||
@ -1568,6 +1598,13 @@ fi
|
||||
%_libdir/%name/block-iscsi.so
|
||||
%endif
|
||||
|
||||
%if 0%{?is_opensuse}
|
||||
%files block-nfs
|
||||
%defattr(-, root, root)
|
||||
%dir %_libdir/%name
|
||||
%_libdir/%name/block-nfs.so
|
||||
%endif
|
||||
|
||||
%if 0%{?with_rbd}
|
||||
%files block-rbd
|
||||
%defattr(-, root, root)
|
||||
@ -1638,6 +1675,8 @@ fi
|
||||
%_datadir/%name/vgabios-stdvga.bin
|
||||
%_datadir/%name/vgabios-virtio.bin
|
||||
%_datadir/%name/vgabios-vmware.bin
|
||||
%_datadir/%name/vgabios-bochs-display.bin
|
||||
%_datadir/%name/vgabios-ramfb.bin
|
||||
|
||||
%files sgabios
|
||||
%defattr(-, root, root)
|
||||
@ -1668,6 +1707,7 @@ fi
|
||||
%_mandir/man1/qemu-img.1.gz
|
||||
%_mandir/man1/virtfs-proxy-helper.1.gz
|
||||
%_mandir/man8/qemu-nbd.8.gz
|
||||
%_bindir/qemu-edid
|
||||
%_bindir/ivshmem-client
|
||||
%_bindir/ivshmem-server
|
||||
%_bindir/qemu-io
|
||||
|
117
qemu.changes
117
qemu.changes
@ -1,3 +1,120 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 14 06:24:53 UTC 2018 - lma@suse.com
|
||||
|
||||
- Use /bin/bash to echo value into sys fs for ksm control (bsc#1112646)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 12 21:33:13 UTC 2018 - Bruce Rogers <brogers@suse.com>
|
||||
|
||||
- fix memory leak in xen_disk (bsc#1100408)
|
||||
0039-xen_disk-Avoid-repeated-memory-allo.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-3.1
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Dec 12 09:31:20 UTC 2018 - olaf@aepfle.de
|
||||
|
||||
- building against xen-devel requires the XC_* compat macros to be
|
||||
set because this version of QEMU will be built against many
|
||||
versions of Xen. configure will decide on the appropriate function
|
||||
names it knows about today. To actually call these functions,
|
||||
future versions of Xen may require XC_* to be set.
|
||||
Furthermore, fix a bug in QEMU: xen_common.h undefines the XC_*
|
||||
macros unconditionally.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Dec 11 17:38:09 UTC 2018 - Bruce Rogers <brogers@suse.com>
|
||||
|
||||
- Update to v3.1.0: See http://wiki.qemu.org/ChangeLog/3.1
|
||||
Take note that ongoing feature deprecation is tracked at both
|
||||
http://wiki.qemu-project.org/Features/LegacyRemoval and in
|
||||
Appendix B of the qemu-doc.* files installed with the qemu package
|
||||
Some noteworthy changes:
|
||||
* x86 IceLake-Server and IceLake-Client cpu models added
|
||||
* Document recommendations for choosing cpu modesl for x86 guests
|
||||
* Support for Hyper-V enlightened VMCS
|
||||
* stdvga and bochs-display devices can expose EDID information to the
|
||||
guest. stdvga xres and yres properties are exposed in the EDID information
|
||||
* s390 improvements: vfio-ap crypto device support, max-cpu model added,
|
||||
etoken support, huge page backing support
|
||||
* ARM: ARMv6M architecture and Cortex-M0 cpu host support added,
|
||||
Cortex-A72 cpu model added, GICv2 virtualization extensions, emulation
|
||||
of AArch32 virtualization, Scalable Vector Extension implemented
|
||||
* Support for AMD IOMMU interrupt remapping and guest virtual APIC mode
|
||||
* Multithreaded TCG on x86 is considered supportable
|
||||
* Add a patch to triple timeout of block io tests, since the obs
|
||||
environment is fickle
|
||||
* x86 save/restore and live migration is prohibited if Intel KVM nested
|
||||
virtualization is enabled
|
||||
* Patches dropped (upstream unless otherwise noted):
|
||||
0033-migration-warn-about-inconsistent-s.patch (shouldn't be needed anymore)
|
||||
0035-configure-Modify-python-used-for-io.patch (upstream now python3 friendly)
|
||||
0039-tests-boot-serial-test-Bump-timeout.patch
|
||||
0040-linux-headers-update.patch
|
||||
0041-s390x-kvm-add-etoken-facility.patch
|
||||
0042-seccomp-prefer-SCMP_ACT_KILL_PROCES.patch
|
||||
0043-configure-require-libseccomp-2.2.0.patch
|
||||
0044-seccomp-set-the-seccomp-filter-to-a.patch
|
||||
0045-sandbox-disable-sandbox-if-CONFIG_S.patch
|
||||
0046-seccomp-check-TSYNC-host-capability.patch
|
||||
0047-linux-user-init_guest_space-Try-to-.patch
|
||||
0048-ne2000-fix-possible-out-of-bound-ac.patch
|
||||
0049-rtl8139-fix-possible-out-of-bound-a.patch
|
||||
0050-pcnet-fix-possible-buffer-overflow.patch
|
||||
0051-net-ignore-packet-size-greater-than.patch
|
||||
0052-lsi53c895a-check-message-length-val.patch
|
||||
0053-nvme-fix-oob-access-issue-CVE-2018-.patch (fixed differently upstream)
|
||||
* Patches renamed:
|
||||
0034-smbios-Add-1-terminator-if-any-stri.patch
|
||||
-> 0033-smbios-Add-1-terminator-if-any-stri.patch
|
||||
0036-qemu-io-tests-comment-out-problemat.patch
|
||||
-> 0034-qemu-io-tests-comment-out-problemat.patch
|
||||
0037-tests-test-thread-pool-is-racy-add-.patch
|
||||
-> 0035-tests-test-thread-pool-is-racy-add-.patch
|
||||
0038-xen-add-block-resize-support-for-xe.patch
|
||||
-> 0036-xen-add-block-resize-support-for-xe.patch
|
||||
* Patches added:
|
||||
0037-tests-qemu-iotests-Triple-timeout-o.patch
|
||||
0038-tests-block-io-test-130-needs-some-.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-3.1
|
||||
- Update includes the following bug fixes: bsc#1108474, bsc#1117615
|
||||
- Update includes the following SLE requested functionality: FATE#324810,
|
||||
FATE#325875, FATE#326369, FATE#326378, FATE#326379, FATE#326401,
|
||||
FATE#326672, FATE#326829
|
||||
- Make the following packaging changes related to the new release
|
||||
* Enable libpmem, pvrdma, vhost-crypto features and qemu-block-nfs
|
||||
subpackage
|
||||
* New roms available: vgabios-bochs-display.bin, vgabios-ramfb.bin
|
||||
* New binary tool included (qemu-edid) for testing the new qemu edid
|
||||
generator
|
||||
- Tweaked patches we carry to pass qemu's checkpatch checker
|
||||
- Modify update_git.sh script to enable packaging qemu from development
|
||||
time sources, not just at release time
|
||||
- Removed erroneous (and now useless) tests for tar and gzip formats
|
||||
- Don't exclude s390x anymore from building the qemu-testsuite
|
||||
- Based on current OBS building observations make changes to storage
|
||||
and memory requires specified in the _constraints file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Nov 8 17:42:55 UTC 2018 - Bruce Rogers <brogers@suse.com>
|
||||
|
||||
- Re-sync openSUSE and SUSE SLE qemu packages. This changes file
|
||||
is the openSUSE one with this entry providing the intervening
|
||||
SLE CVE, FATE, and bugzilla references, which are still addressed
|
||||
in this package, and not yet called out in this changes file.
|
||||
* CVE-2018-10839 CVE-2018-16847 CVE-2018-17958 CVE-2018-17962
|
||||
CVE-2018-17963 CVE-2018-18849
|
||||
* bsc#1110910 bsc#1111006 bsc#1111010 bsc#1111013 bsc#1114422
|
||||
bsc#1114529
|
||||
* Patches added:
|
||||
0047-linux-user-init_guest_space-Try-to-.patch
|
||||
0048-ne2000-fix-possible-out-of-bound-ac.patch
|
||||
0049-rtl8139-fix-possible-out-of-bound-a.patch
|
||||
0050-pcnet-fix-possible-buffer-overflow.patch
|
||||
0051-net-ignore-packet-size-greater-than.patch
|
||||
0052-lsi53c895a-check-message-length-val.patch
|
||||
0053-nvme-fix-oob-access-issue-CVE-2018-.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-3.0
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Oct 5 16:52:15 UTC 2018 - Larry Dewey <ldewey@suse.com>
|
||||
* Adding changes to mitigate seccomp vulnerability
|
||||
|
186
qemu.spec
186
qemu.spec
@ -110,11 +110,12 @@ Url: https://www.qemu.org/
|
||||
Summary: Machine emulator and virtualizer
|
||||
License: BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
|
||||
Group: System/Emulators/PC
|
||||
Version: 3.0.0
|
||||
%define qemuver 3.1.0
|
||||
%define srcver 3.1.0
|
||||
Version: %qemuver
|
||||
Release: 0
|
||||
%define qemuver 3.0.0
|
||||
Source: https://wiki.qemu.org/download/%{srcname}-%{version}.tar.xz
|
||||
Source99: https://wiki.qemu.org/download/%{srcname}-%{version}.tar.xz.sig
|
||||
Source: https://wiki.qemu.org/download/%{srcname}-%{srcver}.tar.xz
|
||||
Source99: https://wiki.qemu.org/download/%{srcname}-%{srcver}.tar.xz.sig
|
||||
Source100: %{srcname}.keyring
|
||||
Source1: 80-kvm.rules
|
||||
Source2: 71-sev.rules
|
||||
@ -134,7 +135,7 @@ Source14: supported.arm.txt
|
||||
Source300: qemu-rpmlintrc
|
||||
Source301: ipxe-stub-out-the-SAN-req-s-in-int13.patch
|
||||
Source400: update_git.sh
|
||||
# Upstream First -- https://wiki.qemu-project.org/Contribute/SubmitAPatch
|
||||
# Upstream First -- https://wiki.qemu.org/Contribute/SubmitAPatch
|
||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
|
||||
Patch0002: 0002-qemu-binfmt-conf-Modify-default-pat.patch
|
||||
@ -168,52 +169,42 @@ Patch0029: 0029-tests-Add-QOM-property-unit-tests.patch
|
||||
Patch0030: 0030-tests-Add-scsi-disk-test.patch
|
||||
Patch0031: 0031-Switch-order-of-libraries-for-mpath.patch
|
||||
Patch0032: 0032-Make-installed-scripts-explicitly-p.patch
|
||||
Patch0033: 0033-migration-warn-about-inconsistent-s.patch
|
||||
Patch0034: 0034-smbios-Add-1-terminator-if-any-stri.patch
|
||||
Patch0035: 0035-configure-Modify-python-used-for-io.patch
|
||||
Patch0036: 0036-qemu-io-tests-comment-out-problemat.patch
|
||||
Patch0037: 0037-tests-test-thread-pool-is-racy-add-.patch
|
||||
Patch0038: 0038-xen-add-block-resize-support-for-xe.patch
|
||||
Patch0039: 0039-tests-boot-serial-test-Bump-timeout.patch
|
||||
Patch0040: 0040-linux-headers-update.patch
|
||||
Patch0041: 0041-s390x-kvm-add-etoken-facility.patch
|
||||
Patch0042: 0042-seccomp-prefer-SCMP_ACT_KILL_PROCES.patch
|
||||
Patch0043: 0043-configure-require-libseccomp-2.2.0.patch
|
||||
Patch0044: 0044-seccomp-set-the-seccomp-filter-to-a.patch
|
||||
Patch0045: 0045-sandbox-disable-sandbox-if-CONFIG_S.patch
|
||||
Patch0046: 0046-seccomp-check-TSYNC-host-capability.patch
|
||||
Patch0033: 0033-smbios-Add-1-terminator-if-any-stri.patch
|
||||
Patch0034: 0034-qemu-io-tests-comment-out-problemat.patch
|
||||
Patch0035: 0035-tests-test-thread-pool-is-racy-add-.patch
|
||||
Patch0036: 0036-xen-add-block-resize-support-for-xe.patch
|
||||
Patch0037: 0037-tests-qemu-iotests-Triple-timeout-o.patch
|
||||
Patch0038: 0038-tests-block-io-test-130-needs-some-.patch
|
||||
Patch0039: 0039-xen_disk-Avoid-repeated-memory-allo.patch
|
||||
# Please do not add QEMU patches manually here.
|
||||
# Run update_git.sh to regenerate this queue.
|
||||
|
||||
# If for any reason we have base QEMU patches which are conditionally applied,
|
||||
# include them here
|
||||
|
||||
# SeaBIOS / SeaVGABIOS
|
||||
# SeaBIOS / SeaVGABIOS - path: roms/seabios (patch range 1100-1199)
|
||||
Patch1100: seabios-use-python2-explicitly-as-needed.patch
|
||||
Patch1101: seabios-switch-to-python3-as-needed.patch
|
||||
|
||||
# ipxe
|
||||
# PATCH-FIX-OPENSUSE ipxe-stable-buildid.patch brogers@suse.com -- reproducible builds
|
||||
# ipxe - path: roms/ipxe (patch range 1200-1299)
|
||||
Patch1200: ipxe-stable-buildid.patch
|
||||
Patch1201: ipxe-use-gcc6-for-more-compact-code.patch
|
||||
Patch1202: ipxe-efi-guard-strncpy-with-gcc-warning-ignore-pragma.patch
|
||||
Patch1203: ipxe-fix-build.patch
|
||||
|
||||
# sgabios
|
||||
# PATCH-FIX-OPENSUSE sgabios-stable-buildid.patch brogers@suse.com -- reproducible builds
|
||||
# sgabios - path: roms/sgabios (patch range 1300-1399)
|
||||
Patch1300: sgabios-stable-buildid.patch
|
||||
|
||||
# SLOF (Currently no patches)
|
||||
# SLOF - path: roms/SLOF (patch range 1400-1499) (Currently no patches)
|
||||
|
||||
# skiboot
|
||||
# skiboot - path: roms/skiboot (patch range 1500-1599)
|
||||
Patch1500: skiboot-hdata-i2c.c-fix-building-with-gcc8.patch
|
||||
|
||||
# ui/keycodemapdb (Currently no patches)
|
||||
# keycodemapdb - path: ui/keycodemapdb (patch range 1600-1699) (Currently no patches)
|
||||
|
||||
# openBIOS - path: roms/openbios (patch range 1700-1799) (Currently no patches)
|
||||
|
||||
# If for any reason we have any QEMU patches which are conditionally applied,
|
||||
# "manually" include them here:
|
||||
|
||||
ExcludeArch: s390
|
||||
%if "%{name}" == "qemu-testsuite"
|
||||
ExcludeArch: s390x
|
||||
%endif
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
#!BuildIgnore: gcc-PIE
|
||||
BuildRequires: Mesa-devel
|
||||
@ -264,17 +255,13 @@ BuildRequires: libfdt1-devel
|
||||
BuildRequires: libgbm-devel
|
||||
BuildRequires: libgcrypt-devel
|
||||
BuildRequires: libgnutls-devel
|
||||
%if 0%{?with_rbd}
|
||||
%if 0%{?is_opensuse} || 0%{?sle_version} > 120100
|
||||
BuildRequires: librbd-devel
|
||||
%else
|
||||
BuildRequires: ceph-devel
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: libiscsi-devel
|
||||
%endif
|
||||
BuildRequires: libjpeg-devel
|
||||
%if 0%{?is_opensuse}
|
||||
BuildRequires: libnfs-devel
|
||||
%endif
|
||||
%ifarch %ix86 x86_64
|
||||
%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315
|
||||
BuildRequires: libnuma-devel
|
||||
@ -292,8 +279,18 @@ BuildRequires: libnuma-devel
|
||||
%endif
|
||||
BuildRequires: libpcap-devel
|
||||
BuildRequires: libpixman-1-0-devel
|
||||
%ifarch x86_64
|
||||
BuildRequires: libpmem-devel
|
||||
%endif
|
||||
BuildRequires: libpng-devel
|
||||
BuildRequires: libpulse-devel
|
||||
%if 0%{?with_rbd}
|
||||
%if 0%{?is_opensuse} || 0%{?sle_version} > 120100
|
||||
BuildRequires: librbd-devel
|
||||
%else
|
||||
BuildRequires: ceph-devel
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?with_seccomp}
|
||||
BuildRequires: libseccomp-devel
|
||||
%endif
|
||||
@ -361,6 +358,9 @@ BuildRequires: qemu-block-gluster = %{qemuver}
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: qemu-block-iscsi = %{qemuver}
|
||||
%endif
|
||||
%if 0%{?is_opensuse}
|
||||
BuildRequires: qemu-block-nfs = %{qemuver}
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
BuildRequires: qemu-block-rbd = %{qemuver}
|
||||
%endif
|
||||
@ -417,6 +417,9 @@ Suggests: qemu-block-gluster
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
Suggests: qemu-block-iscsi
|
||||
%endif
|
||||
%if 0%{?is_opensuse}
|
||||
Suggests: qemu-block-nfs
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
Suggests: qemu-block-rbd
|
||||
%endif
|
||||
@ -457,12 +460,13 @@ multiboot.bin kvmvapic.bin}
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define x86_extra_built_firmware_list {bios.bin bios-256k.bin sgabios.bin \
|
||||
vgabios.bin vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin \
|
||||
vgabios-vmware.bin vgabios-qxl.bin pxe-e1000.rom pxe-pcnet.rom \
|
||||
pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
|
||||
%define x86_extra_built_firmware_list {bios.bin bios-256k.bin pxe-e1000.rom \
|
||||
pxe-eepro100.rom pxe-ne2k_pci.rom pxe-pcnet.rom pxe-rtl8139.rom pxe-virtio.rom \
|
||||
sgabios.bin vgabios-bochs-display.bin vgabios.bin vgabios-cirrus.bin \
|
||||
vgabios-qxl.bin vgabios-ramfb.bin vgabios-stdvga.bin vgabios-virtio.bin \
|
||||
vgabios-vmware.bin}
|
||||
%define x86_64_only_extra_built_firmware_list {efi-e1000.rom efi-e1000e.rom \
|
||||
efi-eepro100.rom efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom \
|
||||
efi-eepro100.rom efi-ne2k_pci.rom efi-pcnet.rom efi-rtl8139.rom efi-virtio.rom \
|
||||
efi-vmxnet3.rom}
|
||||
|
||||
%if %{build_x86_firmware_from_source}
|
||||
@ -685,6 +689,18 @@ This package contains a module for accessing network-based image files over an
|
||||
iSCSI network connection from qemu-img tool and QEMU system emulation.
|
||||
%endif
|
||||
|
||||
%if 0%{?is_opensuse}
|
||||
%package block-nfs
|
||||
Summary: direct Network File System support for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: %{qemuver}
|
||||
Release: 0
|
||||
%{qemu_module_conflicts}
|
||||
|
||||
%description block-nfs
|
||||
This package contains a module for directly accessing nfs based image files.
|
||||
%endif
|
||||
|
||||
%if 0%{?with_rbd}
|
||||
%package block-rbd
|
||||
Summary: Rados Block Device (Ceph) support for QEMU
|
||||
@ -820,7 +836,7 @@ to provide information and control at the guest OS level.
|
||||
%package seabios
|
||||
Summary: x86 Legacy BIOS for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: 1.11.2
|
||||
Version: 1.12.0
|
||||
Release: 0
|
||||
BuildArch: noarch
|
||||
Conflicts: %name < 1.6.0
|
||||
@ -832,7 +848,7 @@ is the default and legacy BIOS for QEMU.
|
||||
%package vgabios
|
||||
Summary: VGA BIOSes for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: 1.11.2
|
||||
Version: 1.12.0
|
||||
Release: 0
|
||||
BuildArch: noarch
|
||||
Conflicts: %name < 1.6.0
|
||||
@ -887,7 +903,7 @@ This package provides a service file for starting and stopping KSM.
|
||||
%endif # !qemu-testsuite
|
||||
|
||||
%prep
|
||||
%setup -q -n %{srcname}-%{qemuver}
|
||||
%setup -q -n %{srcname}-%{expand:%%(SV=%{srcver};echo ${SV%%%%+git*})}
|
||||
%patch0001 -p1
|
||||
%patch0002 -p1
|
||||
%patch0003 -p1
|
||||
@ -927,13 +943,6 @@ This package provides a service file for starting and stopping KSM.
|
||||
%patch0037 -p1
|
||||
%patch0038 -p1
|
||||
%patch0039 -p1
|
||||
%patch0040 -p1
|
||||
%patch0041 -p1
|
||||
%patch0042 -p1
|
||||
%patch0043 -p1
|
||||
%patch0044 -p1
|
||||
%patch0045 -p1
|
||||
%patch0046 -p1
|
||||
|
||||
pushd roms/seabios
|
||||
%patch1100 -p1
|
||||
@ -965,6 +974,9 @@ popd
|
||||
pushd ui/keycodemapdb
|
||||
popd
|
||||
|
||||
pushd roms/openbios
|
||||
popd
|
||||
|
||||
# as a safeguard, delete the firmware files that we intend to build
|
||||
for i in %built_firmware
|
||||
do
|
||||
@ -972,6 +984,15 @@ do
|
||||
done
|
||||
|
||||
%build
|
||||
XC_COMPAT="
|
||||
-DXC_WANT_COMPAT_DEVICEMODEL_API=1
|
||||
-DXC_WANT_COMPAT_EVTCHN_API=1
|
||||
-DXC_WANT_COMPAT_GNTTAB_API=1
|
||||
-DXC_WANT_COMPAT_MAP_FOREIGN_API=1
|
||||
"
|
||||
XC_COMPAT="`echo ${XC_COMPAT} | xargs`"
|
||||
sed -i~ /undef/d include/hw/xen/xen_common.h
|
||||
diff -u include/hw/xen/xen_common.h~ include/hw/xen/xen_common.h || :
|
||||
./configure \
|
||||
--prefix=%_prefix \
|
||||
--sysconfdir=%_sysconfdir \
|
||||
@ -985,7 +1006,7 @@ done
|
||||
%else
|
||||
--python=%_bindir/python2 \
|
||||
%endif
|
||||
--extra-cflags="%{optflags}" \
|
||||
--extra-cflags="%{optflags} ${XC_COMPAT}" \
|
||||
--disable-stack-protector \
|
||||
--disable-strip \
|
||||
--with-pkgversion="%(echo '%{distro}' | sed 's/ (.*)//')" \
|
||||
@ -1001,14 +1022,17 @@ done
|
||||
%endif
|
||||
--enable-attr \
|
||||
--enable-bluez \
|
||||
--enable-bochs \
|
||||
--enable-brlapi \
|
||||
--enable-bzip2 \
|
||||
--enable-cap-ng \
|
||||
--disable-capstone \
|
||||
--enable-cloop \
|
||||
--enable-coroutine-pool \
|
||||
--disable-crypto-afalg \
|
||||
--enable-curl \
|
||||
--enable-curses \
|
||||
--enable-dmg \
|
||||
--enable-fdt \
|
||||
--enable-gcrypt \
|
||||
%if 0%{?with_glusterfs}
|
||||
@ -1018,7 +1042,6 @@ done
|
||||
%endif
|
||||
--enable-gnutls \
|
||||
--enable-gtk \
|
||||
--with-gtkabi=3.0 \
|
||||
--disable-hax \
|
||||
--disable-hvf \
|
||||
--disable-jemalloc \
|
||||
@ -1032,7 +1055,16 @@ done
|
||||
%else
|
||||
--disable-libiscsi \
|
||||
%endif
|
||||
%if 0%{?is_opensuse}
|
||||
--enable-libnfs \
|
||||
%else
|
||||
--disable-libnfs \
|
||||
%endif
|
||||
%ifarch x86_64
|
||||
--enable-libpmem \
|
||||
%else
|
||||
--disable-libpmem \
|
||||
%endif
|
||||
--enable-libssh2 \
|
||||
--enable-libusb \
|
||||
--disable-libxml2 \
|
||||
@ -1071,6 +1103,14 @@ done
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-opengl \
|
||||
%endif
|
||||
--enable-parallels \
|
||||
%if 0%{?suse_version} >= 1315
|
||||
--enable-pvrdma \
|
||||
%else
|
||||
--disable-pvrdma \
|
||||
%endif
|
||||
--enable-qcow1 \
|
||||
--enable-qed \
|
||||
%if 0%{?with_rbd}
|
||||
--enable-rbd \
|
||||
%else
|
||||
@ -1098,6 +1138,7 @@ done
|
||||
%else
|
||||
--disable-seccomp \
|
||||
%endif
|
||||
--enable-sheepdog \
|
||||
%if 0%{?is_opensuse}
|
||||
--enable-smartcard \
|
||||
%else
|
||||
@ -1109,7 +1150,8 @@ done
|
||||
--enable-tpm \
|
||||
--enable-usb-redir \
|
||||
--enable-vde \
|
||||
--disable-vhost-crypto \
|
||||
--enable-vdi \
|
||||
--enable-vhost-crypto \
|
||||
--enable-vhost-net \
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-virglrenderer \
|
||||
@ -1124,6 +1166,7 @@ done
|
||||
%else
|
||||
--enable-vte \
|
||||
%endif
|
||||
--enable-vvfat \
|
||||
--disable-whpx \
|
||||
%ifarch x86_64
|
||||
--enable-xen \
|
||||
@ -1213,7 +1256,7 @@ done
|
||||
%endif
|
||||
|
||||
%if %{build_skiboot_from_source}
|
||||
make %{?_smp_mflags} -C roms skiboot SKIBOOT_VERSION=skiboot-5.9 CROSS=
|
||||
make %{?_smp_mflags} -C roms skiboot CROSS=
|
||||
%endif
|
||||
|
||||
%if %{build_slof_from_source}
|
||||
@ -1255,19 +1298,6 @@ export QEMU_IO_PROG=%_bindir/qemu-io
|
||||
export QEMU_NBD_PROG=%_bindir/qemu-nbd
|
||||
make check-block V=1
|
||||
|
||||
# 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
|
||||
@ -1424,6 +1454,7 @@ fi
|
||||
%_docdir/%name/qemu-ga-ref.html
|
||||
%_mandir/man1/%name.1.gz
|
||||
%_mandir/man7/qemu-block-drivers.7.gz
|
||||
%_mandir/man7/qemu-cpu-models.7.gz
|
||||
%_mandir/man7/qemu-qmp-ref.7.gz
|
||||
%_mandir/man7/qemu-ga-ref.7.gz
|
||||
%dir %_datadir/%name
|
||||
@ -1463,7 +1494,6 @@ fi
|
||||
%defattr(-, root, root)
|
||||
%_bindir/qemu-system-ppc
|
||||
%_bindir/qemu-system-ppc64
|
||||
%_bindir/qemu-system-ppcemb
|
||||
%_datadir/%name/bamboo.dtb
|
||||
%_datadir/%name/canyonlands.dtb
|
||||
%_datadir/%name/openbios-ppc
|
||||
@ -1568,6 +1598,13 @@ fi
|
||||
%_libdir/%name/block-iscsi.so
|
||||
%endif
|
||||
|
||||
%if 0%{?is_opensuse}
|
||||
%files block-nfs
|
||||
%defattr(-, root, root)
|
||||
%dir %_libdir/%name
|
||||
%_libdir/%name/block-nfs.so
|
||||
%endif
|
||||
|
||||
%if 0%{?with_rbd}
|
||||
%files block-rbd
|
||||
%defattr(-, root, root)
|
||||
@ -1638,6 +1675,8 @@ fi
|
||||
%_datadir/%name/vgabios-stdvga.bin
|
||||
%_datadir/%name/vgabios-virtio.bin
|
||||
%_datadir/%name/vgabios-vmware.bin
|
||||
%_datadir/%name/vgabios-bochs-display.bin
|
||||
%_datadir/%name/vgabios-ramfb.bin
|
||||
|
||||
%files sgabios
|
||||
%defattr(-, root, root)
|
||||
@ -1668,6 +1707,7 @@ fi
|
||||
%_mandir/man1/qemu-img.1.gz
|
||||
%_mandir/man1/virtfs-proxy-helper.1.gz
|
||||
%_mandir/man8/qemu-nbd.8.gz
|
||||
%_bindir/qemu-edid
|
||||
%_bindir/ivshmem-client
|
||||
%_bindir/ivshmem-server
|
||||
%_bindir/qemu-io
|
||||
|
148
qemu.spec.in
148
qemu.spec.in
@ -112,8 +112,7 @@ License: BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-
|
||||
Group: System/Emulators/PC
|
||||
QEMU_VERSION
|
||||
Release: 0
|
||||
Source: https://wiki.qemu.org/download/%{srcname}-%{version}.tar.xz
|
||||
Source99: https://wiki.qemu.org/download/%{srcname}-%{version}.tar.xz.sig
|
||||
Source: https://wiki.qemu.org/download/%{srcname}-%{srcver}.tar.xz
|
||||
Source100: %{srcname}.keyring
|
||||
Source1: 80-kvm.rules
|
||||
Source2: 71-sev.rules
|
||||
@ -133,41 +132,38 @@ Source14: supported.arm.txt
|
||||
Source300: qemu-rpmlintrc
|
||||
Source301: ipxe-stub-out-the-SAN-req-s-in-int13.patch
|
||||
Source400: update_git.sh
|
||||
# Upstream First -- https://wiki.qemu-project.org/Contribute/SubmitAPatch
|
||||
# Upstream First -- https://wiki.qemu.org/Contribute/SubmitAPatch
|
||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||
PATCH_FILES
|
||||
# Please do not add QEMU patches manually here.
|
||||
# Run update_git.sh to regenerate this queue.
|
||||
|
||||
# If for any reason we have base QEMU patches which are conditionally applied,
|
||||
# include them here
|
||||
|
||||
# SeaBIOS / SeaVGABIOS
|
||||
# SeaBIOS / SeaVGABIOS - path: roms/seabios (patch range 1100-1199)
|
||||
Patch1100: seabios-use-python2-explicitly-as-needed.patch
|
||||
Patch1101: seabios-switch-to-python3-as-needed.patch
|
||||
|
||||
# ipxe
|
||||
# PATCH-FIX-OPENSUSE ipxe-stable-buildid.patch brogers@suse.com -- reproducible builds
|
||||
# ipxe - path: roms/ipxe (patch range 1200-1299)
|
||||
Patch1200: ipxe-stable-buildid.patch
|
||||
Patch1201: ipxe-use-gcc6-for-more-compact-code.patch
|
||||
Patch1202: ipxe-efi-guard-strncpy-with-gcc-warning-ignore-pragma.patch
|
||||
Patch1203: ipxe-fix-build.patch
|
||||
|
||||
# sgabios
|
||||
# PATCH-FIX-OPENSUSE sgabios-stable-buildid.patch brogers@suse.com -- reproducible builds
|
||||
# sgabios - path: roms/sgabios (patch range 1300-1399)
|
||||
Patch1300: sgabios-stable-buildid.patch
|
||||
|
||||
# SLOF (Currently no patches)
|
||||
# SLOF - path: roms/SLOF (patch range 1400-1499) (Currently no patches)
|
||||
|
||||
# skiboot
|
||||
# skiboot - path: roms/skiboot (patch range 1500-1599)
|
||||
Patch1500: skiboot-hdata-i2c.c-fix-building-with-gcc8.patch
|
||||
|
||||
# ui/keycodemapdb (Currently no patches)
|
||||
# keycodemapdb - path: ui/keycodemapdb (patch range 1600-1699) (Currently no patches)
|
||||
|
||||
# openBIOS - path: roms/openbios (patch range 1700-1799) (Currently no patches)
|
||||
|
||||
# If for any reason we have any QEMU patches which are conditionally applied,
|
||||
# "manually" include them here:
|
||||
|
||||
ExcludeArch: s390
|
||||
%if "%{name}" == "qemu-testsuite"
|
||||
ExcludeArch: s390x
|
||||
%endif
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
#!BuildIgnore: gcc-PIE
|
||||
BuildRequires: Mesa-devel
|
||||
@ -218,17 +214,13 @@ BuildRequires: libfdt1-devel
|
||||
BuildRequires: libgbm-devel
|
||||
BuildRequires: libgcrypt-devel
|
||||
BuildRequires: libgnutls-devel
|
||||
%if 0%{?with_rbd}
|
||||
%if 0%{?is_opensuse} || 0%{?sle_version} > 120100
|
||||
BuildRequires: librbd-devel
|
||||
%else
|
||||
BuildRequires: ceph-devel
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: libiscsi-devel
|
||||
%endif
|
||||
BuildRequires: libjpeg-devel
|
||||
%if 0%{?is_opensuse}
|
||||
BuildRequires: libnfs-devel
|
||||
%endif
|
||||
%ifarch %ix86 x86_64
|
||||
%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315
|
||||
BuildRequires: libnuma-devel
|
||||
@ -246,8 +238,18 @@ BuildRequires: libnuma-devel
|
||||
%endif
|
||||
BuildRequires: libpcap-devel
|
||||
BuildRequires: libpixman-1-0-devel
|
||||
%ifarch x86_64
|
||||
BuildRequires: libpmem-devel
|
||||
%endif
|
||||
BuildRequires: libpng-devel
|
||||
BuildRequires: libpulse-devel
|
||||
%if 0%{?with_rbd}
|
||||
%if 0%{?is_opensuse} || 0%{?sle_version} > 120100
|
||||
BuildRequires: librbd-devel
|
||||
%else
|
||||
BuildRequires: ceph-devel
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?with_seccomp}
|
||||
BuildRequires: libseccomp-devel
|
||||
%endif
|
||||
@ -315,6 +317,9 @@ BuildRequires: qemu-block-gluster = %{qemuver}
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: qemu-block-iscsi = %{qemuver}
|
||||
%endif
|
||||
%if 0%{?is_opensuse}
|
||||
BuildRequires: qemu-block-nfs = %{qemuver}
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
BuildRequires: qemu-block-rbd = %{qemuver}
|
||||
%endif
|
||||
@ -371,6 +376,9 @@ Suggests: qemu-block-gluster
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
Suggests: qemu-block-iscsi
|
||||
%endif
|
||||
%if 0%{?is_opensuse}
|
||||
Suggests: qemu-block-nfs
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
Suggests: qemu-block-rbd
|
||||
%endif
|
||||
@ -411,12 +419,13 @@ multiboot.bin kvmvapic.bin}
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%define x86_extra_built_firmware_list {bios.bin bios-256k.bin sgabios.bin \
|
||||
vgabios.bin vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin \
|
||||
vgabios-vmware.bin vgabios-qxl.bin pxe-e1000.rom pxe-pcnet.rom \
|
||||
pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
|
||||
%define x86_extra_built_firmware_list {bios.bin bios-256k.bin pxe-e1000.rom \
|
||||
pxe-eepro100.rom pxe-ne2k_pci.rom pxe-pcnet.rom pxe-rtl8139.rom pxe-virtio.rom \
|
||||
sgabios.bin vgabios-bochs-display.bin vgabios.bin vgabios-cirrus.bin \
|
||||
vgabios-qxl.bin vgabios-ramfb.bin vgabios-stdvga.bin vgabios-virtio.bin \
|
||||
vgabios-vmware.bin}
|
||||
%define x86_64_only_extra_built_firmware_list {efi-e1000.rom efi-e1000e.rom \
|
||||
efi-eepro100.rom efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom \
|
||||
efi-eepro100.rom efi-ne2k_pci.rom efi-pcnet.rom efi-rtl8139.rom efi-virtio.rom \
|
||||
efi-vmxnet3.rom}
|
||||
|
||||
%if %{build_x86_firmware_from_source}
|
||||
@ -639,6 +648,18 @@ This package contains a module for accessing network-based image files over an
|
||||
iSCSI network connection from qemu-img tool and QEMU system emulation.
|
||||
%endif
|
||||
|
||||
%if 0%{?is_opensuse}
|
||||
%package block-nfs
|
||||
Summary: direct Network File System support for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: %{qemuver}
|
||||
Release: 0
|
||||
%{qemu_module_conflicts}
|
||||
|
||||
%description block-nfs
|
||||
This package contains a module for directly accessing nfs based image files.
|
||||
%endif
|
||||
|
||||
%if 0%{?with_rbd}
|
||||
%package block-rbd
|
||||
Summary: Rados Block Device (Ceph) support for QEMU
|
||||
@ -841,7 +862,7 @@ This package provides a service file for starting and stopping KSM.
|
||||
%endif # !qemu-testsuite
|
||||
|
||||
%prep
|
||||
%setup -q -n %{srcname}-%{qemuver}
|
||||
%setup -q -n %{srcname}-%{expand:%%(SV=%{srcver};echo ${SV%%%%+git*})}
|
||||
PATCH_EXEC
|
||||
|
||||
pushd roms/seabios
|
||||
@ -874,6 +895,9 @@ popd
|
||||
pushd ui/keycodemapdb
|
||||
popd
|
||||
|
||||
pushd roms/openbios
|
||||
popd
|
||||
|
||||
# as a safeguard, delete the firmware files that we intend to build
|
||||
for i in %built_firmware
|
||||
do
|
||||
@ -881,6 +905,15 @@ do
|
||||
done
|
||||
|
||||
%build
|
||||
XC_COMPAT="
|
||||
-DXC_WANT_COMPAT_DEVICEMODEL_API=1
|
||||
-DXC_WANT_COMPAT_EVTCHN_API=1
|
||||
-DXC_WANT_COMPAT_GNTTAB_API=1
|
||||
-DXC_WANT_COMPAT_MAP_FOREIGN_API=1
|
||||
"
|
||||
XC_COMPAT="`echo ${XC_COMPAT} | xargs`"
|
||||
sed -i~ /undef/d include/hw/xen/xen_common.h
|
||||
diff -u include/hw/xen/xen_common.h~ include/hw/xen/xen_common.h || :
|
||||
./configure \
|
||||
--prefix=%_prefix \
|
||||
--sysconfdir=%_sysconfdir \
|
||||
@ -894,7 +927,7 @@ done
|
||||
%else
|
||||
--python=%_bindir/python2 \
|
||||
%endif
|
||||
--extra-cflags="%{optflags}" \
|
||||
--extra-cflags="%{optflags} ${XC_COMPAT}" \
|
||||
--disable-stack-protector \
|
||||
--disable-strip \
|
||||
--with-pkgversion="%(echo '%{distro}' | sed 's/ (.*)//')" \
|
||||
@ -910,14 +943,17 @@ done
|
||||
%endif
|
||||
--enable-attr \
|
||||
--enable-bluez \
|
||||
--enable-bochs \
|
||||
--enable-brlapi \
|
||||
--enable-bzip2 \
|
||||
--enable-cap-ng \
|
||||
--disable-capstone \
|
||||
--enable-cloop \
|
||||
--enable-coroutine-pool \
|
||||
--disable-crypto-afalg \
|
||||
--enable-curl \
|
||||
--enable-curses \
|
||||
--enable-dmg \
|
||||
--enable-fdt \
|
||||
--enable-gcrypt \
|
||||
%if 0%{?with_glusterfs}
|
||||
@ -927,7 +963,6 @@ done
|
||||
%endif
|
||||
--enable-gnutls \
|
||||
--enable-gtk \
|
||||
--with-gtkabi=3.0 \
|
||||
--disable-hax \
|
||||
--disable-hvf \
|
||||
--disable-jemalloc \
|
||||
@ -941,7 +976,16 @@ done
|
||||
%else
|
||||
--disable-libiscsi \
|
||||
%endif
|
||||
%if 0%{?is_opensuse}
|
||||
--enable-libnfs \
|
||||
%else
|
||||
--disable-libnfs \
|
||||
%endif
|
||||
%ifarch x86_64
|
||||
--enable-libpmem \
|
||||
%else
|
||||
--disable-libpmem \
|
||||
%endif
|
||||
--enable-libssh2 \
|
||||
--enable-libusb \
|
||||
--disable-libxml2 \
|
||||
@ -980,6 +1024,14 @@ done
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-opengl \
|
||||
%endif
|
||||
--enable-parallels \
|
||||
%if 0%{?suse_version} >= 1315
|
||||
--enable-pvrdma \
|
||||
%else
|
||||
--disable-pvrdma \
|
||||
%endif
|
||||
--enable-qcow1 \
|
||||
--enable-qed \
|
||||
%if 0%{?with_rbd}
|
||||
--enable-rbd \
|
||||
%else
|
||||
@ -1007,6 +1059,7 @@ done
|
||||
%else
|
||||
--disable-seccomp \
|
||||
%endif
|
||||
--enable-sheepdog \
|
||||
%if 0%{?is_opensuse}
|
||||
--enable-smartcard \
|
||||
%else
|
||||
@ -1018,7 +1071,8 @@ done
|
||||
--enable-tpm \
|
||||
--enable-usb-redir \
|
||||
--enable-vde \
|
||||
--disable-vhost-crypto \
|
||||
--enable-vdi \
|
||||
--enable-vhost-crypto \
|
||||
--enable-vhost-net \
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-virglrenderer \
|
||||
@ -1033,6 +1087,7 @@ done
|
||||
%else
|
||||
--enable-vte \
|
||||
%endif
|
||||
--enable-vvfat \
|
||||
--disable-whpx \
|
||||
%ifarch x86_64
|
||||
--enable-xen \
|
||||
@ -1122,7 +1177,7 @@ done
|
||||
%endif
|
||||
|
||||
%if %{build_skiboot_from_source}
|
||||
make %{?_smp_mflags} -C roms skiboot SKIBOOT_VERSION=skiboot-5.9 CROSS=
|
||||
make %{?_smp_mflags} -C roms skiboot CROSS=
|
||||
%endif
|
||||
|
||||
%if %{build_slof_from_source}
|
||||
@ -1164,19 +1219,6 @@ export QEMU_IO_PROG=%_bindir/qemu-io
|
||||
export QEMU_NBD_PROG=%_bindir/qemu-nbd
|
||||
make check-block V=1
|
||||
|
||||
# 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
|
||||
@ -1333,6 +1375,7 @@ fi
|
||||
%_docdir/%name/qemu-ga-ref.html
|
||||
%_mandir/man1/%name.1.gz
|
||||
%_mandir/man7/qemu-block-drivers.7.gz
|
||||
%_mandir/man7/qemu-cpu-models.7.gz
|
||||
%_mandir/man7/qemu-qmp-ref.7.gz
|
||||
%_mandir/man7/qemu-ga-ref.7.gz
|
||||
%dir %_datadir/%name
|
||||
@ -1372,7 +1415,6 @@ fi
|
||||
%defattr(-, root, root)
|
||||
%_bindir/qemu-system-ppc
|
||||
%_bindir/qemu-system-ppc64
|
||||
%_bindir/qemu-system-ppcemb
|
||||
%_datadir/%name/bamboo.dtb
|
||||
%_datadir/%name/canyonlands.dtb
|
||||
%_datadir/%name/openbios-ppc
|
||||
@ -1477,6 +1519,13 @@ fi
|
||||
%_libdir/%name/block-iscsi.so
|
||||
%endif
|
||||
|
||||
%if 0%{?is_opensuse}
|
||||
%files block-nfs
|
||||
%defattr(-, root, root)
|
||||
%dir %_libdir/%name
|
||||
%_libdir/%name/block-nfs.so
|
||||
%endif
|
||||
|
||||
%if 0%{?with_rbd}
|
||||
%files block-rbd
|
||||
%defattr(-, root, root)
|
||||
@ -1547,6 +1596,8 @@ fi
|
||||
%_datadir/%name/vgabios-stdvga.bin
|
||||
%_datadir/%name/vgabios-virtio.bin
|
||||
%_datadir/%name/vgabios-vmware.bin
|
||||
%_datadir/%name/vgabios-bochs-display.bin
|
||||
%_datadir/%name/vgabios-ramfb.bin
|
||||
|
||||
%files sgabios
|
||||
%defattr(-, root, root)
|
||||
@ -1577,6 +1628,7 @@ fi
|
||||
%_mandir/man1/qemu-img.1.gz
|
||||
%_mandir/man1/virtfs-proxy-helper.1.gz
|
||||
%_mandir/man8/qemu-nbd.8.gz
|
||||
%_bindir/qemu-edid
|
||||
%_bindir/ivshmem-client
|
||||
%_bindir/ivshmem-server
|
||||
%_bindir/qemu-io
|
||||
|
@ -164,10 +164,8 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
acpitable, boot, and smp respectively.
|
||||
|
||||
- These previously supported command line options are now considered deprecated:
|
||||
-balloon (use -device virtio-balloon instead)
|
||||
-clock
|
||||
-device ivshmem (use ivshmem-doorbell or ivshmem-plain instead)
|
||||
-nodefconfig (use -no-user-config instead)
|
||||
-no-frame
|
||||
-virtioconsole (use -device virtconsole instead)
|
||||
|
||||
@ -175,9 +173,11 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
<previously mentioned items have been moved to another category>
|
||||
|
||||
- These previously supported command line options are no longer recognized:
|
||||
-balloon (use -device virtio-balloon instead)
|
||||
-device pc-sysfw (no longer needed)
|
||||
-device pci-assign, -device kvm-pci-assign (use -device vfio-pci instead)
|
||||
-display sdl
|
||||
-nodefconfig (use -no-user-config instead)
|
||||
-sdl
|
||||
|
||||
- The previously unsupported machine type xlnx-ep108 is no longer recognized
|
||||
@ -193,9 +193,13 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
and could possibly change syntax in the future.
|
||||
|
||||
- These previously unsupported command line options are now deprecated:
|
||||
-bt
|
||||
-enable-hax
|
||||
|
||||
- These previously unsupported command line options are no longer recognized:
|
||||
-device at24c-eeprom
|
||||
-device mmio_interface
|
||||
-device ssi-sd
|
||||
-tdf
|
||||
|
||||
- This previously supported QMP command is now deprecated:
|
||||
@ -238,7 +242,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
better functionality and usability going forward. In some cases existing
|
||||
problems or even bugs in older interfaces cannot be fixed due to functional
|
||||
expectations, but are resolved in the newer interface or option.
|
||||
This advice includes moving to the most recent machine type (eg virt-3.0
|
||||
This advice includes moving to the most recent machine type (eg virt-3.1
|
||||
instead of virt-2.11) if possible.
|
||||
|
||||
- The following command line options are supported:
|
||||
@ -247,7 +251,6 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-alt-grab
|
||||
-append ...
|
||||
-audio-help
|
||||
-balloon ...
|
||||
-bios ...
|
||||
-blockdev ...
|
||||
-boot ...
|
||||
@ -291,8 +294,8 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-kernel ...
|
||||
-loadvm ...
|
||||
-m ...
|
||||
-M [help|?|none|virt|virt-2.6|virt-2.11|virtio-3.0]
|
||||
-machine [help|?|none|virt|virt-2.6|virt-2.11|virt-3.0]
|
||||
-M [help|?|none|virt|virt-2.6|virt-2.11|virtio-3.1]
|
||||
-machine [help|?|none|virt|virt-2.6|virt-2.11|virt-3.1]
|
||||
-mem-path ...
|
||||
-mem-prealloc
|
||||
-mon ...
|
||||
@ -305,7 +308,6 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-nic ...
|
||||
-no-acpi
|
||||
-nodefaults
|
||||
-nodefconfig
|
||||
-no-frame
|
||||
-nographic
|
||||
-no-quit
|
||||
@ -510,6 +512,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
query-cpu-model-expansion
|
||||
query-cpus
|
||||
query-cpus-fast
|
||||
query-display-options
|
||||
query-dump
|
||||
query-dump-guest-memory-capability
|
||||
query-events
|
||||
@ -579,71 +582,73 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
arm1136-r2-arm-cpu|arm1176-arm-cpu|arm11mpcore-arm-cpu|
|
||||
arm11mpcore_priv|arm11-scu|arm926-arm-cpu|arm946-arm-cpu|
|
||||
ARMbitband-memory|arm.cortex-a9-global-timer|arm_gic|arm-gicv2m|
|
||||
arm_mptimer|armv7m_nvic|aspeed.timer|aspeed.vic|ast2400|at24c-eeprom|
|
||||
arm_mptimer|armv7m_nvic|aspeed.timer|aspeed.vic|ast2400|
|
||||
at25128a-nonjedec|at25256a-nonjedec|at25df041a|at25df321a|at25df641|
|
||||
at25fs010|at25fs040|at26df081a|at26df161a|at26df321|at26f004|
|
||||
at45db081d|bcm2835-aux|bcm2835-dma|bcm2835-fb|bcm2835-ic|bcm2835-mbox|
|
||||
bcm2835-peripherals|bcm2835-property|bcm2836|bcm2836-control|
|
||||
bochs-display|cadence_gem|cadence_ttc|cadence_uart|ccid-card-emulated|
|
||||
ccid-card-passthru|cfi.pflash02|cirrus-vga|corgi-ssp|
|
||||
cortex-a15-arm-cpu|cortex-a53-arm-cpu|cortex-a57-arm-cpu|
|
||||
cortex-a8-arm-cpu|cortex-a9-arm-cpu|cortex-m3-arm-cpu|
|
||||
ccid-card-passthru|cfi.pflash02|cirrus-vga|cmsdk-apb-dualtimer|
|
||||
cmsdk-apb-watchdog|corgi-ssp|cortex-a15-arm-cpu|cortex-a53-arm-cpu|
|
||||
cortex-a57-arm-cpu|cortex-a72-arm-cpu|cortex-a8-arm-cpu|
|
||||
cortex-a9-arm-cpu|cortex-m0-arm-cpu|cortex-m3-arm-cpu|
|
||||
cortex-m4-arm-cpu|cortex-r5-arm-cpu|cs4231a|digic|digic-timer|
|
||||
digic-uart|ds1338|dscm1xxxx|e1000|en25f32|en25p32|en25p64|en25q32b|
|
||||
en25q64|exynos4210.combiner|exynos4210-ehci-usb|exynos4210.fimd|
|
||||
exynos4210.gic|exynos4210.i2c|exynos4210.irq_gate|exynos4210.mct|
|
||||
exynos4210.pmu|exynos4210.pwm|exynos4210.rtc|exynos4210.uart|floppy|
|
||||
fslimx25|fslimx31|fusbh200-ehci-usb|fw_cfg|gd25q32|gd25q64|
|
||||
fsl,imx6ul|fslimx25|fslimx31|fusbh200-ehci-usb|fw_cfg|gd25q32|gd25q64|
|
||||
gpex-pcihost|gpex-root|gpio_i2c|gpio-key|gus|hyperv-testdev|
|
||||
highbank-regs|host-arm-cpu|*-i386-cpu|i8042|ib700|icp-ctrl-regs|
|
||||
igd-passthrough-isa-bridge|imx25.ccm|imx31.ccm|imx6.ccm|imx.avic|
|
||||
imx.epit|imx.fec|imx.gpio|imx.gpt|imx.i2c|imx.serial|integrator_core|
|
||||
integrator_debug|integrator_pic|integrator_pit|intel_iommu|
|
||||
ipmi-bmc-extern|ipmi-bmc-sim|isa-applesmc|isa-cirrus-vga|isa-debugcon|
|
||||
isa-debug-exit|isa-fdc|isa-ide|isa-ipmi-bt|isa-ipmi-kcs|isa-parallel|
|
||||
isa-vga|kvaser_pci|kvm-arm-gic|kvm-arm-gicv3|l2x0|lan9118|lm8323|
|
||||
loader|lsi53c810a|lsi53c895a|m25p05|m25p10|m25p128|m25p16|m25p20|
|
||||
m25p32|m25p40|m25p64|m25p80|m25pe16|m25pe20|m25pe80|m25px32|
|
||||
m25px32-s0|m25px32-s1|m25px64|m45pe10|m45pe16|m45pe80|mainstone-fpga|
|
||||
max1110|max1111|max7310|mioe3680_pci|mmio_interface|msf2-soc|
|
||||
msf2-sysreg|mss-sp1|mss-timer|musicpal_gpio|musicpal_key|musicpal_lcd|
|
||||
musicpal-misc|mv88w8618_audio|mv88w8618_eth|mv88w8618_flashcfg|
|
||||
mv88w8618_pic|mv88w8618_pit|mv88w8618_wlan|mx25l12805d|mx25l12855e|
|
||||
mx25l1606e|mx25l2005a|mx25l25635e|mx25l25655e|mx25l3205d|mx25l4005a|
|
||||
mx25l6405d|mx25l8005|n25q032|n25q032a11|n25q032a13|n25q064|n25q064a11|
|
||||
n25q064a13|n25q128|n25q128a11|n25q128a13|n25q256a|n25q256a11|
|
||||
n25q256a13|n25q512a|n25q512a11|n25q512a13|nand|ne2k_isa|nvdimm|
|
||||
omap2-gpio|omap2-intc|omap-gpio|omap_i2c|omap-intc|onenand|pc-dimm|
|
||||
pc-testdev|piix3-ide|piix3-ide|piix3-ide-xen|piix3-usb-uhci|pl011|
|
||||
pl011_luminary|pl022|pl031|pl041|pl050_keyboard|pl050_mouse|pl061|
|
||||
pl061_luminary|pl080|pl081|pl110|pl110_versatile|pl111|pl181|pl190|
|
||||
pl330|platform-bus-device|pvrdma|pxa250-arm-cpu|pxa255-arm-cpu|
|
||||
pxa25x-timer|pxa260-arm-cpu|pxa261-arm-cpu|pxa262-arm-cpu|
|
||||
pxa270-a0-arm-cpu|pxa270-a1-arm-cpu|pxa270-arm-cpu|pxa270-b0-arm-cpu|
|
||||
pxa270-b1-arm-cpu|pxa270-c0-arm-cpu|pxa270-c5-arm-cpu|pxa27x-timer|
|
||||
pxa2xx-dma|pxa2xx-fir|pxa2xx-gpio|pxa2xx_i2c|pxa2xx-i2c-slave|
|
||||
pxa2xx-mmci|pxa2xx-pcmcia|pxa2xx_pic|pxa2xx_rtc|pxa2xx-ssp|ramfb|
|
||||
realview_gic|realview_mpcore|realview_pci|realview_sysctl|s25fl016k|
|
||||
s25fl064k|s25fl129p0|s25fl129p1|s25fl256s0|s25fl256s1|s25fl512s|
|
||||
s25sl004a|s25sl008a|s25sl016a|s25sl032a|s25sl032p|s25sl064a|s25sl064p|
|
||||
imx.epit|imx.fec|imx.gpio|imx.gpt|imx.i2c|imx.serial|imx6ul.ccm|
|
||||
integrator_core|integrator_debug|integrator_pic|integrator_pit|
|
||||
intel_iommu|iotkit-sysctl|iotkit-sysinfo|ipmi-bmc-extern|ipmi-bmc-sim|
|
||||
isa-applesmc|isa-cirrus-vga|isa-debugcon|isa-debug-exit|isa-fdc|
|
||||
isa-ide|isa-ipmi-bt|isa-ipmi-kcs|isa-parallel|isa-vga|kvaser_pci|
|
||||
kvm-arm-gic|kvm-arm-gicv3|l2x0|lan9118|lm8323|loader|lsi53c810a|
|
||||
lsi53c895a|m25p05|m25p10|m25p128|m25p16|m25p20|m25p32|m25p40|m25p64|
|
||||
m25p80|m25pe16|m25pe20|m25pe80|m25px32|m25px32-s0|m25px32-s1|m25px64|
|
||||
m45pe10|m45pe16|m45pe80|mainstone-fpga|max1110|max1111|max7310|
|
||||
mioe3680_pci|msf2-soc|msf2-sysreg|mss-sp1|mss-timer|musicpal_gpio|
|
||||
musicpal_key|musicpal_lcd|musicpal-misc|mv88w8618_audio|mv88w8618_eth|
|
||||
mv88w8618_flashcfg|mv88w8618_pic|mv88w8618_pit|mv88w8618_wlan|
|
||||
mx25l12805d|mx25l12855e|mx25l1606e|mx25l2005a|mx25l25635e|mx25l25655e|
|
||||
mx25l3205d|mx25l4005a|mx25l6405d|mx25l8005|n25q032|n25q032a11|
|
||||
n25q032a13|n25q064|n25q064a11|n25q064a13|n25q128|n25q128a11|
|
||||
n25q128a13|n25q256a|n25q256a11|n25q256a13|n25q512a|n25q512a11|
|
||||
n25q512a13|nand|ne2k_isa|nrf51-soc|nrf51_soc.uart|nvdimm|omap2-gpio|
|
||||
omap2-intc|omap-gpio|omap_i2c|omap-intc|onenand|pc-dimm|pc-testdev|
|
||||
piix3-ide|piix3-ide|piix3-ide-xen|piix3-usb-uhci|pl011|pl011_luminary|
|
||||
pl022|pl031|pl041|pl050_keyboard|pl050_mouse|pl061|pl061_luminary|
|
||||
pl080|pl081|pl110|pl110_versatile|pl111|pl181|pl190|pl330|
|
||||
platform-bus-device|pvrdma|pxa250-arm-cpu|pxa255-arm-cpu|pxa25x-timer|
|
||||
pxa260-arm-cpu|pxa261-arm-cpu|pxa262-arm-cpu|pxa270-a0-arm-cpu|
|
||||
pxa270-a1-arm-cpu|pxa270-arm-cpu|pxa270-b0-arm-cpu|pxa270-b1-arm-cpu|
|
||||
pxa270-c0-arm-cpu|pxa270-c5-arm-cpu|pxa27x-timer|pxa2xx-dma|
|
||||
pxa2xx-fir|pxa2xx-gpio|pxa2xx_i2c|pxa2xx-i2c-slave|pxa2xx-mmci|
|
||||
pxa2xx-pcmcia|pxa2xx_pic|pxa2xx_rtc|pxa2xx-ssp|ramfb|realview_gic|
|
||||
realview_mpcore|realview_pci|realview_sysctl|s25fl016k|s25fl064k|
|
||||
s25fl129p0|s25fl129p1|s25fl256s0|s25fl256s1|s25fl512s|s25sl004a|
|
||||
s25sl008a|s25sl016a|s25sl032a|s25sl032p|s25sl064a|s25sl064p|
|
||||
s25sl12800|s25sl12801|s70fl01gs|sa1100-arm-cpu|sa1110-arm-cpu|sb16|
|
||||
scoop|sdhci-pci|sga|sii9022|sl-nand|smbus-eeprom|smc91c111|sp804|
|
||||
spitz-keyboard|spitz-lcdtg|ssd0303|ssd0323|ssi-sd|sst25vf016b|
|
||||
sst25vf032b|sst25vf040b|sst25vf080b|sst25wf010|sst25wf020|sst25wf040|
|
||||
sst25wf080|sst25wf512|stellaris-adc|stellaris_enet|stellaris-gptm|
|
||||
stellaris-i2c|stm32f205-soc|stm32f2xx-syscfg|stm32f2xx-timer|
|
||||
stm32f2xx-usart|strongarm-gpio|strongarm_pic|strongarm-ppc|
|
||||
strongarm-rtc|strongarm-ssp|strongarm-uart|tegra2-ehci-usb|
|
||||
ti925t-arm-cpu|tmp105|tosa_dac|tosa-ssp|tusb6010|twl92230|usb-redir|
|
||||
versatile_i2c|versatilepb_sic|versatile_pci|versatile_pci_host|
|
||||
vfio-pci-igd-lpc-bridge|vhost-user-blk|vhost-user-blk-pci|
|
||||
vhost-user-scsi|vhost-user-scsi-pci|vhost-vsock-device|
|
||||
vhost-vsock-pci|virtconsole|virtio-crypto-device|virtio-crypto-pci|
|
||||
virtio-vga|vmgenid|vmware-svga|w25q256|w25q32|w25q32dw|w25q64|w25q80|
|
||||
w25q80bl|w25x10|w25x16|w25x20|w25x32|w25x40|w25x64|w25x80|wm8750|
|
||||
*-x86_64-cpu|xen-backend|xen-pci-passthrough|xen-platform|
|
||||
xen-pvdevice|xgmac|xilinxzynq_slcr|xlnx.ps7-qspi|xlnx.ps7-spi|
|
||||
xlnxps7-usb|xlnxzynqmp|xlnxzynq-xadc]
|
||||
spitz-keyboard|spitz-lcdtg|ssd0303|ssd0323|sst25vf016b|sst25vf032b|
|
||||
sst25vf040b|sst25vf080b|sst25wf010|sst25wf020|sst25wf040| sst25wf080|
|
||||
sst25wf512|stellaris-adc|stellaris_enet|stellaris-gptm|stellaris-i2c|
|
||||
stm32f205-soc|stm32f2xx-syscfg|stm32f2xx-timer|stm32f2xx-usart|
|
||||
strongarm-gpio|strongarm_pic|strongarm-ppc|strongarm-rtc|
|
||||
strongarm-ssp|strongarm-uart|tegra2-ehci-usb|ti925t-arm-cpu|tmp105|
|
||||
tosa_dac|tosa-ssp|tusb6010|twl92230|tz-msc|usb-redir|versatile_i2c|
|
||||
versatilepb_sic|versatile_pci|versatile_pci_host|
|
||||
vfio-pci-igd-lpc-bridge|vfio-pci-nohotplug|vfio-platform|
|
||||
vhost-user-blk|vhost-user-blk-pci|vhost-user-scsi|vhost-user-scsi-pci|
|
||||
vhost-vsock-device|vhost-vsock-pci|virtconsole|virtio-crypto-device|
|
||||
virtio-crypto-pci|virtio-vga|vmgenid|vmware-svga|w25q256|w25q32|
|
||||
w25q32dw|w25q64|w25q80|w25q80bl|w25x10|w25x16|w25x20|w25x32|w25x40|
|
||||
w25x64|w25x80|wm8750|*-x86_64-cpu|xen-backend|xen-pci-passthrough|
|
||||
xen-platform|xen-pvdevice|xgmac|xilinxzynq_slcr|xlnx-versal|
|
||||
xlnx.ps7-qspi|xlnx.ps7-spi|xlnxps7-usb|xlnxzynqmp|xlnxzynq-xadc]
|
||||
(the following are aliases of these unsupported devices: lsi|
|
||||
virtio-input-host|virtio-keyboard|virtio-mouse|virtio-tablet|
|
||||
virtio-gpu||piix-usb-uhci)
|
||||
@ -654,6 +659,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
raw]
|
||||
-dtb file
|
||||
-enable-hax
|
||||
-enable-sync-profile
|
||||
-fda/-fdb ...
|
||||
-g ...
|
||||
-hda/-hdb/-hdc/-hdd ...
|
||||
@ -661,20 +667,22 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-L ...
|
||||
-M [akita|ast2500-evb|borzoi|canon-a1100|cheetah|collie|connex|cubieboard|
|
||||
highbank|imx25-pdk|integratorcp|kzm|lm3s6965evb|lm3s811evb|mainstone|
|
||||
mcimx7d-sabre|midway|mps2-an385|mps2-an505|mps2-an511|musicpal|n800|n810|
|
||||
netduino2|nuri|palmetto-bmc|raspi2|raspi3|realview-eb|realview-eb-mpcore|
|
||||
realview-pb-a8|realview-pbx-a9|romulus-bmc|sabrelite|smdkc210|spitz|sx1|
|
||||
sx1-v1|terrier|tosa|verdex|versatileab|versatilepb|vexpress-a15|
|
||||
vexpress-a9|virt-2.7|virt-2.8|virt-2.12|witherspoon-bmc|xilinx-zynq-a9|
|
||||
mcimx6ul-evk|mcimx7d-sabre|microbit|midway|mps2-an385|mps2-an505|
|
||||
mps2-an511|musicpal|n800|n810|netduino2|nuri|palmetto-bmc|raspi2|raspi3|
|
||||
realview-eb|realview-eb-mpcore|realview-pb-a8|realview-pbx-a9|
|
||||
romulus-bmc|sabrelite|smdkc210|spitz|sx1|sx1-v1|terrier|tosa|verdex|
|
||||
versatileab|versatilepb|vexpress-a15|vexpress-a9|virt-2.7|virt-2.8|
|
||||
virt-2.12|virt-3.0|witherspoon-bmc|xilinx-zynq-a9|xlnx-versal-virt|
|
||||
xlnx-zcu102|z2]
|
||||
-machine [akita|ast2500-evb|borzoi|canon-a1100|cheetah|collie|connex|
|
||||
cubieboard|highbank|imx25-pdk|integratorcp|kzm|lm3s6965evb|
|
||||
lm3s811evb|mainstone|mcimx7d-sabre|midway|mps2-an385|mps2-an505|
|
||||
mps2-an511|musicpal|n800|n810|netduino2|nuri|palmetto-bmc|raspi2|
|
||||
raspi3|realview-eb|realview-eb-mpcore|realview-pb-a8|realview-pbx-a9|
|
||||
romulus-bmc|sabrelite|smdkc210|spitz|sx1|sx1-v1|terrier|tosa|verdex|
|
||||
versatileab|versatilepb|vexpress-a15|vexpress-a9|virt-2.7|virt-2.8|
|
||||
virt-2.12|witherspoon-bmc|xilinx-zynq-a9|xlnx-zcu102|z2]
|
||||
lm3s811evb|mainstone|mcimx6ul-evk|mcimx7d-sabre|microbit|midway|
|
||||
mps2-an385|mps2-an505|mps2-an511|musicpal|n800|n810|netduino2|nuri|
|
||||
palmetto-bmc|raspi2|raspi3|realview-eb|realview-eb-mpcore|
|
||||
realview-pb-a8|realview-pbx-a9|romulus-bmc|sabrelite|smdkc210|spitz|
|
||||
sx1|sx1-v1|terrier|tosa|verdex|versatileab|versatilepb|vexpress-a15|
|
||||
vexpress-a9|virt-2.7|virt-2.8|virt-2.12|virt-3.0|witherspoon-bmc|
|
||||
xilinx-zynq-a9|xlnx-versal-virt|xlnx-zcu102|z2]
|
||||
-mtdblock file
|
||||
-net [dump|socket|vde] ...
|
||||
-netdev [dump|hubport|l2tpv3|socket|vde] ...
|
||||
@ -740,6 +748,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
singlestep ...
|
||||
snapshot_blkdev ...
|
||||
stopcapture ...
|
||||
sync-profile ...
|
||||
wavcapture ...
|
||||
x_colo_lost_heartbeat
|
||||
|
||||
@ -758,6 +767,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
nbd-server-add
|
||||
nbd-server-start
|
||||
nbd-server-stop
|
||||
query-colo-status
|
||||
query-sev
|
||||
query-sev-launch-measure
|
||||
x-block-dirty-bitmap-disable
|
||||
|
@ -163,10 +163,8 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
acpitable, boot, and smp respectively.
|
||||
|
||||
- These previously supported command line options are now considered deprecated:
|
||||
-balloon (use -device virtio-balloon instead)
|
||||
-clock
|
||||
-device ivshmem (use ivshmem-doorbell or ivshmem-plain instead)
|
||||
-nodefconfig (use -no-user-config instead)
|
||||
-no-frame
|
||||
-virtioconsole (use -device virtconsole instead)
|
||||
|
||||
@ -174,9 +172,11 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
<previously mentioned items have been moved to another category>
|
||||
|
||||
- These previously supported command line options are no longer recognized:
|
||||
-balloon (use -device virtio-balloon instead)
|
||||
-device pc-sysfw (no longer needed)
|
||||
-device pci-assign, -device kvm-pci-assign (use -device vfio-pci instead)
|
||||
-display sdl
|
||||
-nodefconfig (use -no-user-config instead)
|
||||
-sdl
|
||||
|
||||
- These previously unsupported command line options are no longer recognized:
|
||||
@ -195,9 +195,14 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
and could possibly change syntax in the future.
|
||||
|
||||
- These previously unsupported command line options are now deprecated:
|
||||
-bt
|
||||
-enable-hax
|
||||
-machine prep (use -machine 40p instead)
|
||||
-M prep (use -M 40p instead)
|
||||
|
||||
- These previously unsupported command line options are no longer recognized:
|
||||
-device isa-cirrus-vga
|
||||
-device ramfb
|
||||
-tdf
|
||||
|
||||
- This previously supported QMP command is now deprecated:
|
||||
@ -240,7 +245,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
better functionality and usability going forward. In some cases existing
|
||||
problems or even bugs in older interfaces cannot be fixed due to functional
|
||||
expectations, but are resolved in the newer interface or option.
|
||||
This advice includes moving to the most recent machine type (eg pseries-3.0
|
||||
This advice includes moving to the most recent machine type (eg pseries-3.1
|
||||
instead of pseries-2.11) if possible.
|
||||
|
||||
- The following command line options are supported:
|
||||
@ -249,7 +254,6 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-alt-grab
|
||||
-append ...
|
||||
-audio-help
|
||||
-balloon ...
|
||||
-bios ...
|
||||
-blockdev ...
|
||||
-boot ...
|
||||
@ -293,8 +297,8 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-kernel ...
|
||||
-loadvm ...
|
||||
-m ...
|
||||
-M [help|?|none|pseries|pseries-2.11|pseries-3.0]
|
||||
-machine [help|?|none|pseries|pseries-2.11|pseries-3.0]
|
||||
-M [help|?|none|pseries|pseries-2.11|pseries-3.1]
|
||||
-machine [help|?|none|pseries|pseries-2.11|pseries-3.1]
|
||||
-mem-path ...
|
||||
-mem-prealloc
|
||||
-mon ...
|
||||
@ -306,7 +310,6 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-netdev [bridge|tap|user] ...
|
||||
-nic ...
|
||||
-nodefaults
|
||||
-nodefconfig
|
||||
-no-frame
|
||||
-nographic
|
||||
-no-quit
|
||||
@ -504,6 +507,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
query-cpu-model-expansion
|
||||
query-cpus
|
||||
query-cpus-fast
|
||||
query-display-options
|
||||
query-dump
|
||||
query-dump-guest-memory-capability
|
||||
query-events
|
||||
@ -573,29 +577,29 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
e500-spin|escc|esp|eTSEC|floppy|generic-sdhci|gus|grackle-pcihost|
|
||||
host-spapr-cpu-core|hyperv-testdev|i8042|i82374|i82378|ib700|icp|
|
||||
icp-kvm|ics|icskvm|igd-passthrough-isa-bridge|intel_iommu|
|
||||
ipmi-bmc-extern|ipmi-bmc-sim|isa-applesmc|isa-cirrus-vga|isa-debugcon|
|
||||
isa-debug-exit|isa-fdc|isa-ide|isa-ipmi-bt|isa-ipmi-kcs|isa-m48t59|
|
||||
isa-parallel|isa-vga|isabus-bridge|kvm-openpic|loader|lsi53c810a|
|
||||
macio-ide|macio-nvram|mpc8544-guts|mpc8xxx_gpio|ne2k_isa|nvdimm|
|
||||
openpic|pc-dimm|pc-testdev|pc87312|piix3-ide|piix3-ide|piix3-ide-xen|
|
||||
piix3-usb-uhci|platform-bus-device|pnv-lpc|powernv-chip-POWER8|
|
||||
powernv-chip-POWER8E|powernv-chip-POWER8NVL|powernv-chip-POWER9|
|
||||
powernv-cpu-core-POWER8|powernv-cpu-core-POWER8E|
|
||||
powernv-cpu-core-POWER8NVL|powernv-cpu-core-POWER9|ppc4xx-pcihost|
|
||||
prep-systemio|raven-pcihost|rs6000-mc|sb16|sdhci-pci|sga spapr-nvram|
|
||||
spapr-rng|spapr-rtc|spapr-tce-table|spapr-vio-bridge|spapr-vlan|
|
||||
spapr-vscsi|spapr-vty|sysbus-m48t02|sysbus-m48t08|sysbus-m48t59|
|
||||
u3-agp-pcihost|uni-north-agp-pcihost|uni-north-internal-pci-pcihost|
|
||||
uni-north-pci|uni-north-pci-pcihost|unimplemented-device|usb-redir|
|
||||
vfio-pci-igd-lpc-bridge|vhost-vsock-device|vhost-vsock-pci|
|
||||
virtconsole|virtio-crypto-device|virtio-crypto-pci|virtio-mmio|
|
||||
virtio-vga|vmgenid|vmware-svga| xen-backend|xen-pci-passthrough|
|
||||
xen-platform|xen-pvdevice|xen-sysdev|xlnx.xps-ethernetlite|
|
||||
xlnx.xps-intc|xlnx.xps-timer|xlnx.xps-uartlite|*-i386-cpu|
|
||||
*-powerpc64-cpu|*-spapr-cpu-core|*-x86_64-cpu|vmcoreinfo|sii3112|
|
||||
vhost-user-blk|vhost-user-blk-pci|pvrdma|sungem|ccid-card-emulated|
|
||||
ccid-card-passthru| bochs-display|isa-cirrus-vga|ramfb|at24c-eeprom|
|
||||
i2c-ddc|kvaser_pci|m41t80|mioe3680_pci|pcm3680_pci]
|
||||
ipmi-bmc-extern|ipmi-bmc-sim|isa-applesmc|isa-debugcon|isa-debug-exit|
|
||||
isa-fdc|isa-ide|isa-ipmi-bt|isa-ipmi-kcs|isa-m48t59|isa-parallel|
|
||||
isa-vga|isabus-bridge|kvm-openpic|loader|lsi53c810a|macio-ide|
|
||||
macio-nvram|mpc8544-guts|mpc8xxx_gpio|ne2k_isa|nvdimm|openpic|pc-dimm|
|
||||
pc-testdev|pc87312|piix3-ide|piix3-ide|piix3-ide-xen|piix3-usb-uhci|
|
||||
platform-bus-device|pnv-lpc|powernv-chip-POWER8|powernv-chip-POWER8E|
|
||||
powernv-chip-POWER8NVL|powernv-chip-POWER9|powernv-cpu-core-POWER8|
|
||||
powernv-cpu-core-POWER8E|powernv-cpu-core-POWER8NVL|
|
||||
powernv-cpu-core-POWER9|ppc4xx-pcihost|prep-systemio|raven-pcihost|
|
||||
rs6000-mc|sb16|sdhci-pci|sga spapr-nvram|spapr-rng|spapr-rtc|
|
||||
spapr-tce-table|spapr-vio-bridge|spapr-vlan|spapr-vscsi|spapr-vty|
|
||||
sysbus-m48t02|sysbus-m48t08|sysbus-m48t59|u3-agp-pcihost|
|
||||
uni-north-agp-pcihost|uni-north-internal-pci-pcihost|uni-north-pci|
|
||||
uni-north-pci-pcihost|unimplemented-device|usb-redir|
|
||||
vfio-pci-igd-lpc-bridge|vfio-pci-nohotplug|vfio-platform|
|
||||
vhost-vsock-device|vhost-vsock-pci|virtconsole|virtio-crypto-device|
|
||||
virtio-crypto-pci|virtio-mmio|virtio-vga|vmgenid|vmware-svga|
|
||||
xen-backend|xen-pci-passthrough|xen-platform|xen-pvdevice|xen-sysdev|
|
||||
xlnx.xps-ethernetlite|xlnx.xps-intc|xlnx.xps-timer|xlnx.xps-uartlite|
|
||||
*-i386-cpu|*-powerpc64-cpu|*-spapr-cpu-core|*-x86_64-cpu|vmcoreinfo|
|
||||
sii3112|vhost-user-blk|vhost-user-blk-pci|pvrdma|sungem|
|
||||
ccid-card-emulated|ccid-card-passthru| bochs-display|isa-cirrus-vga|
|
||||
at24c-eeprom|i2c-ddc|kvaser_pci|m41t80|mioe3680_pci|pcm3680_pci]
|
||||
(the following are aliases of these unsupported devices: lsi|
|
||||
virtio-input-host|virtio-keyboard|virtio-mouse|virtio-tablet|
|
||||
virtio-gpu|piix-usb-uhci|mac-dbdma|ppc4xx-i2c)
|
||||
@ -606,6 +610,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
raw]
|
||||
-dtb file
|
||||
-enable-hax
|
||||
-enable-sync-profile
|
||||
-fda/-fdb ...
|
||||
-g ...
|
||||
-hda/-hdb/-hdc/-hdd ...
|
||||
@ -614,11 +619,11 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-M [40p|bamboo|g3beige|mac99|mpc8544ds|powernv|ppce500|prep|pseries-2.1|
|
||||
pseries-2.2|pseries-2.3|pseries-2.4|pseries-2.5|pseries-2.6|pseries-2.7|
|
||||
pseries-2.8|pseries-2.9|pseries-2.10|pseries-2.12|pseries-2.12-sxxm|
|
||||
ref405ep|sam460ex|taihu|virtex-ml507]
|
||||
pseries-3.0|ref405ep|sam460ex|taihu|virtex-ml507]
|
||||
-machine [40p|bamboo|g3beige|mac99|mpc8544ds|powernv|ppce500|prep|pseries-2.1|
|
||||
pseries-2.2|pseries-2.3|pseries-2.4|pseries-2.5|pseries-2.6|
|
||||
pseries-2.7|pseries-2.8|pseries-2.10|pseries-2.12|pseries-2.12-sxxm|
|
||||
ref405ep|sam460ex|taihu|virtex-ml507]
|
||||
pseries-3.0|ref405ep|sam460ex|taihu|virtex-ml507]
|
||||
-mtdblock file
|
||||
-net [dump|socket|vde] ...
|
||||
-netdev [dump|hubport|l2tpv3|socket|vde] ...
|
||||
@ -682,6 +687,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
singlestep ...
|
||||
snapshot_blkdev ...
|
||||
stopcapture ...
|
||||
sync-profile ...
|
||||
wavcapture ...
|
||||
x_colo_lost_heartbeat
|
||||
|
||||
@ -701,6 +707,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
nbd-server-add
|
||||
nbd-server-start
|
||||
nbd-server-stop
|
||||
query-colo-status
|
||||
query-sev
|
||||
query-sev-launch-measure
|
||||
x-block-dirty-bitmap-disable
|
||||
|
@ -165,10 +165,8 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
acpitable, boot, and smp respectively.
|
||||
|
||||
- These previously supported command line options are now considered deprecated:
|
||||
-balloon (use -device virtio-balloon instead)
|
||||
-clock
|
||||
-device ivshmem (use ivshmem-doorbell or ivshmem-plain instead)
|
||||
-nodefconfig (use -no-user-config instead)
|
||||
-no-frame
|
||||
-virtioconsole (use -device virtconsole instead)
|
||||
|
||||
@ -176,9 +174,11 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
<previously mentioned items have been moved to another category>
|
||||
|
||||
- These previously supported command line options are no longer recognized:
|
||||
-balloon (use -device virtio-balloon instead)
|
||||
-device pc-sysfw (no longer needed)
|
||||
-device pci-assign, -device kvm-pci-assign (use -device vfio-pci instead)
|
||||
-display sdl
|
||||
-nodefconfig (use -no-user-config instead)
|
||||
-sdl
|
||||
|
||||
- Specifying a cpu feature with both "+feature/-feature" and "feature=on/off"
|
||||
@ -191,9 +191,12 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
and could possibly change syntax in the future.
|
||||
|
||||
- These previously unsupported command line options are now deprecated:
|
||||
-bt
|
||||
-enable-hax
|
||||
|
||||
- These previously unsupported command line options are no longer recognized:
|
||||
-device mmio_interface
|
||||
-device ramfb
|
||||
-tdf
|
||||
|
||||
- This previously supported QMP command is now deprecated:
|
||||
@ -237,7 +240,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
problems or even bugs in older interfaces cannot be fixed due to functional
|
||||
expectations, but are resolved in the newer interface or option.
|
||||
This advice includes moving to the most recent machine type (eg
|
||||
s390-ccw-virtio-3.0 instead of s390-ccw-virtio-2.11) if possible.
|
||||
s390-ccw-virtio-3.1 instead of s390-ccw-virtio-2.11) if possible.
|
||||
|
||||
- The following command line options are supported:
|
||||
-accel ...
|
||||
@ -245,7 +248,6 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-alt-grab
|
||||
-append ...
|
||||
-audio-help
|
||||
-balloon ...
|
||||
-bios ...
|
||||
-blockdev ...
|
||||
-boot ...
|
||||
@ -286,9 +288,9 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-loadvm ...
|
||||
-m ...
|
||||
-M [help|?|none|s390-ccw-virtio|s390-ccw-virtio-2.6|s390-ccw-virtio-2.9|
|
||||
s390-ccw-virtio-2.11|s390-ccw-virtio-3.0]
|
||||
s390-ccw-virtio-2.11|s390-ccw-virtio-3.1]
|
||||
-machine [help|?|none|s390-ccw-virtio|s390-ccw-virtio-2.6|s390-ccw-virtio-2.9|
|
||||
s390-ccw-virtio-2.11|s390-ccw-virtio-3.0]
|
||||
s390-ccw-virtio-2.11|s390-ccw-virtio-3.1]
|
||||
-mem-path ...
|
||||
-mem-prealloc
|
||||
-mon ...
|
||||
@ -300,7 +302,6 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-netdev [bridge|tap|user] ...
|
||||
-nic ...
|
||||
-nodefaults
|
||||
-nodefconfig
|
||||
-no-frame
|
||||
-nographic
|
||||
-no-quit
|
||||
@ -500,6 +501,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
query-cpu-model-expansion
|
||||
query-cpus
|
||||
query-cpus-fast
|
||||
query-display-options
|
||||
query-dump
|
||||
query-dump-guest-memory-capability
|
||||
query-events
|
||||
@ -571,43 +573,44 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
igd-passthrough-isa-bridge|intel-hda|intel_iommu|ioh3420|
|
||||
ipmi-bmc-extern|ipmi-bmc-sim|ipoctal232|isa-applesmc|isa-cirrus-vga|
|
||||
isa-debugcon|isa-debug-exit|isa-fdc|isa-ide|isa-ipmi-bt|isa-ipmi-kcs|
|
||||
isa-parallel|isa-serial|isa-vga|lsi53c810|lsi53c810a|megasas|
|
||||
mmio_interface|mptsas1068|ne2k_isa|ne2k_pci|nec-usb-xhci|nvdimm|nvme|
|
||||
pc-dimm|pci-testdev|pcnet|pc-testdev|piix3-ide|piix3-ide|
|
||||
piix3-ide-xen|piix4-usb-uhci|pvrdma|pvscsi|pxb|pxb-host|pxb-pcie|
|
||||
qemu-s390-cpu|ramfb|rocker|s390-flic|s390-flic-qemu|s390-ipl|
|
||||
s390-pcihost|s390-sclp-event-facility|s390-skeys-qemu|sb16|sclp|
|
||||
sclpconsole|sclp-cpu-hotplug|sclplmconsole|sclp-memory-hotplug-dev|
|
||||
sclpquiesce|sd-card|sdhci-pci|secondary-vga|sga|smbus-eeprom|tpci200|
|
||||
usb-audio|usb-bot|usb-bt-dongle|usb-ccid|usb-mtp|usb-uas|
|
||||
vhost-scsi-ccw|vhost-user-blk|vhost-user-blk-pci|vhost-user-scsi|
|
||||
vhost-user-scsi-pci|vhost-vsock-ccw|virtio-9p-device|
|
||||
virtio-balloon-ccw|virtio-blk-ccw|virtio-crypto-ccw|virtio-net-ccw|
|
||||
virtio-rng-ccw|virtio-scsi-ccw|virtio-serial-ccw|virtio-vga|
|
||||
virtual-css-bridge|vmcoreinfo|vmgenid|vmware-svga|vmxnet3|
|
||||
vt82c686b-usb-uhci|x3130-upstream|*-x86_64-cpu|xen-backend|
|
||||
xen-pci-passthrough|xen-platform|xen-pvdevice|xio3130-downstream|
|
||||
z10BC.2-base-s390x-cpu|z10BC.2-s390x-cpu|z10BC-base-s390x-cpu|
|
||||
z10BC-s390x-cpu|z10EC.2-base-s390x-cpu|z10EC.2-s390x-cpu|
|
||||
z10EC.3-base-s390x-cpu|z10EC.3-s390x-cpu|z10EC-base-s390x-cpu|
|
||||
z10EC-s390x-cpu|z114-base-s390x-cpu|z114-s390x-cpu|
|
||||
z13.2-base-s390x-cpu|z13.2-s390x-cpu|z13-base-s390x-cpu|z13-s390x-cpu|
|
||||
z13s-base-s390x-cpu|z13s-s390x-cpu|z196.2-base-s390x-cpu|
|
||||
z196.2-s390x-cpu|z196-base-s390x-cpu|z196-s390x-cpu|
|
||||
z800-base-s390x-cpu|z800-s390x-cpu|z890.2-base-s390x-cpu|
|
||||
z890.2-s390x-cpu|z890.3-base-s390x-cpu|z890.3-s390x-cpu|
|
||||
z890-base-s390x-cpu|z890-s390x-cpu|z900.2-base-s390x-cpu|
|
||||
z900.2-s390x-cpu|z900.3-base-s390x-cpu|z900.3-s390x-cpu|
|
||||
z900-base-s390x-cpu|z900-s390x-cpu|z990.2-base-s390x-cpu|
|
||||
z990.2-s390x-cpu|z990.3-base-s390x-cpu|z990.3-s390x-cpu|
|
||||
z990.4-base-s390x-cpu|z990.4-s390x-cpu|z990.5-base-s390x-cpu|
|
||||
z990.5-s390x-cpu|z990-base-s390x-cpu|z990-s390x-cpu|
|
||||
z9BC.2-base-s390x-cpu|z9BC.2-s390x-cpu|z9BC-base-s390x-cpu|
|
||||
z9BC-s390x-cpu|z9EC.2-base-s390x-cpu|z9EC.2-s390x-cpu|
|
||||
z9EC.3-base-s390x-cpu|z9EC.3-s390x-cpu|z9EC-base-s390x-cpu|
|
||||
z9EC-s390x-cpu|z14ZR1-base-s390x-cpu|z14ZR1-s390x-cpu|
|
||||
zBC12-base-s390x-cpu|zBC12-s390x-cpu|zEC12.2-base-s390x-cpu|
|
||||
zEC12.2-s390x-cpu|zEC12-base-s390x-cpu|zEC12-s390x-cpu]
|
||||
isa-parallel|isa-serial|isa-vga|lsi53c810|lsi53c810a|max-s390x-cpu|
|
||||
megasas|mptsas1068|ne2k_isa|ne2k_pci|nec-usb-xhci|nvdimm|nvme|pc-dimm|
|
||||
pci-testdev|pcnet|pc-testdev|piix3-ide|piix3-ide|piix3-ide-xen|
|
||||
piix4-usb-uhci|pvrdma|pvscsi|pxb|pxb-host|pxb-pcie|qemu-s390-cpu|
|
||||
rocker|s390-flic|s390-flic-qemu|s390-ipl|s390-pcihost|
|
||||
s390-sclp-event-facility|s390-skeys-qemu|sb16|sclp|sclpconsole|
|
||||
sclp-cpu-hotplug|sclplmconsole|sclp-memory-hotplug-dev|sclpquiesce|
|
||||
sd-card|sdhci-pci|secondary-vga|sga|smbus-eeprom|tpci200|usb-audio|
|
||||
usb-bot|usb-bt-dongle|usb-ccid|usb-mtp|usb-uas|vfio-ap|
|
||||
vfio-pci-nohotplug|vfio-platform|vhost-scsi-ccw|vhost-user-blk|
|
||||
vhost-user-blk-pci|vhost-user-scsi|vhost-user-scsi-pci|
|
||||
vhost-vsock-ccw|virtio-9p-device|virtio-balloon-ccw|virtio-blk-ccw|
|
||||
virtio-crypto-ccw|virtio-net-ccw|virtio-rng-ccw|virtio-scsi-ccw|
|
||||
virtio-serial-ccw|virtio-vga|virtual-css-bridge|vmcoreinfo|vmgenid|
|
||||
vmware-svga|vmxnet3|vt82c686b-usb-uhci|x3130-upstream|*-x86_64-cpu|
|
||||
xen-backend|xen-pci-passthrough|xen-platform|xen-pvdevice|
|
||||
xio3130-downstream|z10BC.2-base-s390x-cpu|z10BC.2-s390x-cpu|
|
||||
z10BC-base-s390x-cpu|z10BC-s390x-cpu|z10EC.2-base-s390x-cpu|
|
||||
z10EC.2-s390x-cpu|z10EC.3-base-s390x-cpu|z10EC.3-s390x-cpu|
|
||||
z10EC-base-s390x-cpu|z10EC-s390x-cpu|z114-base-s390x-cpu|
|
||||
z114-s390x-cpu|z13.2-base-s390x-cpu|z13.2-s390x-cpu|
|
||||
z13-base-s390x-cpu|z13-s390x-cpu|z13s-base-s390x-cpu|z13s-s390x-cpu|
|
||||
z196.2-base-s390x-cpu|z196.2-s390x-cpu|z196-base-s390x-cpu|
|
||||
z196-s390x-cpu|z800-base-s390x-cpu|z800-s390x-cpu|
|
||||
z890.2-base-s390x-cpu|z890.2-s390x-cpu|z890.3-base-s390x-cpu|
|
||||
z890.3-s390x-cpu|z890-base-s390x-cpu|z890-s390x-cpu|
|
||||
z900.2-base-s390x-cpu|z900.2-s390x-cpu|z900.3-base-s390x-cpu|
|
||||
z900.3-s390x-cpu|z900-base-s390x-cpu|z900-s390x-cpu|
|
||||
z990.2-base-s390x-cpu|z990.2-s390x-cpu|z990.3-base-s390x-cpu|
|
||||
z990.3-s390x-cpu|z990.4-base-s390x-cpu|z990.4-s390x-cpu|
|
||||
z990.5-base-s390x-cpu|z990.5-s390x-cpu|z990-base-s390x-cpu|
|
||||
z990-s390x-cpu|z9BC.2-base-s390x-cpu|z9BC.2-s390x-cpu|
|
||||
z9BC-base-s390x-cpu|z9BC-s390x-cpu|z9EC.2-base-s390x-cpu|
|
||||
z9EC.2-s390x-cpu|z9EC.3-base-s390x-cpu|z9EC.3-s390x-cpu|
|
||||
z9EC-base-s390x-cpu|z9EC-s390x-cpu|z14ZR1-base-s390x-cpu|
|
||||
z14ZR1-s390x-cpu|zBC12-base-s390x-cpu|zBC12-s390x-cpu|
|
||||
zEC12.2-base-s390x-cpu|zEC12.2-s390x-cpu|zEC12-base-s390x-cpu|
|
||||
zEC12-s390x-cpu]
|
||||
(the following are aliases of these unsupported devices: lsi|
|
||||
virtio-input-host|virtio-keyboard|virtio-mouse|virtio-tablet|
|
||||
virtio-gpu|virtio-9p|ahci|e1000-82540em|vfio-ccw)
|
||||
@ -618,15 +621,18 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
raw]
|
||||
-dtb file
|
||||
-enable-hax
|
||||
-enable-sync-profile
|
||||
-fda/-fdb ...
|
||||
-g ...
|
||||
-hda/-hdb/-hdc/-hdd ...
|
||||
-icount ...
|
||||
-L ...
|
||||
-M [s390-ccw-virtio-2.4|s390-ccw-virtio-2.5|s390-ccw-virtio-2.7|
|
||||
s390-ccw-virtio-2.8|s390-ccw-virtio-2.10|s390-ccw-virtio-2.12]
|
||||
s390-ccw-virtio-2.8|s390-ccw-virtio-2.10|s390-ccw-virtio-2.12|
|
||||
s390-ccw-virtio-3.0]
|
||||
-machine [s390-ccw-virtio-2.4|s390-ccw-virtio-2.5|s390-ccw-virtio-2.7|
|
||||
s390-ccw-virtio-2.8|s390-ccw-virtio-2.10|s390-ccw-virtio-2.12]
|
||||
s390-ccw-virtio-2.8|s390-ccw-virtio-2.10|s390-ccw-virtio-2.12|
|
||||
s390-ccw-virtio-3.0]
|
||||
-mtdblock file
|
||||
-net [dump|socket|vde] ...
|
||||
-netdev [dump|hubport|l2tpv3|socket|vde] ...
|
||||
@ -699,6 +705,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
singlestep ...
|
||||
snapshot_blkdev ...
|
||||
stopcapture ...
|
||||
sync-profile ...
|
||||
wavcapture ...
|
||||
x_colo_lost_heartbeat
|
||||
|
||||
@ -717,6 +724,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
nbd-server-add
|
||||
nbd-server-start
|
||||
nbd-server-stop
|
||||
query-colo-status
|
||||
query-sev
|
||||
query-sev-launch-measure
|
||||
query-tpm
|
||||
|
@ -205,10 +205,8 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
versions.
|
||||
|
||||
- These previously supported command line options are now considered deprecated:
|
||||
-balloon (use -device virtio-balloon instead)
|
||||
-clock
|
||||
-device ivshmem (use ivshmem-doorbell or ivshmem-plain instead)
|
||||
-nodefconfig (use -no-user-config instead)
|
||||
-no-frame
|
||||
-virtioconsole (use -device virtconsole instead)
|
||||
|
||||
@ -216,9 +214,11 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
<previously mentioned items have been moved to another category>
|
||||
|
||||
- These previously supported command line options are no longer recognized:
|
||||
-balloon (use -device virtio-balloon instead)
|
||||
-device pc-sysfw (no longer needed)
|
||||
-device pci-assign, -device kvm-pci-assign (use -device vfio-pci instead)
|
||||
-display sdl
|
||||
-nodefconfig (use -no-user-config instead)
|
||||
-sdl
|
||||
|
||||
- Specifying a cpu feature with both "+feature/-feature" and "feature=on/off"
|
||||
@ -231,6 +231,7 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
and could possibly change syntax in the future.
|
||||
|
||||
- These previously unsupported command line options are now deprecated:
|
||||
-bt
|
||||
-enable-hax (used -accel hax instead)
|
||||
-no-kvm-pit
|
||||
|
||||
@ -241,6 +242,7 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
vcpu count.
|
||||
|
||||
- These previously unsupported command line options are no longer recognized:
|
||||
-device at24c-eeprom
|
||||
-device ccid-card-passthru
|
||||
-device cfi.pflash01
|
||||
-device esp
|
||||
@ -249,6 +251,7 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
-device icc-bridge
|
||||
-device q35-pcihost
|
||||
-device mch
|
||||
-device mmio_interface
|
||||
-device smbus-eeprom
|
||||
-device SUNW,fdtwo
|
||||
-device sysbus-ahci
|
||||
@ -301,6 +304,9 @@ Deprecated, Superseded, Modified and Dropped Features
|
||||
supported and it is highly discouraged to continue using existing qed images.
|
||||
They should instead be converted to another supported format.
|
||||
|
||||
- If KVM Intel nested virtualization is enabled, and the guest is passed the vmx
|
||||
feature, then live migration or save/restore is prohibited.
|
||||
|
||||
QEMU Command-Line and Monitor Syntax and Support
|
||||
------------------------------------------------
|
||||
|
||||
@ -322,7 +328,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
better functionality and usability going forward. In some cases existing
|
||||
problems or even bugs in older interfaces cannot be fixed due to functional
|
||||
expectations, but are resolved in the newer interface or option.
|
||||
This advice includes moving to the most recent machine type (eg pc-i440fx-3.0
|
||||
This advice includes moving to the most recent machine type (eg pc-i440fx-3.1
|
||||
instead of pc-i440fx-2.11) if possible.
|
||||
|
||||
- The following command line options are supported:
|
||||
@ -331,7 +337,6 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-alt-grab
|
||||
-append ...
|
||||
-audio-help
|
||||
-balloon ...
|
||||
-bios ...
|
||||
-blockdev ...
|
||||
-boot ...
|
||||
@ -383,11 +388,11 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-m ...
|
||||
-M [help|?|none|pc|pc-0.12|pc-0.14|pc-0.15|pc-i440fx-1.4|pc-i440fx-1.7|
|
||||
pc-i440fx-2.0|pc-i440fx-2.3|pc-i440fx-2.6|pc-i440fx-2.9|pc-i440fx-2.11|
|
||||
pc-i440fx-3.0|q35|pc-q35-2.6|pc-q35-2.9|pc-q35-2.11|pc-q35-3.0|xenfv|xenpv]
|
||||
pc-i440fx-3.0|q35|pc-q35-2.6|pc-q35-2.9|pc-q35-2.11|pc-q35-3.1|xenfv|xenpv]
|
||||
-machine [help|?|none|pc|pc-0.12|pc-0.14|pc-0.15|pc-i440fx-1.4|pc-i440fx-1.7|
|
||||
pc-i440fx-2.0|pc-i440fx-2.3|pc-440fx-2.6|pc-i440fx-2.9|
|
||||
pc-i440fx-2.11|pc-i440fx-3.0|q35|pc-q35-2.6|pc-q35-2.9|pc-q35-2.11|
|
||||
pc-q35-3.0|xenfv|xenpv]
|
||||
pc-q35-3.1|xenfv|xenpv]
|
||||
-mem-path ...
|
||||
-mem-prealloc
|
||||
-mon ...
|
||||
@ -400,7 +405,6 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
-nic ...
|
||||
-no-acpi
|
||||
-nodefaults
|
||||
-nodefconfig
|
||||
-no-fd-bootchk
|
||||
-no-frame
|
||||
-nographic
|
||||
@ -614,6 +618,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
query-cpu-model-expansion
|
||||
query-cpus
|
||||
query-cpus-fast
|
||||
query-display-options
|
||||
query-dump
|
||||
query-dump-guest-memory-capability
|
||||
query-events
|
||||
@ -705,10 +710,10 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
virtio-gpu-device|amd-iommu|AMDVI-PCI|vhost-vsock-device|
|
||||
vhost-vsock-pci|virtio-crypto-device|virtio-crypto-pci|
|
||||
vfio-pci-igd-lpc-bridge|pcie-root-port|qemu-xhci|*-i386-cpu|
|
||||
*-x86_64-cpu|vhost-user-scsi|vhost-user-scsi-pci|mmio_interface|
|
||||
vhost-user-blk|vhost-user-blk-pci|pvrdma|bochs-display|ramfb|
|
||||
ccid-card-emulated|ccid-card-passthru|at24c-eeprom|kvaser_pci|tpm-crb|
|
||||
mioe3680_pci|pcm3680_pci]
|
||||
*-x86_64-cpu|vhost-user-scsi|vhost-user-scsi-pci|vhost-user-blk|
|
||||
vhost-user-blk-pci|pvrdma|bochs-display|ramfb|ccid-card-emulated|
|
||||
ccid-card-passthru|kvaser_pci|tpm-crb|mioe3680_pci|pcm3680_pci|
|
||||
hyperv-synic|vfio-pci-nohotplug|vfio-platform]
|
||||
(the following are aliases of these unsupported devices: lsi|
|
||||
virtio-input-host|virtio-keyboard|virtio-mouse|virtio-tablet|
|
||||
virtio-gpu)
|
||||
@ -719,21 +724,22 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
raw]
|
||||
-dtb file
|
||||
-enable-hax
|
||||
-enable-sync-profile
|
||||
-g ...
|
||||
-icount ...
|
||||
-L ...
|
||||
-M [isapc|pc-0.10|pc-0.11|pc-0.13|pc-1.0|pc-1.1|pc-1.2|pc-1.3|pc-i440fx-1.5|
|
||||
pc-i440fx-1.6|pc-i440fx-2.1|pc-i440fx-2.2|pc-i440fx-2.4|pc-i440fx-2.5|
|
||||
pc-i440fx-2.7|pc-i440fx-2.8|pc-i440fx-2.10|pc-i440fx-2.12|pc-q35-1.4|
|
||||
pc-q35-1.5|pc-q35-1.6|pc-q35-1.7|pc-q35-2.0|pc-q35-2.1|pc-q35-2.2|
|
||||
pc-q35-2.3|pc-q35-2.4|pc-q35-2.5|pc-q35-2.7|pc-q35-2.8|pc-q35-2.10|
|
||||
pc-q35-2.12]
|
||||
pc-i440fx-2.7|pc-i440fx-2.8|pc-i440fx-2.10|pc-i440fx-2.12|pc-i440fx-3.0|
|
||||
pc-q35-1.4|pc-q35-1.5|pc-q35-1.6|pc-q35-1.7|pc-q35-2.0|pc-q35-2.1|
|
||||
pc-q35-2.2|pc-q35-2.3|pc-q35-2.4|pc-q35-2.5|pc-q35-2.7|pc-q35-2.8|
|
||||
pc-q35-2.10|pc-q35-2.12|pc-q35-3.0]
|
||||
-machine [isapc|pc-0.10|pc-0.11|pc-0.13|pc-1.0|pc-1.1|pc-1.2|pc-1.3|
|
||||
pc-i440fx-1.5|pc-i440fx-1.6|pc-i440fx-2.1|pc-i440fx-2.2|
|
||||
pc-i440fx-2.4|pc-i440fx-2.5|pc-i440fx-2.7|pc-i440fx-2.8|
|
||||
pc-i440fx-2.10|pc-i440fx-2.12|pc-q35-1.4|pc-q35-1.5|pc-q35-1.6|
|
||||
pc-q35-1.7|pc-q35-2.0|pc-q35-2.1|pc-q35-2.2|pc-q35-2.3|pc-q35-2.4|
|
||||
pc-q35-2.5|pc-q35-2.7|pc-q35-2.8|pc-q35-2.10|pc-q35-2.12]
|
||||
pc-i440fx-2.10|pc-i440fx-2.12|pc-i440fx-3.0|pc-q35-1.4|pc-q35-1.5|
|
||||
pc-q35-1.6|pc-q35-1.7|pc-q35-2.0|pc-q35-2.1|pc-q35-2.2|pc-q35-2.3|
|
||||
pc-q35-2.4|pc-q35-2.5|pc-q35-2.7|pc-q35-2.8|pc-q35-2.10|pc-q35-2.12]
|
||||
-mtdblock file
|
||||
-net [dump|socket|vde] ...
|
||||
-netdev [dump|hubport|l2tpv3|socket|vde] ...
|
||||
@ -789,6 +795,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
singlestep ...
|
||||
snapshot_blkdev ...
|
||||
stopcapture ...
|
||||
sync-profile ...
|
||||
wavcapture ...
|
||||
x_colo_lost_heartbeat
|
||||
|
||||
@ -807,6 +814,7 @@ QEMU Command-Line and Monitor Syntax and Support
|
||||
nbd-server-add
|
||||
nbd-server-start
|
||||
nbd-server-stop
|
||||
query-colo-status
|
||||
query-sev
|
||||
query-sev-launch-measure
|
||||
x-block-dirty-bitmap-disable
|
||||
|
285
update_git.sh
285
update_git.sh
@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Instead of a quilt workflow, we use a git tree that contains
|
||||
# all the commits on top of a stable tarball.
|
||||
# all the commits on top of a qemu source tarball.
|
||||
#
|
||||
# When updating this package, just either update the git tree
|
||||
# below (use rebase!) or change the tree path and use your own
|
||||
@ -11,43 +11,220 @@
|
||||
|
||||
set -e
|
||||
|
||||
GIT_TREE=git://github.com/openSUSE/qemu.git
|
||||
# The next few VARIABLES may be edited (or uncommented) as required:
|
||||
|
||||
# Here is where we manage the patchqueue on top of what comes from upstream
|
||||
GIT_LOCAL_TREE=~/git/qemu-opensuse
|
||||
GIT_BRANCH=opensuse-3.0
|
||||
GIT_UPSTREAM_TAG=v3.0.0
|
||||
# The commit upon which our patchqueue gets rebased. The special value LATEST
|
||||
# may be used to "automatically" track the upstream development tree in the
|
||||
# master branch
|
||||
GIT_UPSTREAM_COMMIT_ISH=v3.1.0
|
||||
if [ "$GIT_UPSTREAM_COMMIT_ISH" = "LATEST" ]; then
|
||||
echo "Using LATEST upstream commit as base for tarball and patch queue"
|
||||
GIT_BRANCH=master
|
||||
fi
|
||||
# otherwise we specify the branch to use, eg:
|
||||
# WARNING: If transitioning from using LATEST to not, MANUALLY re-set the
|
||||
# tarball present
|
||||
GIT_BRANCH=opensuse-3.1
|
||||
# This is used for the automated development branch tracking
|
||||
NEXT_RELEASE_IS_MAJOR=0
|
||||
|
||||
# The shared openSUSE specific git repo, on which $GIT_LOCAL_TREE is based
|
||||
GIT_TREE=git://github.com/openSUSE/qemu.git
|
||||
|
||||
# Temporary directories used by this script
|
||||
GIT_DIR=/dev/shm/qemu-factory-git-dir
|
||||
CMP_DIR=/dev/shm/qemu-factory-cmp-dir
|
||||
|
||||
rm -rf $GIT_DIR
|
||||
rm -rf $CMP_DIR
|
||||
rm -f checkpatch.log
|
||||
|
||||
if [ -d "$GIT_LOCAL_TREE" ]; then
|
||||
echo "Processing $GIT_BRANCH branch of local git tree, using tag:" \
|
||||
"$GIT_UPSTREAM_TAG"
|
||||
if ! (cd $GIT_LOCAL_TREE && git show-branch $GIT_BRANCH &>/dev/null); then
|
||||
echo "Error: Branch $GIT_BRANCH not found - please create a remote" \
|
||||
if [ "$GIT_UPSTREAM_COMMIT_ISH" = "LATEST" ]; then
|
||||
# This is just a safety valve in case the above gets edited wrong:
|
||||
if ! [ "$GIT_BRANCH" = "master" ]; then
|
||||
echo "LATEST implies master branch, please fix configuration"
|
||||
exit
|
||||
fi
|
||||
(cd $GIT_LOCAL_TREE && git remote update upstream)
|
||||
fi
|
||||
|
||||
BASE_RE="qemu-[[:digit:]]+(\.[[:digit:]]+){2}(-rc[[:digit:]])?"
|
||||
EXTRA_RE="\+git\.[[:digit:]]+\.([[:xdigit:]]+)"
|
||||
SUFFIX_RE="\.tar\.xz"
|
||||
SIG_SUFFIX_RE="\.tar\.xz\.sig"
|
||||
QEMU_TARBALL=($(find -maxdepth 1 -type f -regextype posix-extended -regex \
|
||||
"\./$BASE_RE($EXTRA_RE)?$SUFFIX_RE" -printf "%f "))
|
||||
QEMU_TARBALL_SIG=($(find -maxdepth 1 -type f -regextype posix-extended -regex \
|
||||
"\./$BASE_RE($EXTRA_RE)?$SIG_SUFFIX_RE" -printf "%f "))
|
||||
|
||||
if [ ${#QEMU_TARBALL[@]} -gt 1 ]; then
|
||||
echo "Multiple qemu tarballs detected. Please clean up"
|
||||
exit
|
||||
fi
|
||||
if [ ${#QEMU_TARBALL_SIG[@]} -gt 1 ]; then
|
||||
echo "Multiple qemu tarballs signature files detected. Please clean up"
|
||||
exit
|
||||
fi
|
||||
# It's ok for either of these to be empty when using "LATEST"
|
||||
OLD_SOURCE_VERSION_AND_EXTRA=$(echo $QEMU_TARBALL 2>/dev/null | head --bytes=-8\
|
||||
| cut --bytes=6-)
|
||||
VERSION_EXTRA=$(echo $OLD_SOURCE_VERSION_AND_EXTRA|awk -F+ '{if ($2) print \
|
||||
"+"$2}')
|
||||
if [ "$OLD_SOURCE_VERSION_AND_EXTRA" = "" ]; then
|
||||
echo "Warning: No tarball found"
|
||||
fi
|
||||
|
||||
if [[ $QEMU_TARBALL =~ $BASE_RE$EXTRA_RE$SUFFIX_RE ]]; then
|
||||
OLD_COMMIT_ISH=${BASH_REMATCH[3]}
|
||||
else
|
||||
#Assume release (or release candidate) tarball with equivalent tag:
|
||||
OLD_COMMIT_ISH=$(cd $GIT_LOCAL_TREE && git rev-list --abbrev-commit \
|
||||
--abbrev=9 -1 v$OLD_SOURCE_VERSION_AND_EXTRA)
|
||||
fi
|
||||
|
||||
if [ "$GIT_UPSTREAM_COMMIT_ISH" = "LATEST" ]; then
|
||||
if [ ${#QEMU_TARBALL_SIG[@]} -ne 0 ]; then
|
||||
echo "INFO: Ignoring signature file: $QEMU_TARBALL_SIG"
|
||||
QEMU_TARBALL_SIG=
|
||||
fi
|
||||
NEW_COMMIT_ISH=$(cd $GIT_LOCAL_TREE && git rev-parse --short=9 \
|
||||
upstream/$GIT_BRANCH)
|
||||
NOW_SECONDS=$(date +%s)
|
||||
|
||||
git clone -ls $GIT_LOCAL_TREE $GIT_DIR -b $GIT_BRANCH &>/dev/null
|
||||
if [ "$OLD_COMMIT_ISH" != "$NEW_COMMIT_ISH" ]; then
|
||||
echo "Please wait..."
|
||||
(cd $GIT_DIR && git remote add upstream \
|
||||
git://git.qemu-project.org/qemu.git &>/dev/null)
|
||||
(cd $GIT_DIR && git remote update upstream &>/dev/null)
|
||||
(cd $GIT_DIR && git checkout $NEW_COMMIT_ISH &>/dev/null)
|
||||
# TODO: starting patch number for submodules are as follows:
|
||||
# 1100: roms/seabios
|
||||
# 1200: roms/ipxe
|
||||
# 1300: roms/sgabios
|
||||
# 1400: roms/SLOF
|
||||
# 1500: roms/skiboot
|
||||
# 1600: ui/keycodemapdb
|
||||
# 1700: roms/openbios
|
||||
(cd $GIT_DIR && git submodule update --init --recursive &>/dev/null)
|
||||
VERSION_EXTRA=+git.$NOW_SECONDS.$NEW_COMMIT_ISH
|
||||
fi
|
||||
QEMU_VERSION=$(cat $GIT_DIR/VERSION)
|
||||
MAJOR_VERSION=$(echo $QEMU_VERSION|awk -F. '{print $1}')
|
||||
MINOR_VERSION=$(echo $QEMU_VERSION|awk -F. '{print $2}')
|
||||
X=$(echo $QEMU_VERSION|awk -F. '{print $3}')
|
||||
# 0 = release, 50 = development cycle, 90..99 equate to release candidates
|
||||
if [ "$X" != "0" -a "$X" != "50" ]; then
|
||||
if [ "$NEXT_RELEASE_IS_MAJOR" == "0" ]; then
|
||||
SOURCE_VERSION=$MAJOR_VERSION.$[$MINOR_VERSION+1].0-rc$[X-90]
|
||||
else
|
||||
SOURCE_VERSION=$[$MAJOR_VERSION+1].0.0-rc$[X-90]
|
||||
fi
|
||||
else
|
||||
SOURCE_VERSION=$MAJOR_VERSION.$MINOR_VERSION.$X
|
||||
fi
|
||||
if [ "$OLD_COMMIT_ISH" != "$NEW_COMMIT_ISH" ]; then
|
||||
if (cd $GIT_LOCAL_TREE && git describe --exact-match $NEW_COMMIT_ISH \
|
||||
&>/dev/null); then
|
||||
if [ "$X" = "50" ]; then
|
||||
echo "Ignoring non-standard tag"
|
||||
else
|
||||
# there is no VERSION_EXTRA
|
||||
VERSION_EXTRA=
|
||||
fi
|
||||
fi
|
||||
(cd $GIT_DIR/roms/seabios && git describe --tags --long --dirty > \
|
||||
.version)
|
||||
(cd $GIT_DIR/roms/skiboot && ./make_version.sh > .version)
|
||||
tar -C $GIT_DIR/roms --exclude=.git -cjf $GIT_DIR/roms/u-boot.tar.bz2 \
|
||||
u-boot && rm -rf $GIT_DIR/roms/u-boot
|
||||
echo "Almost there..."
|
||||
tar --exclude=.git --transform "s,$GIT_DIR,qemu-$SOURCE_VERSION," \
|
||||
-Pcf qemu-$SOURCE_VERSION$VERSION_EXTRA.tar $GIT_DIR
|
||||
echo "New tarball created. Attempting rebase..."
|
||||
if ! (cd $GIT_DIR && git rebase upstream/$GIT_BRANCH $GIT_BRANCH); then
|
||||
echo "rebasing master on upstream/master needs human assistance." \
|
||||
"Exiting"
|
||||
(cd $GIT_DIR && git rebase --abort)
|
||||
rm qemu-$SOURCE_VERSION$VERSION_EXTRA.tar
|
||||
exit
|
||||
fi
|
||||
echo "WARNING: To rebase, master is being checked out"
|
||||
if ! (cd $GIT_LOCAL_TREE && git rebase upstream/$GIT_BRANCH \
|
||||
$GIT_BRANCH); then
|
||||
echo "WARNING: Script error? rebasing master on upstream/master" \
|
||||
"succeeded in temp"
|
||||
echo "dir but failed in local tree! Please investigate"
|
||||
(cd $GIT_LOCAL_TREE && git rebase --abort)
|
||||
rm qemu-$SOURCE_VERSION$VERSION_EXTRA.tar
|
||||
exit
|
||||
fi
|
||||
echo "Rebase successful"
|
||||
osc rm --force qemu-$OLD_SOURCE_VERSION_AND_EXTRA.tar.xz &>/dev/null ||\
|
||||
true
|
||||
osc rm --force qemu-$OLD_SOURCE_VERSION_AND_EXTRA.tar.xz.sig \
|
||||
&>/dev/null || true
|
||||
unset QEMU_TARBALL_SIG
|
||||
xz -T 0 qemu-$SOURCE_VERSION$VERSION_EXTRA.tar
|
||||
osc add qemu-$SOURCE_VERSION$VERSION_EXTRA.tar.xz
|
||||
fi
|
||||
# We're done with GIT_UPSTREAM_COMMIT_ISH carrying the special value LATEST
|
||||
GIT_UPSTREAM_COMMIT_ISH=$NEW_COMMIT_ISH
|
||||
WRITE_LOG=0
|
||||
else # not based on LATEST upstream master, rather any upstream commitish
|
||||
if [ "$OLD_SOURCE_VERSION_AND_EXTRA" = "" ]; then
|
||||
echo "Failure: tarball required which corresponds to commitish:" \
|
||||
"$GIT_UPSTREAM_COMMITISH"
|
||||
exit
|
||||
fi
|
||||
if [ -d "$GIT_LOCAL_TREE" ]; then
|
||||
echo "Processing local git tree branch: $GIT_BRANCH, using commitish:"\
|
||||
"$GIT_UPSTREAM_COMMIT_ISH"
|
||||
if ! (cd $GIT_LOCAL_TREE && git show-branch $GIT_BRANCH &>/dev/null)
|
||||
then
|
||||
echo "Error: Branch $GIT_BRANCH not found - please create a remote"\
|
||||
"tracking branch of origin/$GIT_BRANCH"
|
||||
exit
|
||||
fi
|
||||
git clone -ls $GIT_LOCAL_TREE $GIT_DIR -b $GIT_BRANCH
|
||||
# check if we should also do submodule's here as well
|
||||
git clone -ls $GIT_LOCAL_TREE $GIT_DIR -b $GIT_BRANCH &>/dev/null
|
||||
if ! (cd $GIT_LOCAL_TREE && git remote show upstream &>/dev/null); then
|
||||
echo "Remote for upstream git tree not found. Next time add remote" \
|
||||
echo "Remote for upstream git tree not found. Next time add remote"\
|
||||
"named upstream for git://git.qemu.org/qemu.git and update"
|
||||
(cd $GIT_DIR && git remote add upstream git://git.qemu-project.org/qemu.git)
|
||||
(cd $GIT_DIR && git remote add upstream \
|
||||
git://git.qemu-project.org/qemu.git)
|
||||
(cd $GIT_DIR && git remote update)
|
||||
fi
|
||||
else
|
||||
echo "Processing $GIT_BRANCH branch of remote git tree, using tag:" \
|
||||
"$GIT_UPSTREAM_TAG"
|
||||
echo "(For much fast processing, consider establishing a local git tree" \
|
||||
else
|
||||
echo "Processing $GIT_BRANCH branch of remote git tree, using"\
|
||||
"commitish: $GIT_UPSTREAM_COMMIT_ISH"
|
||||
echo "(For fast processing, consider establishing a local git tree"\
|
||||
"at $GIT_LOCAL_TREE)"
|
||||
git clone $GIT_TREE $GIT_DIR -b $GIT_BRANCH
|
||||
(cd $GIT_DIR && git remote add upstream git://git.qemu-project.org/qemu.git)
|
||||
(cd $GIT_DIR && git remote add upstream \
|
||||
git://git.qemu-project.org/qemu.git)
|
||||
(cd $GIT_DIR && git remote update)
|
||||
fi
|
||||
QEMU_VERSION=$(cat $GIT_DIR/VERSION)
|
||||
SOURCE_VERSION=$OLD_SOURCE_VERSION_AND_EXTRA
|
||||
NEW_COMMIT_ISH=
|
||||
WRITE_LOG=1
|
||||
fi
|
||||
(cd $GIT_DIR && git format-patch -N --stat=72 --indent-heuristic $GIT_UPSTREAM_TAG --suffix= -o $CMP_DIR --no-renames >/dev/null)
|
||||
QEMU_VERSION=`cat $GIT_DIR/VERSION`
|
||||
echo "QEMU version: $QEMU_VERSION"
|
||||
|
||||
(cd $GIT_DIR && git format-patch -N --stat=72 --indent-heuristic \
|
||||
$GIT_UPSTREAM_COMMIT_ISH --suffix= -o $CMP_DIR --no-renames >/dev/null)
|
||||
|
||||
check_patch()
|
||||
{
|
||||
if [ ! -e checkpatch.pl ]; then
|
||||
tar Jxf qemu-$SOURCE_VERSION$VERSION_EXTRA.tar.xz \
|
||||
qemu-$SOURCE_VERSION/scripts/checkpatch.pl --strip-components=2
|
||||
fi
|
||||
./checkpatch.pl --no-tree --terse --no-summary --summary-file --patch $1 >>\
|
||||
checkpatch.log || true
|
||||
}
|
||||
|
||||
rm -rf $GIT_DIR
|
||||
|
||||
@ -56,14 +233,16 @@ rm -rf $GIT_DIR
|
||||
UNCHANGED_COUNT=0
|
||||
DELETED_COUNT=0
|
||||
ADDED_COUNT=0
|
||||
TOTAL_COUNT=0
|
||||
|
||||
shopt -s nullglob
|
||||
|
||||
# Process patches to eliminate useless differences: limit file names to 40 chars
|
||||
# before extension and remove git signature. ('30' below gets us past dir prefix)
|
||||
# Process patches to eliminate useless differences: limit file names to 40
|
||||
# chars before extension and remove git signature. ('30' below gets us past
|
||||
# dir prefix)
|
||||
for i in $CMP_DIR/*; do
|
||||
# format-patch may append a signature, which per default contains the git version
|
||||
# wipe everything starting from the signature tag
|
||||
# format-patch may append a signature, which per default contains the
|
||||
# git version. wipe everything starting from the signature tag
|
||||
sed '/^-- $/Q' $i > $CMP_DIR/${i:30:40}.patch
|
||||
rm $i
|
||||
done
|
||||
@ -75,21 +254,48 @@ rm -rf $GIT_DIR
|
||||
let UNCHANGED_COUNT+=1
|
||||
else
|
||||
mv $CMP_DIR/$i .
|
||||
check_patch $i
|
||||
let CHANGED_COUNT+=1
|
||||
let TOTAL_COUNT+=1
|
||||
fi
|
||||
else
|
||||
osc rm --force $i
|
||||
let DELETED_COUNT+=1
|
||||
echo " ${i##*/}" >> qemu.changes.deleted
|
||||
let DELETED_COUNT+=1
|
||||
let TOTAL_COUNT+=1
|
||||
fi
|
||||
done
|
||||
|
||||
for i in $CMP_DIR/*; do
|
||||
mv $i .
|
||||
osc add ${i##*/}
|
||||
let ADDED_COUNT+=1
|
||||
check_patch ${i##*/}
|
||||
echo " ${i##*/}" >> qemu.changes.added
|
||||
let ADDED_COUNT+=1
|
||||
let TOTAL_COUNT+=1
|
||||
done
|
||||
rm -f checkpatch.pl
|
||||
if [ -s checkpatch.log ]; then
|
||||
echo "WARNING: Issues reported by qemu patch checker. Please handle" \
|
||||
"ERRORS now:"
|
||||
cat checkpatch.log
|
||||
fi
|
||||
rm -f checkpatch.log
|
||||
if [ "$TOTAL_COUNT" != "0" -a "$VERSION_EXTRA" != "" -a "$OLD_COMMIT_ISH" =\
|
||||
"$NEW_COMMIT_ISH" ]; then
|
||||
# Patches changed, so update the version using current time
|
||||
VERSION_EXTRA=+git.$NOW_SECONDS.$OLD_COMMIT_ISH
|
||||
osc mv qemu-$OLD_SOURCE_VERSION_AND_EXTRA.tar.xz \
|
||||
qemu-$SOURCE_VERSION$VERSION_EXTRA.tar.xz
|
||||
osc add qemu-$SOURCE_VERSION$VERSION_EXTRA.tar.xz
|
||||
fi
|
||||
|
||||
echo "QEMU version file: $QEMU_VERSION"
|
||||
echo "QEMU source version: $SOURCE_VERSION"
|
||||
echo "QEMU version extra: $VERSION_EXTRA"
|
||||
|
||||
SEABIOS_VERSION=$(tar JxfO qemu-$SOURCE_VERSION$VERSION_EXTRA.tar.xz \
|
||||
qemu-$SOURCE_VERSION/roms/seabios/.version | cut -d '-' -f 2)
|
||||
|
||||
for package in qemu qemu-linux-user; do
|
||||
while IFS= read -r line; do
|
||||
@ -104,24 +310,34 @@ rm -rf $GIT_DIR
|
||||
echo "%patch$NUM -p1"
|
||||
done
|
||||
elif [ "$line" = "QEMU_VERSION" ]; then
|
||||
echo "Version: $QEMU_VERSION"
|
||||
echo "%define qemuver $QEMU_VERSION"
|
||||
echo "%define qemuver $QEMU_VERSION$VERSION_EXTRA"
|
||||
echo "%define srcver $SOURCE_VERSION$VERSION_EXTRA"
|
||||
echo "Version: %qemuver"
|
||||
elif [[ "$line" =~ ^Source: ]]; then
|
||||
QEMU_TARBALL=qemu-$QEMU_VERSION.tar.xz
|
||||
VERSION_FILE=${QEMU_TARBALL%.tar.xz}/roms/seabios/.version
|
||||
SEABIOS_VERSION=`tar JxfO "$QEMU_TARBALL" "$VERSION_FILE"`
|
||||
SEABIOS_VERSION=`echo $SEABIOS_VERSION | cut -d '-' -f 2`
|
||||
echo "$line"
|
||||
if [ ${#QEMU_TARBALL_SIG[@]} -eq 1 ]; then
|
||||
# We assume the signature file is right
|
||||
echo "$(echo $line|sed 's/^Source*/&99/').sig"
|
||||
fi
|
||||
elif [ "$line" = "SEABIOS_VERSION" ]; then
|
||||
echo "Version: $SEABIOS_VERSION"
|
||||
else
|
||||
echo "$line"
|
||||
fi
|
||||
done < $package.spec.in > $package.spec
|
||||
done < $package.spec.in > $CMP_DIR/$package.spec
|
||||
if cmp -s $package.spec $CMP_DIR/$package.spec; then
|
||||
echo "$package.spec unchanged"
|
||||
else
|
||||
mv $CMP_DIR/$package.spec $package.spec
|
||||
echo "$package.spec regenerated"
|
||||
let PACKAGE_CHANGED_COUNT+=1
|
||||
fi
|
||||
|
||||
if [ "$WRITE_LOG" = "1" ]; then
|
||||
# Factory requires all deleted and added patches to be mentioned
|
||||
if [ -e qemu.changes.deleted ] || [ -e qemu.changes.added ]; then
|
||||
echo "Patch queue updated from ${GIT_TREE} ${GIT_BRANCH}" > $package.changes.proposed
|
||||
echo "Patch queue updated from ${GIT_TREE} ${GIT_BRANCH}" > \
|
||||
$package.changes.proposed
|
||||
fi
|
||||
if [ -e qemu.changes.deleted ]; then
|
||||
echo "* Patches dropped:" >> $package.changes.proposed
|
||||
@ -135,6 +351,7 @@ rm -rf $GIT_DIR
|
||||
osc vc --file=$package.changes.proposed $package
|
||||
rm -f $package.changes.proposed
|
||||
fi
|
||||
fi
|
||||
done
|
||||
if [ -e qemu.changes.deleted ]; then
|
||||
rm -f qemu.changes.deleted
|
||||
|
Loading…
Reference in New Issue
Block a user