Accepting request 416920 from Virtualization
1 OBS-URL: https://build.opensuse.org/request/show/416920 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/qemu?expand=0&rev=119
This commit is contained in:
commit
bf226e2700
@ -1,242 +0,0 @@
|
||||
From 44e9a6c05ea73441354e54b0029cdf0e835ed735 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Thu, 1 Dec 2011 19:00:01 +0100
|
||||
Subject: [PATCH] XXX work around SA_RESTART race with boehm-gc (ARM only)
|
||||
|
||||
[AF: CPUState -> CPUArchState, adapt to reindentation]
|
||||
[AF: CPUArchState::opaque -> CPUState::opaque]
|
||||
---
|
||||
linux-user/main.c | 25 +++++++++------
|
||||
linux-user/qemu.h | 3 ++
|
||||
linux-user/signal.c | 22 +++++++++++++
|
||||
linux-user/syscall.c | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++-
|
||||
4 files changed, 130 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/linux-user/main.c b/linux-user/main.c
|
||||
index 5f3ec97..7b28d93 100644
|
||||
--- a/linux-user/main.c
|
||||
+++ b/linux-user/main.c
|
||||
@@ -853,15 +853,22 @@ void cpu_loop(CPUARMState *env)
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
- env->regs[0] = do_syscall(env,
|
||||
- n,
|
||||
- env->regs[0],
|
||||
- env->regs[1],
|
||||
- env->regs[2],
|
||||
- env->regs[3],
|
||||
- env->regs[4],
|
||||
- env->regs[5],
|
||||
- 0, 0);
|
||||
+ TaskState *ts = cs->opaque;
|
||||
+ target_ulong r;
|
||||
+ r = do_syscall(env, n, env->regs[0], env->regs[1],
|
||||
+ env->regs[2], env->regs[3], env->regs[4],
|
||||
+ env->regs[5], 0, 0);
|
||||
+ if ((r == -EINTR) && ts->signal_restart &&
|
||||
+ syscall_restartable(n)) {
|
||||
+ if (env->thumb) {
|
||||
+ env->regs[15] -= 2;
|
||||
+ } else {
|
||||
+ env->regs[15] -= 4;
|
||||
+ }
|
||||
+ } else {
|
||||
+ env->regs[0] = r;
|
||||
+ }
|
||||
+ ts->signal_restart = 0;
|
||||
}
|
||||
} else {
|
||||
goto error;
|
||||
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
|
||||
index 26b0ba2..b55a9d2 100644
|
||||
--- a/linux-user/qemu.h
|
||||
+++ b/linux-user/qemu.h
|
||||
@@ -130,6 +130,8 @@ typedef struct TaskState {
|
||||
struct sigqueue sigqueue_table[MAX_SIGQUEUE_SIZE]; /* siginfo queue */
|
||||
struct sigqueue *first_free; /* first free siginfo queue entry */
|
||||
int signal_pending; /* non zero if a signal may be pending */
|
||||
+ int signal_in_syscall; /* non zero if we are in do_syscall() */
|
||||
+ int signal_restart; /* non zero if we need to restart a syscall */
|
||||
} __attribute__((aligned(16))) TaskState;
|
||||
|
||||
extern char *exec_path;
|
||||
@@ -188,6 +190,7 @@ int get_osversion(void);
|
||||
void init_qemu_uname_release(void);
|
||||
void fork_start(void);
|
||||
void fork_end(int child);
|
||||
+int syscall_restartable(int syscall_nr);
|
||||
|
||||
/* Creates the initial guest address space in the host memory space using
|
||||
* the given host start address hint and size. The guest_start parameter
|
||||
diff --git a/linux-user/signal.c b/linux-user/signal.c
|
||||
index d422aeb..eab88a9 100644
|
||||
--- a/linux-user/signal.c
|
||||
+++ b/linux-user/signal.c
|
||||
@@ -19,6 +19,7 @@
|
||||
#include "qemu/osdep.h"
|
||||
#include <sys/ucontext.h>
|
||||
#include <sys/resource.h>
|
||||
+#include <sched.h>
|
||||
|
||||
#include "qemu.h"
|
||||
#include "qemu-common.h"
|
||||
@@ -563,6 +564,11 @@ int queue_signal(CPUArchState *env, int sig, target_siginfo_t *info)
|
||||
k->pending = 1;
|
||||
/* signal that a new signal is pending */
|
||||
ts->signal_pending = 1;
|
||||
+ /* check if we have to restart the current syscall */
|
||||
+ if ((sigact_table[sig - 1].sa_flags & SA_RESTART) &&
|
||||
+ ts->signal_in_syscall) {
|
||||
+ ts->signal_restart = 1;
|
||||
+ }
|
||||
return 1; /* indicates that the signal was queued */
|
||||
}
|
||||
}
|
||||
@@ -703,8 +709,24 @@ int do_sigaction(int sig, const struct target_sigaction *act,
|
||||
if (host_sig != SIGSEGV && host_sig != SIGBUS) {
|
||||
sigfillset(&act1.sa_mask);
|
||||
act1.sa_flags = SA_SIGINFO;
|
||||
+#ifdef TARGET_ARM
|
||||
+ /* Breaks boehm-gc, we have to do this manually */
|
||||
+ /*
|
||||
+ * Unfortunately our hacks only work as long as we don't do parallel
|
||||
+ * signal delivery and futexes, so let's do a dirty hack here to
|
||||
+ * pin our guest process to a single host CPU if we're using the
|
||||
+ * boehm-gc.
|
||||
+ */
|
||||
+ if ((k->sa_flags & TARGET_SA_RESTART) && host_sig == SIGPWR) {
|
||||
+ cpu_set_t mask;
|
||||
+ CPU_ZERO(&mask);
|
||||
+ CPU_SET(0, &mask);
|
||||
+ sched_setaffinity(0, sizeof(mask), &mask);
|
||||
+ }
|
||||
+#else
|
||||
if (k->sa_flags & TARGET_SA_RESTART)
|
||||
act1.sa_flags |= SA_RESTART;
|
||||
+#endif
|
||||
/* NOTE: it is important to update the host kernel signal
|
||||
ignore state to avoid getting unexpected interrupted
|
||||
syscalls */
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 032d338..fe0dbd6 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -5847,6 +5847,87 @@ static target_timer_t get_timer_id(abi_long arg)
|
||||
return timerid;
|
||||
}
|
||||
|
||||
+int syscall_restartable(int syscall_nr)
|
||||
+{
|
||||
+ switch (syscall_nr) {
|
||||
+#ifdef TARGET_NR_sigsuspend
|
||||
+ case TARGET_NR_sigsuspend:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_pause
|
||||
+ case TARGET_NR_pause:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_setsockopt
|
||||
+ case TARGET_NR_setsockopt:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_accept
|
||||
+ case TARGET_NR_accept:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_recv
|
||||
+ case TARGET_NR_recv:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_recvfrom
|
||||
+ case TARGET_NR_recvfrom:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_recvmsg
|
||||
+ case TARGET_NR_recvmsg:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_socketcall
|
||||
+ case TARGET_NR_socketcall:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_connect
|
||||
+ case TARGET_NR_connect:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_send
|
||||
+ case TARGET_NR_send:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_sendmsg
|
||||
+ case TARGET_NR_sendmsg:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_sendto
|
||||
+ case TARGET_NR_sendto:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_poll
|
||||
+ case TARGET_NR_poll:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_ppoll
|
||||
+ case TARGET_NR_ppoll:
|
||||
+#endif
|
||||
+#if defined(TARGET_NR_select)
|
||||
+ case TARGET_NR_select:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_pselect6
|
||||
+ case TARGET_NR_pselect6:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR__newselect
|
||||
+ case TARGET_NR__newselect:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_msgrcv
|
||||
+ case TARGET_NR_msgrcv:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_msgsnd
|
||||
+ case TARGET_NR_msgsnd:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_semop
|
||||
+ case TARGET_NR_semop:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_ipc
|
||||
+ case TARGET_NR_ipc:
|
||||
+#endif
|
||||
+#ifdef TARGET_NR_clock_nanosleep
|
||||
+ case TARGET_NR_clock_nanosleep:
|
||||
+#endif
|
||||
+ case TARGET_NR_rt_sigsuspend:
|
||||
+ case TARGET_NR_rt_sigtimedwait:
|
||||
+ case TARGET_NR_nanosleep:
|
||||
+ case TARGET_NR_close:
|
||||
+ /* can not be restarted */
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ /* every other syscall can be restarted */
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
/* 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>. */
|
||||
@@ -5860,6 +5941,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
struct stat st;
|
||||
struct statfs stfs;
|
||||
void *p;
|
||||
+ TaskState *ts = cpu->opaque;
|
||||
+
|
||||
+ if (!ts->signal_restart) {
|
||||
+ /* remember syscall info for restart */
|
||||
+ ts->signal_in_syscall = 1;
|
||||
+ }
|
||||
|
||||
#ifdef DEBUG
|
||||
gemu_log("syscall %d", num);
|
||||
@@ -9211,7 +9298,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
cmd = target_to_host_fcntl_cmd(arg2);
|
||||
if (cmd == -TARGET_EINVAL) {
|
||||
ret = cmd;
|
||||
- break;
|
||||
+ goto fail;
|
||||
}
|
||||
|
||||
switch(arg2) {
|
||||
@@ -10255,6 +10342,7 @@ fail:
|
||||
#endif
|
||||
if(do_strace)
|
||||
print_syscall_ret(num, ret);
|
||||
+ ts->signal_in_syscall = 0;
|
||||
return ret;
|
||||
efault:
|
||||
ret = -TARGET_EFAULT;
|
@ -1,4 +1,4 @@
|
||||
From 2d978c9adfe0bb7dadbb21e9f606f33b9f70bf1c Mon Sep 17 00:00:00 2001
|
||||
From 25da05b51950cf639c26ca5f1e47fcfdfb588ab2 Mon Sep 17 00:00:00 2001
|
||||
From: Ulrich Hecht <uli@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:18:44 +0200
|
||||
Subject: [PATCH] qemu-0.9.0.cvs-binfmt
|
@ -1,4 +1,4 @@
|
||||
From 68b848ab76ac2d150b4ed899d46dabac85b248a2 Mon Sep 17 00:00:00 2001
|
||||
From 307dc6c6bde4ec04b9efd6f27db0295e349bf573 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:20:50 +0200
|
||||
Subject: [PATCH] qemu-cvs-alsa_bitfield
|
@ -1,4 +1,4 @@
|
||||
From 12ea4c0a49f8fd0b3b594f80fa78bf943b7d3c20 Mon Sep 17 00:00:00 2001
|
||||
From 42ec5aa5b6abb395b894311702cec8c09ec44263 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:23:27 +0200
|
||||
Subject: [PATCH] qemu-cvs-alsa_ioctl
|
@ -1,4 +1,4 @@
|
||||
From f66983c05b20792b6bf5690bc46a4a60618b0425 Mon Sep 17 00:00:00 2001
|
||||
From d899ab90ddfcf5c6efe45f9008cd2c498d368ac9 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:24:15 +0200
|
||||
Subject: [PATCH] qemu-cvs-alsa_mmap
|
@ -1,4 +1,4 @@
|
||||
From cda1328ad68fbb163f786e4ad5dd818c3a54bc4e Mon Sep 17 00:00:00 2001
|
||||
From eaa8f697ccd1320f9ce432588beef2d341bc5a18 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
|
||||
@ -9,10 +9,10 @@ No clue what this is for.
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index fe0dbd6..b5e6598 100644
|
||||
index 032d338..d231758 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -7072,6 +7072,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
@@ -6985,6 +6985,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
case TARGET_NR_gettimeofday:
|
||||
{
|
||||
struct timeval tv;
|
@ -1,4 +1,4 @@
|
||||
From 02d53ba7f7e370b1b67f6adc9b5497b4a262503a Mon Sep 17 00:00:00 2001
|
||||
From 5fabc9a72b03eca20cda87e0bb35a92aaa3d4dbf 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
|
||||
@ -12,7 +12,7 @@ Signed-off-by: Ulrich Hecht <uli@suse.de>
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index b5e6598..7a589cb 100644
|
||||
index d231758..d693f9d 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -4022,7 +4022,12 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
@ -1,4 +1,4 @@
|
||||
From 720dcded9e7c7ebce002e562644bf0b8896f5869 Mon Sep 17 00:00:00 2001
|
||||
From 31a5e0ab101e1549d534a63fb5e9e94007e812f8 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
|
||||
@ -15,7 +15,7 @@ Signed-off-by: Ulrich Hecht <uli@suse.de>
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 7a589cb..1afd3b9 100644
|
||||
index d693f9d..0858920 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -4055,6 +4055,11 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
@ -1,4 +1,4 @@
|
||||
From 592fcd424bad943c37f895f98e873fff69763709 Mon Sep 17 00:00:00 2001
|
||||
From 7164cadf6a1f23d2b931f34c78d3707207306cfb Mon Sep 17 00:00:00 2001
|
||||
From: Ulrich Hecht <uli@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:37:42 +0200
|
||||
Subject: [PATCH] block/vmdk: Support creation of SCSI VMDK images in qemu-img
|
@ -1,4 +1,4 @@
|
||||
From d115d3eff851640ed1b6caf43836504fed2bc67f Mon Sep 17 00:00:00 2001
|
||||
From a7697f0442c3cb97a5ab4ee60ffe721de6dc791e 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
|
@ -1,4 +1,4 @@
|
||||
From 2c7559dd752daedcfef00a88923a3df6a913dfd8 Mon Sep 17 00:00:00 2001
|
||||
From c1602f324287481df7aef85c417e143fa47bcea4 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
|
@ -1,4 +1,4 @@
|
||||
From d308696040ad59d4418b398512bd6ca1a072a215 Mon Sep 17 00:00:00 2001
|
||||
From 6b4338150763e8241cec19846a48a132d60fe75f Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Fri, 13 Jan 2012 17:05:41 +0100
|
||||
Subject: [PATCH] linux-user: fix segfault deadlock
|
@ -1,4 +1,4 @@
|
||||
From 88f40fc3cbb0608938135e66f84a054e4c71f3e4 Mon Sep 17 00:00:00 2001
|
||||
From 02e298aafcb7bb11036cabec82da958f7d860ac8 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 338fec615a0deb8c3fced6a0f50fa8df40f136b3 Mon Sep 17 00:00:00 2001
|
||||
From 64acfd49e9721a17c610cc54a92efe8ec3170698 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 12 Jun 2012 04:41:10 +0200
|
||||
Subject: [PATCH] linux-user: Ignore broken loop ioctl
|
||||
@ -46,7 +46,7 @@ index 8974caa..810ae61 100644
|
||||
|
||||
#endif
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 1afd3b9..32f7290 100644
|
||||
index 0858920..758f747 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -3999,6 +3999,13 @@ static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp,
|
@ -1,4 +1,4 @@
|
||||
From f70582028f2a2da536e05f059cb82a6dcdcce2cb Mon Sep 17 00:00:00 2001
|
||||
From f34632424427a2387a9275133c3cb4a8ad4f9d31 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Thu, 5 Jul 2012 17:31:39 +0200
|
||||
Subject: [PATCH] linux-user: lock tcg
|
@ -1,4 +1,4 @@
|
||||
From 63f9ad9031029a99e2207ce13af0c3888bdc3c77 Mon Sep 17 00:00:00 2001
|
||||
From a2f095e01371ff9d00524fb4c0e7d3bd941227da Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 10 Jul 2012 20:40:55 +0200
|
||||
Subject: [PATCH] linux-user: Run multi-threaded code on a single core
|
||||
@ -19,7 +19,7 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
1 file changed, 9 insertions(+)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 32f7290..780f760 100644
|
||||
index 758f747..b36273d 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -4704,6 +4704,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
|
@ -1,4 +1,4 @@
|
||||
From 8de35823c9f03e06ce40870e6cd04ce1c0a44be2 Mon Sep 17 00:00:00 2001
|
||||
From 80465393b0e7a888125378567cc69a6cc190b8ff Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Wed, 11 Jul 2012 16:47:42 +0200
|
||||
Subject: [PATCH] linux-user: lock tb flushing too
|
@ -1,4 +1,4 @@
|
||||
From e5ecc65e4ae5d85fd0645eacfed60757cef04c1a Mon Sep 17 00:00:00 2001
|
||||
From cac0ebd114044343f3d0e6a1ae0b455949db0a5d 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,7 +22,7 @@ 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 780f760..7350980 100644
|
||||
index b36273d..7476689 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -5697,6 +5697,25 @@ static int open_self_stat(void *cpu_env, int fd)
|
@ -1,4 +1,4 @@
|
||||
From f2bf40c52ebd8618da52c0ab89e38737170d34ec Mon Sep 17 00:00:00 2001
|
||||
From a61e366827ca2b159b515e760742bc6dee26169f Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Mon, 20 Aug 2012 00:02:52 +0200
|
||||
Subject: [PATCH] linux-user: implement FS_IOC_GETFLAGS ioctl
|
@ -1,4 +1,4 @@
|
||||
From 7e407d22128dac3b6dae0393a2173e6ee4878abd Mon Sep 17 00:00:00 2001
|
||||
From 39e6dbd24f5a872c5c37b0c1ddd31fe00b74c3ca Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Mon, 20 Aug 2012 00:07:13 +0200
|
||||
Subject: [PATCH] linux-user: implement FS_IOC_SETFLAGS ioctl
|
@ -1,4 +1,4 @@
|
||||
From 416732418f358a876ee8406eb12925e198155e49 Mon Sep 17 00:00:00 2001
|
||||
From fb0a1cd7b3e0ab5908607da0b704f749a3f9cd36 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 21 Aug 2012 14:20:40 +0200
|
||||
Subject: [PATCH] linux-user: XXX disable fiemap
|
||||
@ -9,7 +9,7 @@ agraf: fiemap breaks in libarchive. Disable it for now.
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 7350980..90b1698 100644
|
||||
index 7476689..7b72784 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -3494,6 +3494,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
|
@ -1,4 +1,4 @@
|
||||
From 76603c63b15b71597d8d232d9c8f590598939cb2 Mon Sep 17 00:00:00 2001
|
||||
From d839baef69733ff67df56abd52bf01b13c2adc80 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Wed, 29 Aug 2012 18:42:56 +0200
|
||||
Subject: [PATCH] slirp: -nooutgoing
|
@ -1,4 +1,4 @@
|
||||
From 1e6837a4cf1e2c757a9ee61f99ffd90dc97e3067 Mon Sep 17 00:00:00 2001
|
||||
From c15dcea01fb9d84e583abe7d558d7a31a937ddc3 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Wed, 29 Aug 2012 20:06:01 +0200
|
||||
Subject: [PATCH] vnc: password-file= and incoming-connections=
|
@ -1,4 +1,4 @@
|
||||
From 4910a63b38b4b6cd811d59ccf239423f8f6998fc Mon Sep 17 00:00:00 2001
|
||||
From 5ab7c0967d239f3cab043461952f9d0b9015a617 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Wed, 10 Oct 2012 10:21:20 +0200
|
||||
Subject: [PATCH] linux-user: add more blk ioctls
|
@ -1,4 +1,4 @@
|
||||
From 4a2a102bf012ec39a75498e79d18d7e1cb703bd3 Mon Sep 17 00:00:00 2001
|
||||
From 616807e473c21cdf231eed07b87ec287cfdfb528 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
|
||||
@ -17,10 +17,10 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
2 files changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
|
||||
index b55a9d2..be9c21c 100644
|
||||
index 26b0ba2..b9a7123 100644
|
||||
--- a/linux-user/qemu.h
|
||||
+++ b/linux-user/qemu.h
|
||||
@@ -178,10 +178,10 @@ abi_long memcpy_to_target(abi_ulong dest, const void *src,
|
||||
@@ -176,10 +176,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,10 +36,10 @@ index b55a9d2..be9c21c 100644
|
||||
extern THREAD CPUState *thread_cpu;
|
||||
void cpu_loop(CPUArchState *env);
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 90b1698..2048082 100644
|
||||
index 7b72784..ebeab57 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -5983,10 +5983,10 @@ int syscall_restartable(int syscall_nr)
|
||||
@@ -5902,10 +5902,10 @@ static target_timer_t get_timer_id(abi_long arg)
|
||||
/* 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>. */
|
@ -1,4 +1,4 @@
|
||||
From e457395b8a52702b4866234bbe641d6044d725e6 Mon Sep 17 00:00:00 2001
|
||||
From 04eba9254338949db56a01bed42bc3ef187a1f04 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Wed, 5 Aug 2009 09:49:37 +0200
|
||||
Subject: [PATCH] block: Add support for DictZip enabled gzip files
|
@ -1,4 +1,4 @@
|
||||
From 5e55ea4fdd7fcb2dad3ea1c59889390fe94e38bc Mon Sep 17 00:00:00 2001
|
||||
From 0c107d353084a3a15c1281c7e1385ee5ccd5da5f Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Wed, 5 Aug 2009 17:28:38 +0200
|
||||
Subject: [PATCH] block: Add tar container format
|
@ -1,4 +1,4 @@
|
||||
From e25606c433e170cb966f2ec6a0e88c9160684d54 Mon Sep 17 00:00:00 2001
|
||||
From 5c25d47e2378efdbd72c49827252741b46ebacff Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Wed, 12 Dec 2012 19:11:30 +0100
|
||||
Subject: [PATCH] Legacy Patch kvm-qemu-preXX-dictzip3.patch
|
@ -1,4 +1,4 @@
|
||||
From 543e99f83c5c7aff0675f430f0b7ff6e9e43472d Mon Sep 17 00:00:00 2001
|
||||
From ea20aa50570a68fd2ccda17adfea0f32c71694dc Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Mon, 6 Jun 2011 06:53:52 +0200
|
||||
Subject: [PATCH] console: add question-mark escape operator
|
@ -1,4 +1,4 @@
|
||||
From 7cf495aa2aff024d97b20b87fa87fc17cbbbf5ff Mon Sep 17 00:00:00 2001
|
||||
From 5b001dfb49c85d9934f0ac09bd24a7aecac55956 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
|
@ -1,4 +1,4 @@
|
||||
From 5ac9c6a5e5acfc0ce7b61783533ce3a866d85ec3 Mon Sep 17 00:00:00 2001
|
||||
From 1e5020a27bf52c24abb9272f9ba605959e8771e8 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,10 +16,10 @@ 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 2048082..00c075d 100644
|
||||
index ebeab57..c084f38 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -6320,9 +6320,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
|
||||
@@ -6233,9 +6233,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
|
||||
case TARGET_NR_oldstat:
|
||||
goto unimplemented;
|
||||
#endif
|
@ -1,4 +1,4 @@
|
||||
From 0ae16f3d2670b4bd86595f6b9f2b5bd7b6faa438 Mon Sep 17 00:00:00 2001
|
||||
From 01aa7df9b3b82e8d16b3dda2e092dff89c15fa82 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Thu, 16 May 2013 12:39:10 +0200
|
||||
Subject: [PATCH] virtfs-proxy-helper: Provide __u64 for broken
|
@ -1,4 +1,4 @@
|
||||
From 96642b20aa9624ffa934c24c22da03b184ee2c9f Mon Sep 17 00:00:00 2001
|
||||
From 71bb8109caee6f4192237b2fad7db748ac50760d Mon Sep 17 00:00:00 2001
|
||||
From: Dinar Valeev <k0da@opensuse.org>
|
||||
Date: Wed, 2 Oct 2013 17:56:03 +0200
|
||||
Subject: [PATCH] configure: Enable PIE for ppc and ppc64 hosts
|
@ -1,4 +1,4 @@
|
||||
From 9aff904100fd11df814e8498cf9dd3d8c7810562 Mon Sep 17 00:00:00 2001
|
||||
From 287306233f77a3774df2d5c9ed7f301ebc21f89c Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Thu, 17 Apr 2014 18:39:10 +0200
|
||||
Subject: [PATCH] qtest: Increase socket timeout
|
@ -1,4 +1,4 @@
|
||||
From b70818ca8b9ca9ea88460c97b59c8e73e0c96bc8 Mon Sep 17 00:00:00 2001
|
||||
From 7f1e160917ebff1a756d08c9b07b88452a68387f 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 b44837ddb7fe9d43d70dc4260e4e9561d68ebc04 Mon Sep 17 00:00:00 2001
|
||||
From 88508c66e9403bb708a1ef186e66f5d45801cdd8 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Tue, 14 Apr 2015 18:42:06 +0200
|
||||
Subject: [PATCH] configure: Enable libseccomp for ppc
|
@ -1,4 +1,4 @@
|
||||
From ab4667c328ab637aabd54364658e8d047297eb54 Mon Sep 17 00:00:00 2001
|
||||
From 3fafdf24acf45df69523e266a38f3c0ca220e9a9 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Mon, 15 Jun 2015 17:36:32 +0200
|
||||
Subject: [PATCH] dictzip: Fix on big endian systems
|
@ -1,4 +1,4 @@
|
||||
From 33fcb26d3770b6ff5019d796595675a3275bfe46 Mon Sep 17 00:00:00 2001
|
||||
From adc543748b20def826281f9e6fda52f026dc099d Mon Sep 17 00:00:00 2001
|
||||
From: Olaf Hering <olaf@aepfle.de>
|
||||
Date: Thu, 24 Mar 2016 14:32:39 +0100
|
||||
Subject: [PATCH] block: split large discard requests from block frontend
|
@ -1,4 +1,4 @@
|
||||
From 529b4b3328e96f55ae0a44d1293616f426077a0b Mon Sep 17 00:00:00 2001
|
||||
From 43fdf04d426f4738aec0d349662a780906268590 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
|
@ -1,4 +1,4 @@
|
||||
From 260d6920548a51e773c2bdca0a2770a3083404a2 Mon Sep 17 00:00:00 2001
|
||||
From 936efd7b1f317b574dbedf08e69e4206f16ac39f Mon Sep 17 00:00:00 2001
|
||||
From: Olaf Hering <olaf@aepfle.de>
|
||||
Date: Fri, 1 Apr 2016 12:27:16 +0200
|
||||
Subject: [PATCH] build: link with libatomic on powerpc-linux
|
@ -1,4 +1,4 @@
|
||||
From 53260b0f3e1426185786f5fe45f99ca1ded84062 Mon Sep 17 00:00:00 2001
|
||||
From a4cae4158cc271ed4d55bc2e237030022f8edc16 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Thu, 7 Apr 2016 04:27:00 -0600
|
||||
Subject: [PATCH] net: mipsnet: check packet length against buffer
|
@ -1,4 +1,4 @@
|
||||
From 4c2fce28b205a0912f1224bdb8dbba2a0d7bf593 Mon Sep 17 00:00:00 2001
|
||||
From 481b43bcc3e920bbe48801a7ad2489260747e8b9 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Thu, 7 Apr 2016 12:50:08 +0530
|
||||
Subject: [PATCH] i386: kvmvapic: initialise imm32 variable
|
@ -1,4 +1,4 @@
|
||||
From 4a36592c8982234afc9591adb50684c2daed0fbd Mon Sep 17 00:00:00 2001
|
||||
From 26e782bead654b0415a46c9a019c54b56488519b Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Thu, 19 May 2016 16:09:30 +0530
|
||||
Subject: [PATCH] esp: check command buffer length before write(CVE-2016-4439)
|
@ -1,4 +1,4 @@
|
||||
From 648083b0e53202c883906a5d57d420a9c6411c89 Mon Sep 17 00:00:00 2001
|
||||
From ff65fa87b6d7d4e7dbda895181c9afc80b07c5e3 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Thu, 19 May 2016 16:09:31 +0530
|
||||
Subject: [PATCH] esp: check dma length before reading scsi
|
@ -1,4 +1,4 @@
|
||||
From 2f492d1dceb93302ae10a97ea799e344e52e1a89 Mon Sep 17 00:00:00 2001
|
||||
From 8c2fc88049f351c67bd82c6f61c54111eb088e69 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Mon, 23 May 2016 04:49:00 -0600
|
||||
Subject: [PATCH] scsi: pvscsi: check command descriptor ring buffer size
|
@ -1,4 +1,4 @@
|
||||
From 62f461d944c764953299772d72892daca092fe3f Mon Sep 17 00:00:00 2001
|
||||
From 9e91782f3582e12f5c41e64f70e5c53f0e7b9f2a Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Tue, 24 May 2016 02:10:00 -0600
|
||||
Subject: [PATCH] scsi: mptsas: infinite loop while fetching requests
|
@ -1,4 +1,4 @@
|
||||
From b360e87d80afa47ab5e1aaa2d58aac0a83047277 Mon Sep 17 00:00:00 2001
|
||||
From d8d0d22b88ceaf7f9ce8e01eb2842b8daf2aa34e Mon Sep 17 00:00:00 2001
|
||||
From: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Date: Tue, 17 May 2016 10:54:54 +0200
|
||||
Subject: [PATCH] vga: add sr_vbe register set
|
@ -1,4 +1,4 @@
|
||||
From d884938c3eab2ca005180941c1dacf6e95f630cc Mon Sep 17 00:00:00 2001
|
||||
From f7901e3ec072d45629284c91300bf5ad21b36908 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Wed, 25 May 2016 16:01:29 +0530
|
||||
Subject: [PATCH] scsi: megasas: use appropriate property buffer size
|
@ -1,4 +1,4 @@
|
||||
From 09b7b3b4bf5463c411a0e4f442db3cf09ec33cbe Mon Sep 17 00:00:00 2001
|
||||
From e9910b20f94d3683d4d8895136583529cf7c313f Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Wed, 25 May 2016 17:55:10 +0530
|
||||
Subject: [PATCH] scsi: megasas: check 'read_queue_head' index value
|
@ -1,4 +1,4 @@
|
||||
From 81ed91f0c8e7ba89afd4718129065c920b3923f0 Mon Sep 17 00:00:00 2001
|
||||
From e7b653272e0242843f39b9b8d65694c29028fdf5 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Tue, 7 Jun 2016 16:44:03 +0530
|
||||
Subject: [PATCH] scsi: megasas: null terminate bios version buffer
|
@ -1,4 +1,4 @@
|
||||
From 5f76584dd7ee7b300a52f57e5a66b667cd3d5faa Mon Sep 17 00:00:00 2001
|
||||
From 74a7469799521413262d7571b7092f859ed32121 Mon Sep 17 00:00:00 2001
|
||||
From: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Date: Mon, 30 May 2016 09:09:18 +0200
|
||||
Subject: [PATCH] vmsvga: move fifo sanity checks to vmsvga_fifo_length
|
@ -1,4 +1,4 @@
|
||||
From 29983512d22362d394c01377fd9b0974865da1b4 Mon Sep 17 00:00:00 2001
|
||||
From 51a212ea5bb9d958e0fd59d9e975685a8b9e62d0 Mon Sep 17 00:00:00 2001
|
||||
From: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Date: Mon, 30 May 2016 09:09:21 +0200
|
||||
Subject: [PATCH] vmsvga: don't process more than 1024 fifo commands at once
|
@ -1,4 +1,4 @@
|
||||
From 30f011dc5ea3328e6bef4923f60e03a5664425f9 Mon Sep 17 00:00:00 2001
|
||||
From 75e2bbd9eb1645c7acb1929ca700913a6e2f54d6 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Lieven <pl@kamp.de>
|
||||
Date: Tue, 24 May 2016 10:59:28 +0200
|
||||
Subject: [PATCH] block/iscsi: avoid potential overflow of acb->task->cdb
|
@ -1,4 +1,4 @@
|
||||
From e53e6fe07906e619b25fc1eb120b7a07b541bcb8 Mon Sep 17 00:00:00 2001
|
||||
From 40b9ce117b5a3aced6e1b88ea0e2619170b202f6 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Mon, 6 Jun 2016 22:04:43 +0530
|
||||
Subject: [PATCH] scsi: esp: check TI buffer index before read/write
|
@ -1,4 +1,4 @@
|
||||
From 6eaa3deb4b8e3f101f9b4487b786c34394486d72 Mon Sep 17 00:00:00 2001
|
||||
From d7476f32d84a256e683d20db0cdd0d3676fa2a62 Mon Sep 17 00:00:00 2001
|
||||
From: Juergen Gross <jgross@suse.com>
|
||||
Date: Thu, 12 May 2016 16:13:39 +0200
|
||||
Subject: [PATCH] xen: introduce dummy system device
|
@ -1,4 +1,4 @@
|
||||
From 40f5afa5ebaf4b6fba5a4d002a013d4e5aae7156 Mon Sep 17 00:00:00 2001
|
||||
From 7647bc34d77f7e67a88e88a7f09c314a3a5c7da8 Mon Sep 17 00:00:00 2001
|
||||
From: Juergen Gross <jgross@suse.com>
|
||||
Date: Thu, 12 May 2016 16:13:40 +0200
|
||||
Subject: [PATCH] xen: write information about supported backends
|
@ -1,4 +1,4 @@
|
||||
From 12492549d007b13f9b23b16a5bb7a156918cf299 Mon Sep 17 00:00:00 2001
|
||||
From 9c573c905a6cc3b4dbf931c64e554a20683807b9 Mon Sep 17 00:00:00 2001
|
||||
From: Juergen Gross <jgross@suse.com>
|
||||
Date: Thu, 12 May 2016 16:13:41 +0200
|
||||
Subject: [PATCH] xen: add pvUSB backend
|
161
0058-xen-move-xen_sysdev-to-xen_backend..patch
Normal file
161
0058-xen-move-xen_sysdev-to-xen_backend..patch
Normal file
@ -0,0 +1,161 @@
|
||||
From ee2225e5f531d965aed352bf99ba339969216144 Mon Sep 17 00:00:00 2001
|
||||
From: Juergen Gross <jgross@suse.com>
|
||||
Date: Mon, 13 Jun 2016 11:12:21 +0200
|
||||
Subject: [PATCH] xen: move xen_sysdev to xen_backend.c
|
||||
|
||||
Commit 9432e53a5bc88681b2d3aec4dac9db07c5476d1b added xen_sysdev as a
|
||||
system device to serve as an anchor for removable virtual buses. This
|
||||
introduced a build failure for non-x86 builds with CONFIG_XEN_BACKEND
|
||||
set, as xen_sysdev was defined in a x86 specific file while being
|
||||
consumed in an architecture independent source.
|
||||
|
||||
Move the xen_sysdev definition and initialization to xen_backend.c to
|
||||
avoid the build failure.
|
||||
|
||||
Signed-off-by: Juergen Gross <jgross@suse.com>
|
||||
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
|
||||
Acked-by: Stefano Stabellini <sstabellini@kernel.org>
|
||||
Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
|
||||
---
|
||||
hw/xen/xen_backend.c | 41 +++++++++++++++++++++++++++++++++++++++++
|
||||
hw/xenpv/xen_machine_pv.c | 40 ----------------------------------------
|
||||
2 files changed, 41 insertions(+), 40 deletions(-)
|
||||
|
||||
diff --git a/hw/xen/xen_backend.c b/hw/xen/xen_backend.c
|
||||
index c63f9df..6e52474 100644
|
||||
--- a/hw/xen/xen_backend.c
|
||||
+++ b/hw/xen/xen_backend.c
|
||||
@@ -27,12 +27,17 @@
|
||||
#include <sys/signal.h>
|
||||
|
||||
#include "hw/hw.h"
|
||||
+#include "hw/sysbus.h"
|
||||
#include "sysemu/char.h"
|
||||
#include "qemu/log.h"
|
||||
#include "hw/xen/xen_backend.h"
|
||||
|
||||
#include <xen/grant_table.h>
|
||||
|
||||
+#define TYPE_XENSYSDEV "xensysdev"
|
||||
+
|
||||
+DeviceState *xen_sysdev;
|
||||
+
|
||||
/* ------------------------------------------------------------- */
|
||||
|
||||
/* public */
|
||||
@@ -763,6 +768,10 @@ int xen_be_init(void)
|
||||
/* Check if xen_init() have been called */
|
||||
goto err;
|
||||
}
|
||||
+
|
||||
+ xen_sysdev = qdev_create(NULL, TYPE_XENSYSDEV);
|
||||
+ qdev_init_nofail(xen_sysdev);
|
||||
+
|
||||
return 0;
|
||||
|
||||
err:
|
||||
@@ -863,3 +872,35 @@ void xen_be_printf(struct XenDevice *xendev, int msg_level, const char *fmt, ...
|
||||
}
|
||||
qemu_log_flush();
|
||||
}
|
||||
+
|
||||
+static int xen_sysdev_init(SysBusDevice *dev)
|
||||
+{
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static Property xen_sysdev_properties[] = {
|
||||
+ {/* end of property list */},
|
||||
+};
|
||||
+
|
||||
+static void xen_sysdev_class_init(ObjectClass *klass, void *data)
|
||||
+{
|
||||
+ DeviceClass *dc = DEVICE_CLASS(klass);
|
||||
+ SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
|
||||
+
|
||||
+ k->init = xen_sysdev_init;
|
||||
+ dc->props = xen_sysdev_properties;
|
||||
+}
|
||||
+
|
||||
+static const TypeInfo xensysdev_info = {
|
||||
+ .name = TYPE_XENSYSDEV,
|
||||
+ .parent = TYPE_SYS_BUS_DEVICE,
|
||||
+ .instance_size = sizeof(SysBusDevice),
|
||||
+ .class_init = xen_sysdev_class_init,
|
||||
+};
|
||||
+
|
||||
+static void xenbe_register_types(void)
|
||||
+{
|
||||
+ type_register_static(&xensysdev_info);
|
||||
+}
|
||||
+
|
||||
+type_init(xenbe_register_types);
|
||||
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
|
||||
index f68cf48..48f725c 100644
|
||||
--- a/hw/xenpv/xen_machine_pv.c
|
||||
+++ b/hw/xenpv/xen_machine_pv.c
|
||||
@@ -25,15 +25,10 @@
|
||||
#include "qemu/osdep.h"
|
||||
#include "hw/hw.h"
|
||||
#include "hw/boards.h"
|
||||
-#include "hw/sysbus.h"
|
||||
#include "hw/xen/xen_backend.h"
|
||||
#include "xen_domainbuild.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
|
||||
-#define TYPE_XENSYSDEV "xensysdev"
|
||||
-
|
||||
-DeviceState *xen_sysdev;
|
||||
-
|
||||
static void xen_init_pv(MachineState *machine)
|
||||
{
|
||||
DriveInfo *dinfo;
|
||||
@@ -72,9 +67,6 @@ static void xen_init_pv(MachineState *machine)
|
||||
break;
|
||||
}
|
||||
|
||||
- xen_sysdev = qdev_create(NULL, TYPE_XENSYSDEV);
|
||||
- qdev_init_nofail(xen_sysdev);
|
||||
-
|
||||
xen_be_register("console", &xen_console_ops);
|
||||
xen_be_register("vkbd", &xen_kbdmouse_ops);
|
||||
xen_be_register("vfb", &xen_framebuffer_ops);
|
||||
@@ -112,38 +104,6 @@ static void xen_init_pv(MachineState *machine)
|
||||
xen_init_display(xen_domid);
|
||||
}
|
||||
|
||||
-static int xen_sysdev_init(SysBusDevice *dev)
|
||||
-{
|
||||
- return 0;
|
||||
-}
|
||||
-
|
||||
-static Property xen_sysdev_properties[] = {
|
||||
- {/* end of property list */},
|
||||
-};
|
||||
-
|
||||
-static void xen_sysdev_class_init(ObjectClass *klass, void *data)
|
||||
-{
|
||||
- DeviceClass *dc = DEVICE_CLASS(klass);
|
||||
- SysBusDeviceClass *k = SYS_BUS_DEVICE_CLASS(klass);
|
||||
-
|
||||
- k->init = xen_sysdev_init;
|
||||
- dc->props = xen_sysdev_properties;
|
||||
-}
|
||||
-
|
||||
-static const TypeInfo xensysdev_info = {
|
||||
- .name = TYPE_XENSYSDEV,
|
||||
- .parent = TYPE_SYS_BUS_DEVICE,
|
||||
- .instance_size = sizeof(SysBusDevice),
|
||||
- .class_init = xen_sysdev_class_init,
|
||||
-};
|
||||
-
|
||||
-static void xenpv_register_types(void)
|
||||
-{
|
||||
- type_register_static(&xensysdev_info);
|
||||
-}
|
||||
-
|
||||
-type_init(xenpv_register_types);
|
||||
-
|
||||
static void xenpv_machine_init(MachineClass *mc)
|
||||
{
|
||||
mc->desc = "Xen Para-virtualized PC";
|
@ -1,28 +0,0 @@
|
||||
From 9ddd9862dbc30107d2315f0b858e32cd0c90db8a Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Fri, 10 Jun 2016 07:12:15 -0600
|
||||
Subject: [PATCH] usb: Fix conditions that xen-usb.c is used
|
||||
|
||||
When non-x86 arch targets are built on x86 we have a mismatched
|
||||
between what is built in support of xen. xen-usb.c is conditioned
|
||||
upon CONFIG_USB_LIBUSB and CONFIG_XEN_BACKEND, but it relies on
|
||||
an external reference that is instead controlled by CONFIG_XEN.
|
||||
Add a dependency on CONFIG_XEN as well.
|
||||
[BR: FATE#316612]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/usb/Makefile.objs | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/usb/Makefile.objs b/hw/usb/Makefile.objs
|
||||
index 98b5c9d..2db2fa1 100644
|
||||
--- a/hw/usb/Makefile.objs
|
||||
+++ b/hw/usb/Makefile.objs
|
||||
@@ -39,6 +39,6 @@ common-obj-$(CONFIG_USB_REDIR) += redirect.o quirks.o
|
||||
# usb pass-through
|
||||
common-obj-y += $(patsubst %,host-%.o,$(HOST_USB))
|
||||
|
||||
-ifeq ($(CONFIG_USB_LIBUSB),y)
|
||||
+ifeq ($(CONFIG_XEN)$(CONFIG_USB_LIBUSB),yy)
|
||||
common-obj-$(CONFIG_XEN_BACKEND) += xen-usb.o
|
||||
endif
|
@ -1,4 +1,4 @@
|
||||
From 464539abcc33f2d8465dead1555de169b87239b9 Mon Sep 17 00:00:00 2001
|
||||
From 6a788961dd16f558d78ab7313f0b297409f37af7 Mon Sep 17 00:00:00 2001
|
||||
From: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Date: Wed, 1 Jun 2016 08:22:30 +0200
|
||||
Subject: [PATCH] vnc: add configurable keyboard delay
|
@ -1,4 +1,4 @@
|
||||
From 9770400f8184e43d9370ec97e15c6fcaccc381d1 Mon Sep 17 00:00:00 2001
|
||||
From 702d446c9378b6d8415599780cf9f8bfb4c7cb9a Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Wed, 25 May 2016 17:41:44 +0530
|
||||
Subject: [PATCH] scsi: megasas: initialise local configuration data buffer
|
61
0061-configure-add-echo_version-helper.patch
Normal file
61
0061-configure-add-echo_version-helper.patch
Normal file
@ -0,0 +1,61 @@
|
||||
From 83775fe297c7cc8dae0d46c22accc2d7eb78c4a0 Mon Sep 17 00:00:00 2001
|
||||
From: Cole Robinson <crobinso@redhat.com>
|
||||
Date: Fri, 6 May 2016 14:03:09 -0400
|
||||
Subject: [PATCH] configure: add echo_version helper
|
||||
|
||||
Simplifies printing library versions, dependent on if the library
|
||||
was even found
|
||||
|
||||
Signed-off-by: Cole Robinson <crobinso@redhat.com>
|
||||
Message-id: 3c9ab16123e06bb4109771ef6ee8acd82d449ba0.1462557436.git.crobinso@redhat.com
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
(cherry picked from commit 02d34f62fdecb54637e5a66d254bd68fcbfa397f)
|
||||
[BR: BSC#988855]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
configure | 18 ++++++++----------
|
||||
1 file changed, 8 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index b455035..767658e 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -4748,6 +4748,12 @@ EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
+echo_version() {
|
||||
+ if test "$1" = "yes" ; then
|
||||
+ echo "($2)"
|
||||
+ fi
|
||||
+}
|
||||
+
|
||||
# prepend pixman and ftd flags after all config tests are done
|
||||
QEMU_CFLAGS="$pixman_cflags $fdt_cflags $QEMU_CFLAGS"
|
||||
libs_softmmu="$pixman_libs $libs_softmmu"
|
||||
@@ -4805,11 +4811,7 @@ echo "GNUTLS hash $gnutls_hash"
|
||||
echo "GNUTLS rnd $gnutls_rnd"
|
||||
echo "libgcrypt $gcrypt"
|
||||
echo "libgcrypt kdf $gcrypt_kdf"
|
||||
-if test "$nettle" = "yes"; then
|
||||
- echo "nettle $nettle ($nettle_version)"
|
||||
-else
|
||||
- echo "nettle $nettle"
|
||||
-fi
|
||||
+echo "nettle $nettle `echo_version $nettle $nettle_version`"
|
||||
echo "nettle kdf $nettle_kdf"
|
||||
echo "libtasn1 $tasn1"
|
||||
echo "VTE support $vte"
|
||||
@@ -4861,11 +4863,7 @@ echo "Trace backends $trace_backends"
|
||||
if have_backend "simple"; then
|
||||
echo "Trace output file $trace_file-<pid>"
|
||||
fi
|
||||
-if test "$spice" = "yes"; then
|
||||
-echo "spice support $spice ($spice_protocol_version/$spice_server_version)"
|
||||
-else
|
||||
-echo "spice support $spice"
|
||||
-fi
|
||||
+echo "spice support $spice `echo_version $spice $spice_protocol_version/$spice_server_version`"
|
||||
echo "rbd support $rbd"
|
||||
echo "xfsctl support $xfs"
|
||||
echo "smartcard support $smartcard"
|
70
0062-configure-support-vte-2.91.patch
Normal file
70
0062-configure-support-vte-2.91.patch
Normal file
@ -0,0 +1,70 @@
|
||||
From b673055ec7e4eda0454aacc2d042bd53405f85e6 Mon Sep 17 00:00:00 2001
|
||||
From: Cole Robinson <crobinso@redhat.com>
|
||||
Date: Fri, 6 May 2016 14:03:12 -0400
|
||||
Subject: [PATCH] configure: support vte-2.91
|
||||
|
||||
vte >= 0.37 expores API version 2.91, which is where all the active
|
||||
development is. qemu builds and runs fine with that version, so use it
|
||||
if it's available.
|
||||
|
||||
Signed-off-by: Cole Robinson <crobinso@redhat.com>
|
||||
Message-id: b4f0375647f7b368d3dbd3834aee58cb0253566a.1462557436.git.crobinso@redhat.com
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
(cherry picked from commit c6feff9e09aa999b77a37f532adbb89682ecb1b6)
|
||||
[BR: BSC#988855]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
configure | 17 +++++++++++------
|
||||
1 file changed, 11 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 767658e..f32cff5 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -2395,20 +2395,25 @@ fi
|
||||
|
||||
if test "$vte" != "no"; then
|
||||
if test "$gtkabi" = "3.0"; then
|
||||
- vtepackage="vte-2.90"
|
||||
- vteversion="0.32.0"
|
||||
+ vteminversion="0.32.0"
|
||||
+ if $pkg_config --exists "vte-2.91"; then
|
||||
+ vtepackage="vte-2.91"
|
||||
+ else
|
||||
+ vtepackage="vte-2.90"
|
||||
+ fi
|
||||
else
|
||||
vtepackage="vte"
|
||||
- vteversion="0.24.0"
|
||||
+ vteminversion="0.24.0"
|
||||
fi
|
||||
- if $pkg_config --exists "$vtepackage >= $vteversion"; then
|
||||
+ if $pkg_config --exists "$vtepackage >= $vteminversion"; then
|
||||
vte_cflags=`$pkg_config --cflags $vtepackage`
|
||||
vte_libs=`$pkg_config --libs $vtepackage`
|
||||
+ vteversion=`$pkg_config --modversion $vtepackage`
|
||||
libs_softmmu="$vte_libs $libs_softmmu"
|
||||
vte="yes"
|
||||
elif test "$vte" = "yes"; then
|
||||
if test "$gtkabi" = "3.0"; then
|
||||
- feature_not_found "vte" "Install libvte-2.90 devel"
|
||||
+ feature_not_found "vte" "Install libvte-2.90/2.91 devel"
|
||||
else
|
||||
feature_not_found "vte" "Install libvte devel"
|
||||
fi
|
||||
@@ -4806,6 +4811,7 @@ echo "pixman $pixman"
|
||||
echo "SDL support $sdl"
|
||||
echo "GTK support $gtk"
|
||||
echo "GTK GL support $gtk_gl"
|
||||
+echo "VTE support $vte `echo_version $vte $vteversion`"
|
||||
echo "GNUTLS support $gnutls"
|
||||
echo "GNUTLS hash $gnutls_hash"
|
||||
echo "GNUTLS rnd $gnutls_rnd"
|
||||
@@ -4814,7 +4820,6 @@ echo "libgcrypt kdf $gcrypt_kdf"
|
||||
echo "nettle $nettle `echo_version $nettle $nettle_version`"
|
||||
echo "nettle kdf $nettle_kdf"
|
||||
echo "libtasn1 $tasn1"
|
||||
-echo "VTE support $vte"
|
||||
echo "curses support $curses"
|
||||
echo "virgl support $virglrenderer"
|
||||
echo "curl support $curl"
|
38
0063-hw-arm-virt-mark-the-PCIe-host-cont.patch
Normal file
38
0063-hw-arm-virt-mark-the-PCIe-host-cont.patch
Normal file
@ -0,0 +1,38 @@
|
||||
From ced63da3c840792292a6ee8201c3f7789b80b7eb Mon Sep 17 00:00:00 2001
|
||||
From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
|
||||
Date: Mon, 4 Jul 2016 13:06:36 +0100
|
||||
Subject: [PATCH] hw/arm/virt: mark the PCIe host controller as DMA coherent in
|
||||
the DT
|
||||
|
||||
Since QEMU performs cacheable accesses to guest memory when doing DMA
|
||||
as part of the implementation of emulated PCI devices, guest drivers
|
||||
should use cacheable accesses as well when running under KVM. Since this
|
||||
essentially means that emulated PCI devices are DMA coherent, set the
|
||||
'dma-coherent' DT property on the PCIe host controller DT node.
|
||||
|
||||
This brings the DT description into line with the ACPI description,
|
||||
which already marks the PCI bridge as cache coherent (see commit
|
||||
bc64b96c984abf).
|
||||
|
||||
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
|
||||
Message-id: 1467134090-5099-1-git-send-email-ard.biesheuvel@linaro.org
|
||||
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
|
||||
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
|
||||
(cherry picked from commit 5d636e21c44ecf982a22a7bc4ca89186079ac283)
|
||||
Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
---
|
||||
hw/arm/virt.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
|
||||
index 56d35c7..9d015d5 100644
|
||||
--- a/hw/arm/virt.c
|
||||
+++ b/hw/arm/virt.c
|
||||
@@ -950,6 +950,7 @@ static void create_pcie(const VirtBoardInfo *vbi, qemu_irq *pic,
|
||||
qemu_fdt_setprop_cell(vbi->fdt, nodename, "#size-cells", 2);
|
||||
qemu_fdt_setprop_cells(vbi->fdt, nodename, "bus-range", 0,
|
||||
nr_pcie_buses - 1);
|
||||
+ qemu_fdt_setprop(vbi->fdt, nodename, "dma-coherent", NULL, 0);
|
||||
|
||||
if (vbi->v2m_phandle) {
|
||||
qemu_fdt_setprop_cells(vbi->fdt, nodename, "msi-parent",
|
47
0064-xen-SUSE-xenlinux-unplug-for-emulat.patch
Normal file
47
0064-xen-SUSE-xenlinux-unplug-for-emulat.patch
Normal file
@ -0,0 +1,47 @@
|
||||
From 1caba48fc19de7cdceda7577ccf6970d4eb7ed75 Mon Sep 17 00:00:00 2001
|
||||
From: Olaf Hering <ohering@suse.de>
|
||||
Date: Tue, 21 Jun 2016 18:42:45 +0200
|
||||
Subject: [PATCH] xen: SUSE xenlinux unplug for emulated PCI
|
||||
|
||||
Implement SUSE specific unplug protocol for emulated PCI devices
|
||||
in PVonHVM guests
|
||||
(bsc#953339, bsc#953362, bsc#953518, bsc#984981)
|
||||
|
||||
Signed-off-by: Olaf Hering <ohering@suse.de>
|
||||
---
|
||||
hw/i386/xen/xen_platform.c | 22 ++++++++++++++++++++++
|
||||
1 file changed, 22 insertions(+)
|
||||
|
||||
diff --git a/hw/i386/xen/xen_platform.c b/hw/i386/xen/xen_platform.c
|
||||
index aa78393..48800c1 100644
|
||||
--- a/hw/i386/xen/xen_platform.c
|
||||
+++ b/hw/i386/xen/xen_platform.c
|
||||
@@ -314,6 +314,28 @@ static void xen_platform_ioport_writeb(void *opaque, hwaddr addr,
|
||||
case 0: /* Platform flags */
|
||||
platform_fixed_ioport_writeb(opaque, 0, (uint32_t)val);
|
||||
break;
|
||||
+ case 4:
|
||||
+ if (val == 1 && size == 1) {
|
||||
+ /*
|
||||
+ * SUSE unplug for Xenlinux
|
||||
+ * xen-kmp used this since xen-3.0.4, instead the official protocol from xen-3.3+
|
||||
+ * It did an unconditional "outl(1, (ioaddr + 4));"
|
||||
+ * This approach was used until openSUSE 12.3, up to SLE11SP3 and in SLE10.
|
||||
+ * Starting with openSUSE 13.1, SLE11SP4 and SLE12 the official protocol is used.
|
||||
+ * pre VMDP 1.7 made use of 4 and 8 depending on how vmdp was configured.
|
||||
+ * If VMDP was to control both disk and LAN it would use 4.
|
||||
+ * If it controlled just disk or just LAN, it would use 8 below.
|
||||
+ */
|
||||
+ PCIDevice *pci_dev = PCI_DEVICE(s);
|
||||
+ DPRINTF("unplug disks\n");
|
||||
+ blk_drain_all();
|
||||
+ blk_flush_all();
|
||||
+ pci_unplug_disks(pci_dev->bus);
|
||||
+ DPRINTF("unplug nics\n");
|
||||
+ pci_unplug_nics(pci_dev->bus);
|
||||
+ DPRINTF("done\n");
|
||||
+ }
|
||||
+ break;
|
||||
case 8:
|
||||
log_writeb(s, (uint32_t)val);
|
||||
break;
|
36
0065-scsi-esp-check-buffer-length-before.patch
Normal file
36
0065-scsi-esp-check-buffer-length-before.patch
Normal file
@ -0,0 +1,36 @@
|
||||
From 440a840f30f2439aece31ae59a5ee91675a78bb1 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Tue, 31 May 2016 23:23:27 +0530
|
||||
Subject: [PATCH] scsi: esp: check buffer length before reading scsi command
|
||||
|
||||
The 53C9X Fast SCSI Controller(FSC) comes with an internal 16-byte
|
||||
FIFO buffer. It is used to handle command and data transfer.
|
||||
Routine get_cmd() in non-DMA mode, uses 'ti_size' to read scsi
|
||||
command into a buffer. Add check to validate command length against
|
||||
buffer size to avoid any overrun.
|
||||
|
||||
Reported-by: Li Qiang <liqiang6-s@360.cn>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Message-Id: <1464717207-7549-1-git-send-email-ppandit@redhat.com>
|
||||
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
||||
(cherry picked from commit d3cdc49138c30be1d3c2f83d18f85d9fdee95f1a)
|
||||
[BR: CVE-2016-5238 BSC#982959]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/scsi/esp.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
|
||||
index 3adb685..4b94bbc 100644
|
||||
--- a/hw/scsi/esp.c
|
||||
+++ b/hw/scsi/esp.c
|
||||
@@ -98,6 +98,9 @@ static uint32_t get_cmd(ESPState *s, uint8_t *buf, uint8_t buflen)
|
||||
s->dma_memory_read(s->dma_opaque, buf, dmalen);
|
||||
} else {
|
||||
dmalen = s->ti_size;
|
||||
+ if (dmalen > TI_BUFSZ) {
|
||||
+ return 0;
|
||||
+ }
|
||||
memcpy(buf, s->ti_buf, dmalen);
|
||||
buf[0] = buf[2] >> 5;
|
||||
}
|
29
0066-scsi-esp-respect-FIFO-invariant-aft.patch
Normal file
29
0066-scsi-esp-respect-FIFO-invariant-aft.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From 9b2c1b6e771f01757b93cc92625ef48903786291 Mon Sep 17 00:00:00 2001
|
||||
From: Paolo Bonzini <pbonzini@redhat.com>
|
||||
Date: Tue, 14 Jun 2016 15:10:24 +0200
|
||||
Subject: [PATCH] scsi: esp: respect FIFO invariant after message phase
|
||||
|
||||
The FIFO contains two bytes; hence the write ptr should be two bytes ahead
|
||||
of the read pointer.
|
||||
|
||||
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
||||
(cherry picked from commit d020aa504cec8f525b55ba2ef982c09dc847c72e)
|
||||
[BR: CVE-2016-5238 BSC#982959]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/scsi/esp.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
|
||||
index 4b94bbc..3f08598 100644
|
||||
--- a/hw/scsi/esp.c
|
||||
+++ b/hw/scsi/esp.c
|
||||
@@ -222,7 +222,7 @@ static void write_response(ESPState *s)
|
||||
} else {
|
||||
s->ti_size = 2;
|
||||
s->ti_rptr = 0;
|
||||
- s->ti_wptr = 0;
|
||||
+ s->ti_wptr = 2;
|
||||
s->rregs[ESP_RFLAGS] = 2;
|
||||
}
|
||||
esp_raise_irq(s);
|
52
0067-pci-assign-Move-Invalid-ROM-error-m.patch
Normal file
52
0067-pci-assign-Move-Invalid-ROM-error-m.patch
Normal file
@ -0,0 +1,52 @@
|
||||
From f4fe76597dccb9017be71983c4204f21877fc69f Mon Sep 17 00:00:00 2001
|
||||
From: Lin Ma <lma@suse.com>
|
||||
Date: Thu, 16 Jun 2016 01:05:27 +0800
|
||||
Subject: [PATCH] pci-assign: Move "Invalid ROM" error message to
|
||||
pci-assign-load-rom.c
|
||||
|
||||
In function pci_assign_dev_load_option_rom, For those pci devices don't
|
||||
have 'rom' file under sysfs or if loading ROM from external file, The
|
||||
function returns NULL, and won't set the passed 'size' variable.
|
||||
|
||||
In these 2 cases, qemu still reports "Invalid ROM" error message, Users
|
||||
may be confused by it.
|
||||
|
||||
Signed-off-by: Lin Ma <lma@suse.com>
|
||||
Message-Id: <1466010327-22368-1-git-send-email-lma@suse.com>
|
||||
Cc: qemu-stable@nongnu.org
|
||||
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
||||
(cherry picked from commit be968c721ee9df49708691ab58f0e66b394dea82)
|
||||
[BR: BSC#982927]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/i386/kvm/pci-assign.c | 4 ----
|
||||
hw/i386/pci-assign-load-rom.c | 3 +++
|
||||
2 files changed, 3 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/hw/i386/kvm/pci-assign.c b/hw/i386/kvm/pci-assign.c
|
||||
index bf425a2..8abce52 100644
|
||||
--- a/hw/i386/kvm/pci-assign.c
|
||||
+++ b/hw/i386/kvm/pci-assign.c
|
||||
@@ -1891,8 +1891,4 @@ static void assigned_dev_load_option_rom(AssignedDevice *dev)
|
||||
pci_assign_dev_load_option_rom(&dev->dev, OBJECT(dev), &size,
|
||||
dev->host.domain, dev->host.bus,
|
||||
dev->host.slot, dev->host.function);
|
||||
-
|
||||
- if (!size) {
|
||||
- error_report("pci-assign: Invalid ROM.");
|
||||
- }
|
||||
}
|
||||
diff --git a/hw/i386/pci-assign-load-rom.c b/hw/i386/pci-assign-load-rom.c
|
||||
index 4bbb08c..0d8e4b2 100644
|
||||
--- a/hw/i386/pci-assign-load-rom.c
|
||||
+++ b/hw/i386/pci-assign-load-rom.c
|
||||
@@ -40,6 +40,9 @@ void *pci_assign_dev_load_option_rom(PCIDevice *dev, struct Object *owner,
|
||||
domain, bus, slot, function);
|
||||
|
||||
if (stat(rom_file, &st)) {
|
||||
+ if (errno != ENOENT) {
|
||||
+ error_report("pci-assign: Invalid ROM.");
|
||||
+ }
|
||||
return NULL;
|
||||
}
|
||||
|
29
0068-Xen-PCI-passthrough-fix-passthrough.patch
Normal file
29
0068-Xen-PCI-passthrough-fix-passthrough.patch
Normal file
@ -0,0 +1,29 @@
|
||||
From a4b6bbf1139ebc70375c48afe99fccdd9dcaa501 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Tue, 26 Jul 2016 16:42:45 -0600
|
||||
Subject: [PATCH] Xen PCI passthrough: fix passthrough failure when no
|
||||
interrupt pin
|
||||
|
||||
Commit 5a11d0f7 mistakenly converted a log message into an error
|
||||
condition when no pin interrupt is found for the pci device being
|
||||
passed through. Revert that part of the commit.
|
||||
|
||||
[BR: BSC#981925, BSC#989250]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/xen/xen_pt.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/hw/xen/xen_pt.c b/hw/xen/xen_pt.c
|
||||
index f593b04..b6d71bb 100644
|
||||
--- a/hw/xen/xen_pt.c
|
||||
+++ b/hw/xen/xen_pt.c
|
||||
@@ -842,7 +842,7 @@ static void xen_pt_realize(PCIDevice *d, Error **errp)
|
||||
goto err_out;
|
||||
}
|
||||
if (!scratch) {
|
||||
- error_setg(errp, "no pin interrupt");
|
||||
+ XEN_PT_LOG(d, "no pin interrupt\n");
|
||||
goto out;
|
||||
}
|
||||
|
73
0069-scsi-esp-make-cmdbuf-big-enough-for.patch
Normal file
73
0069-scsi-esp-make-cmdbuf-big-enough-for.patch
Normal file
@ -0,0 +1,73 @@
|
||||
From 20a82db8677dfb40288953ba296c372b66146f4d Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Thu, 16 Jun 2016 00:22:35 +0200
|
||||
Subject: [PATCH] scsi: esp: make cmdbuf big enough for maximum CDB size
|
||||
|
||||
While doing DMA read into ESP command buffer 's->cmdbuf', it could
|
||||
write past the 's->cmdbuf' area, if it was transferring more than 16
|
||||
bytes. Increase the command buffer size to 32, which is maximum when
|
||||
's->do_cmd' is set, and add a check on 'len' to avoid OOB access.
|
||||
|
||||
Reported-by: Li Qiang <liqiang6-s@360.cn>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
||||
(cherry picked from commit 926cde5f3e4d2504ed161ed0cb771ac7cad6fd11)
|
||||
[BR: CVE-2016-6351 BSC#990835]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/scsi/esp.c | 6 ++++--
|
||||
include/hw/scsi/esp.h | 3 ++-
|
||||
2 files changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
|
||||
index 3f08598..9e318fd 100644
|
||||
--- a/hw/scsi/esp.c
|
||||
+++ b/hw/scsi/esp.c
|
||||
@@ -249,6 +249,8 @@ static void esp_do_dma(ESPState *s)
|
||||
len = s->dma_left;
|
||||
if (s->do_cmd) {
|
||||
trace_esp_do_dma(s->cmdlen, len);
|
||||
+ assert (s->cmdlen <= sizeof(s->cmdbuf) &&
|
||||
+ len <= sizeof(s->cmdbuf) - s->cmdlen);
|
||||
s->dma_memory_read(s->dma_opaque, &s->cmdbuf[s->cmdlen], len);
|
||||
s->ti_size = 0;
|
||||
s->cmdlen = 0;
|
||||
@@ -348,7 +350,7 @@ static void handle_ti(ESPState *s)
|
||||
s->dma_counter = dmalen;
|
||||
|
||||
if (s->do_cmd)
|
||||
- minlen = (dmalen < 32) ? dmalen : 32;
|
||||
+ minlen = (dmalen < ESP_CMDBUF_SZ) ? dmalen : ESP_CMDBUF_SZ;
|
||||
else if (s->ti_size < 0)
|
||||
minlen = (dmalen < -s->ti_size) ? dmalen : -s->ti_size;
|
||||
else
|
||||
@@ -452,7 +454,7 @@ void esp_reg_write(ESPState *s, uint32_t saddr, uint64_t val)
|
||||
break;
|
||||
case ESP_FIFO:
|
||||
if (s->do_cmd) {
|
||||
- if (s->cmdlen < TI_BUFSZ) {
|
||||
+ if (s->cmdlen < ESP_CMDBUF_SZ) {
|
||||
s->cmdbuf[s->cmdlen++] = val & 0xff;
|
||||
} else {
|
||||
trace_esp_error_fifo_overrun();
|
||||
diff --git a/include/hw/scsi/esp.h b/include/hw/scsi/esp.h
|
||||
index 6c79527..d2c4886 100644
|
||||
--- a/include/hw/scsi/esp.h
|
||||
+++ b/include/hw/scsi/esp.h
|
||||
@@ -14,6 +14,7 @@ void esp_init(hwaddr espaddr, int it_shift,
|
||||
|
||||
#define ESP_REGS 16
|
||||
#define TI_BUFSZ 16
|
||||
+#define ESP_CMDBUF_SZ 32
|
||||
|
||||
typedef struct ESPState ESPState;
|
||||
|
||||
@@ -31,7 +32,7 @@ struct ESPState {
|
||||
SCSIBus bus;
|
||||
SCSIDevice *current_dev;
|
||||
SCSIRequest *current_req;
|
||||
- uint8_t cmdbuf[TI_BUFSZ];
|
||||
+ uint8_t cmdbuf[ESP_CMDBUF_SZ];
|
||||
uint32_t cmdlen;
|
||||
uint32_t do_cmd;
|
||||
|
58
0070-scsi-esp-fix-migration.patch
Normal file
58
0070-scsi-esp-fix-migration.patch
Normal file
@ -0,0 +1,58 @@
|
||||
From a4c62237f33857750850ef30066a5ae5d4d1194e Mon Sep 17 00:00:00 2001
|
||||
From: Paolo Bonzini <pbonzini@redhat.com>
|
||||
Date: Mon, 20 Jun 2016 16:32:39 +0200
|
||||
Subject: [PATCH] scsi: esp: fix migration
|
||||
|
||||
Commit 926cde5 ("scsi: esp: make cmdbuf big enough for maximum CDB size",
|
||||
2016-06-16) changed the size of a migrated field. Split it in two
|
||||
parts, and only migrate the second part in a new vmstate version.
|
||||
|
||||
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
||||
(cherry picked from commit cc96677469388bad3d66479379735cf75db069e3)
|
||||
[BR: CVE-2016-6351 BSC#990835]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/scsi/esp.c | 5 +++--
|
||||
include/migration/vmstate.h | 5 ++++-
|
||||
2 files changed, 7 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c
|
||||
index 9e318fd..25c547c 100644
|
||||
--- a/hw/scsi/esp.c
|
||||
+++ b/hw/scsi/esp.c
|
||||
@@ -577,7 +577,7 @@ static bool esp_mem_accepts(void *opaque, hwaddr addr,
|
||||
|
||||
const VMStateDescription vmstate_esp = {
|
||||
.name ="esp",
|
||||
- .version_id = 3,
|
||||
+ .version_id = 4,
|
||||
.minimum_version_id = 3,
|
||||
.fields = (VMStateField[]) {
|
||||
VMSTATE_BUFFER(rregs, ESPState),
|
||||
@@ -588,7 +588,8 @@ const VMStateDescription vmstate_esp = {
|
||||
VMSTATE_BUFFER(ti_buf, ESPState),
|
||||
VMSTATE_UINT32(status, ESPState),
|
||||
VMSTATE_UINT32(dma, ESPState),
|
||||
- VMSTATE_BUFFER(cmdbuf, ESPState),
|
||||
+ VMSTATE_PARTIAL_BUFFER(cmdbuf, ESPState, 16),
|
||||
+ VMSTATE_BUFFER_START_MIDDLE_V(cmdbuf, ESPState, 16, 4),
|
||||
VMSTATE_UINT32(cmdlen, ESPState),
|
||||
VMSTATE_UINT32(do_cmd, ESPState),
|
||||
VMSTATE_UINT32(dma_left, ESPState),
|
||||
diff --git a/include/migration/vmstate.h b/include/migration/vmstate.h
|
||||
index 84ee355..853a2bd 100644
|
||||
--- a/include/migration/vmstate.h
|
||||
+++ b/include/migration/vmstate.h
|
||||
@@ -888,8 +888,11 @@ extern const VMStateInfo vmstate_info_bitmap;
|
||||
#define VMSTATE_PARTIAL_BUFFER(_f, _s, _size) \
|
||||
VMSTATE_STATIC_BUFFER(_f, _s, 0, NULL, 0, _size)
|
||||
|
||||
+#define VMSTATE_BUFFER_START_MIDDLE_V(_f, _s, _start, _v) \
|
||||
+ VMSTATE_STATIC_BUFFER(_f, _s, _v, NULL, _start, sizeof(typeof_field(_s, _f)))
|
||||
+
|
||||
#define VMSTATE_BUFFER_START_MIDDLE(_f, _s, _start) \
|
||||
- VMSTATE_STATIC_BUFFER(_f, _s, 0, NULL, _start, sizeof(typeof_field(_s, _f)))
|
||||
+ VMSTATE_BUFFER_START_MIDDLE_V(_f, _s, _start, 0)
|
||||
|
||||
#define VMSTATE_PARTIAL_VBUFFER(_f, _s, _size) \
|
||||
VMSTATE_VBUFFER(_f, _s, 0, NULL, 0, _size)
|
65
0071-virtio-error-out-if-guest-exceeds-v.patch
Normal file
65
0071-virtio-error-out-if-guest-exceeds-v.patch
Normal file
@ -0,0 +1,65 @@
|
||||
From d9c626e4ede58130f64f24f4f9ca1140e4102a70 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Hajnoczi <stefanha@redhat.com>
|
||||
Date: Tue, 19 Jul 2016 13:07:13 +0100
|
||||
Subject: [PATCH] virtio: error out if guest exceeds virtqueue size
|
||||
|
||||
A broken or malicious guest can submit more requests than the virtqueue
|
||||
size permits, causing unbounded memory allocation in QEMU.
|
||||
|
||||
The guest can submit requests without bothering to wait for completion
|
||||
and is therefore not bound by virtqueue size. This requires reusing
|
||||
vring descriptors in more than one request, which is not allowed by the
|
||||
VIRTIO 1.0 specification.
|
||||
|
||||
In "3.2.1 Supplying Buffers to The Device", the VIRTIO 1.0 specification
|
||||
says:
|
||||
|
||||
1. The driver places the buffer into free descriptor(s) in the
|
||||
descriptor table, chaining as necessary
|
||||
|
||||
and
|
||||
|
||||
Note that the above code does not take precautions against the
|
||||
available ring buffer wrapping around: this is not possible since the
|
||||
ring buffer is the same size as the descriptor table, so step (1) will
|
||||
prevent such a condition.
|
||||
|
||||
This implies that placing more buffers into the virtqueue than the
|
||||
descriptor table size is not allowed.
|
||||
|
||||
QEMU is missing the check to prevent this case. Processing a request
|
||||
allocates a VirtQueueElement leading to unbounded memory allocation
|
||||
controlled by the guest.
|
||||
|
||||
Exit with an error if the guest provides more requests than the
|
||||
virtqueue size permits. This bounds memory allocation and makes the
|
||||
buggy guest visible to the user.
|
||||
|
||||
This patch fixes CVE-2016-5403 and was reported by Zhenhao Hong from 360
|
||||
Marvel Team, China.
|
||||
|
||||
Reported-by: Zhenhao Hong <hongzhenhao@360.cn>
|
||||
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
|
||||
(cherry picked from commit afd9096eb1882f23929f5b5c177898ed231bac66)
|
||||
[BR: CVE-2016-5403 BSC#991080]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/virtio/virtio.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
|
||||
index 30ede3d..e5ead0d 100644
|
||||
--- a/hw/virtio/virtio.c
|
||||
+++ b/hw/virtio/virtio.c
|
||||
@@ -561,6 +561,11 @@ void *virtqueue_pop(VirtQueue *vq, size_t sz)
|
||||
|
||||
max = vq->vring.num;
|
||||
|
||||
+ if (vq->inuse >= vq->vring.num) {
|
||||
+ error_report("Virtqueue size exceeded");
|
||||
+ exit(1);
|
||||
+ }
|
||||
+
|
||||
i = head = virtqueue_get_head(vq, vq->last_avail_idx++);
|
||||
if (virtio_vdev_has_feature(vdev, VIRTIO_RING_F_EVENT_IDX)) {
|
||||
vring_set_avail_event(vq, vq->last_avail_idx);
|
103
0072-xen-when-removing-a-backend-don-t-r.patch
Normal file
103
0072-xen-when-removing-a-backend-don-t-r.patch
Normal file
@ -0,0 +1,103 @@
|
||||
From 0d4ea8a7847a76415ed0d0db0392be5b7d1b71a6 Mon Sep 17 00:00:00 2001
|
||||
From: Juergen Gross <jgross@suse.com>
|
||||
Date: Fri, 29 Jul 2016 12:51:53 +0200
|
||||
Subject: [PATCH] xen: when removing a backend don't remove many of them
|
||||
|
||||
When a Xenstore watch fires indicating a backend has to be removed
|
||||
don't remove all backends for that domain with the specified device
|
||||
index, but just the one which has the correct type.
|
||||
|
||||
The easiest way to achieve this is to use the already determined
|
||||
xendev as parameter for xen_be_del_xendev() instead of only the domid
|
||||
and device index.
|
||||
|
||||
This at once removes the open coded QTAILQ_FOREACH_SAVE() in
|
||||
xen_be_del_xendev() as there is no need to search for the correct
|
||||
xendev any longer.
|
||||
|
||||
Signed-off-by: Juergen Gross <jgross@suse.com>
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/xen/xen_backend.c | 58 +++++++++++++++++-----------------------------------
|
||||
1 file changed, 19 insertions(+), 39 deletions(-)
|
||||
|
||||
diff --git a/hw/xen/xen_backend.c b/hw/xen/xen_backend.c
|
||||
index 6e52474..8f347da 100644
|
||||
--- a/hw/xen/xen_backend.c
|
||||
+++ b/hw/xen/xen_backend.c
|
||||
@@ -322,48 +322,28 @@ static struct XenDevice *xen_be_get_xendev(const char *type, int dom, int dev,
|
||||
/*
|
||||
* release xen backend device.
|
||||
*/
|
||||
-static struct XenDevice *xen_be_del_xendev(int dom, int dev)
|
||||
+static void xen_be_del_xendev(struct XenDevice *xendev)
|
||||
{
|
||||
- struct XenDevice *xendev, *xnext;
|
||||
-
|
||||
- /*
|
||||
- * This is pretty much like QTAILQ_FOREACH(xendev, &xendevs, next) but
|
||||
- * we save the next pointer in xnext because we might free xendev.
|
||||
- */
|
||||
- xnext = xendevs.tqh_first;
|
||||
- while (xnext) {
|
||||
- xendev = xnext;
|
||||
- xnext = xendev->next.tqe_next;
|
||||
-
|
||||
- if (xendev->dom != dom) {
|
||||
- continue;
|
||||
- }
|
||||
- if (xendev->dev != dev && dev != -1) {
|
||||
- continue;
|
||||
- }
|
||||
-
|
||||
- if (xendev->ops->free) {
|
||||
- xendev->ops->free(xendev);
|
||||
- }
|
||||
-
|
||||
- if (xendev->fe) {
|
||||
- char token[XEN_BUFSIZE];
|
||||
- snprintf(token, sizeof(token), "fe:%p", xendev);
|
||||
- xs_unwatch(xenstore, xendev->fe, token);
|
||||
- g_free(xendev->fe);
|
||||
- }
|
||||
+ if (xendev->ops->free) {
|
||||
+ xendev->ops->free(xendev);
|
||||
+ }
|
||||
|
||||
- if (xendev->evtchndev != NULL) {
|
||||
- xenevtchn_close(xendev->evtchndev);
|
||||
- }
|
||||
- if (xendev->gnttabdev != NULL) {
|
||||
- xengnttab_close(xendev->gnttabdev);
|
||||
- }
|
||||
+ if (xendev->fe) {
|
||||
+ char token[XEN_BUFSIZE];
|
||||
+ snprintf(token, sizeof(token), "fe:%p", xendev);
|
||||
+ xs_unwatch(xenstore, xendev->fe, token);
|
||||
+ g_free(xendev->fe);
|
||||
+ }
|
||||
|
||||
- QTAILQ_REMOVE(&xendevs, xendev, next);
|
||||
- g_free(xendev);
|
||||
+ if (xendev->evtchndev != NULL) {
|
||||
+ xenevtchn_close(xendev->evtchndev);
|
||||
}
|
||||
- return NULL;
|
||||
+ if (xendev->gnttabdev != NULL) {
|
||||
+ xengnttab_close(xendev->gnttabdev);
|
||||
+ }
|
||||
+
|
||||
+ QTAILQ_REMOVE(&xendevs, xendev, next);
|
||||
+ g_free(xendev);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -683,7 +663,7 @@ static void xenstore_update_be(char *watch, char *type, int dom,
|
||||
if (xendev != NULL) {
|
||||
bepath = xs_read(xenstore, 0, xendev->be, &len);
|
||||
if (bepath == NULL) {
|
||||
- xen_be_del_xendev(dom, dev);
|
||||
+ xen_be_del_xendev(xendev);
|
||||
} else {
|
||||
free(bepath);
|
||||
xen_be_backend_changed(xendev, path);
|
210
0073-xen-drain-submit-queue-in-xen-usb-b.patch
Normal file
210
0073-xen-drain-submit-queue-in-xen-usb-b.patch
Normal file
@ -0,0 +1,210 @@
|
||||
From afb94bcc5bbb8b58f8c96821caaab268f96cabdb Mon Sep 17 00:00:00 2001
|
||||
From: Juergen Gross <jgross@suse.com>
|
||||
Date: Wed, 27 Jul 2016 08:17:41 +0200
|
||||
Subject: [PATCH] xen: drain submit queue in xen-usb before removing device
|
||||
|
||||
When unplugging a device in the Xen pvusb backend drain the submit
|
||||
queue before deallocation of the control structures. Otherwise there
|
||||
will be bogus memory accesses when I/O contracts are finished.
|
||||
|
||||
Correlated to this issue is the handling of cancel requests: a packet
|
||||
cancelled will still lead to the call of complete, so add a flag
|
||||
to the request indicating it should be just dropped on complete.
|
||||
|
||||
Signed-off-by: Juergen Gross <jgross@suse.com>
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/usb/xen-usb.c | 95 ++++++++++++++++++++++++++++++++++++--------------------
|
||||
1 file changed, 61 insertions(+), 34 deletions(-)
|
||||
|
||||
diff --git a/hw/usb/xen-usb.c b/hw/usb/xen-usb.c
|
||||
index 664df04..6f4b99d 100644
|
||||
--- a/hw/usb/xen-usb.c
|
||||
+++ b/hw/usb/xen-usb.c
|
||||
@@ -94,6 +94,8 @@ struct usbback_req {
|
||||
void *buffer;
|
||||
void *isoc_buffer;
|
||||
struct libusb_transfer *xfer;
|
||||
+
|
||||
+ bool cancelled;
|
||||
};
|
||||
|
||||
struct usbback_hotplug {
|
||||
@@ -304,20 +306,23 @@ static void usbback_do_response(struct usbback_req *usbback_req, int32_t status,
|
||||
usbback_req->isoc_buffer = NULL;
|
||||
}
|
||||
|
||||
- res = RING_GET_RESPONSE(&usbif->urb_ring, usbif->urb_ring.rsp_prod_pvt);
|
||||
- res->id = usbback_req->req.id;
|
||||
- res->status = status;
|
||||
- res->actual_length = actual_length;
|
||||
- res->error_count = error_count;
|
||||
- res->start_frame = 0;
|
||||
- usbif->urb_ring.rsp_prod_pvt++;
|
||||
- RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&usbif->urb_ring, notify);
|
||||
-
|
||||
- if (notify) {
|
||||
- xen_be_send_notify(xendev);
|
||||
+ if (usbif->urb_sring) {
|
||||
+ res = RING_GET_RESPONSE(&usbif->urb_ring, usbif->urb_ring.rsp_prod_pvt);
|
||||
+ res->id = usbback_req->req.id;
|
||||
+ res->status = status;
|
||||
+ res->actual_length = actual_length;
|
||||
+ res->error_count = error_count;
|
||||
+ res->start_frame = 0;
|
||||
+ usbif->urb_ring.rsp_prod_pvt++;
|
||||
+ RING_PUSH_RESPONSES_AND_CHECK_NOTIFY(&usbif->urb_ring, notify);
|
||||
+
|
||||
+ if (notify) {
|
||||
+ xen_be_send_notify(xendev);
|
||||
+ }
|
||||
}
|
||||
|
||||
- usbback_put_req(usbback_req);
|
||||
+ if (!usbback_req->cancelled)
|
||||
+ usbback_put_req(usbback_req);
|
||||
}
|
||||
|
||||
static void usbback_do_response_ret(struct usbback_req *usbback_req,
|
||||
@@ -369,15 +374,14 @@ static void usbback_set_address(struct usbback_info *usbif,
|
||||
}
|
||||
}
|
||||
|
||||
-static bool usbback_cancel_req(struct usbback_req *usbback_req)
|
||||
+static void usbback_cancel_req(struct usbback_req *usbback_req)
|
||||
{
|
||||
- bool ret = false;
|
||||
-
|
||||
if (usb_packet_is_inflight(&usbback_req->packet)) {
|
||||
usb_cancel_packet(&usbback_req->packet);
|
||||
- ret = true;
|
||||
+ QTAILQ_REMOVE(&usbback_req->stub->submit_q, usbback_req, q);
|
||||
+ usbback_req->cancelled = true;
|
||||
+ usbback_do_response_ret(usbback_req, -EPROTO);
|
||||
}
|
||||
- return ret;
|
||||
}
|
||||
|
||||
static void usbback_process_unlink_req(struct usbback_req *usbback_req)
|
||||
@@ -394,7 +398,7 @@ static void usbback_process_unlink_req(struct usbback_req *usbback_req)
|
||||
devnum = usbif_pipedevice(usbback_req->req.pipe);
|
||||
if (unlikely(devnum == 0)) {
|
||||
usbback_req->stub = usbif->ports +
|
||||
- usbif_pipeportnum(usbback_req->req.pipe);
|
||||
+ usbif_pipeportnum(usbback_req->req.pipe) - 1;
|
||||
if (unlikely(!usbback_req->stub)) {
|
||||
ret = -ENODEV;
|
||||
goto fail_response;
|
||||
@@ -409,9 +413,7 @@ static void usbback_process_unlink_req(struct usbback_req *usbback_req)
|
||||
|
||||
QTAILQ_FOREACH(unlink_req, &usbback_req->stub->submit_q, q) {
|
||||
if (unlink_req->req.id == id) {
|
||||
- if (usbback_cancel_req(unlink_req)) {
|
||||
- usbback_do_response_ret(unlink_req, -EPROTO);
|
||||
- }
|
||||
+ usbback_cancel_req(unlink_req);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -684,6 +686,31 @@ static void usbback_hotplug_enq(struct usbback_info *usbif, unsigned port)
|
||||
usbback_hotplug_notify(usbif);
|
||||
}
|
||||
|
||||
+static void usbback_portid_drain(struct usbback_info *usbif, unsigned port)
|
||||
+{
|
||||
+ struct usbback_req *req, *tmp;
|
||||
+ bool sched = false;
|
||||
+
|
||||
+ QTAILQ_FOREACH_SAFE(req, &usbif->ports[port - 1].submit_q, q, tmp) {
|
||||
+ usbback_cancel_req(req);
|
||||
+ sched = true;
|
||||
+ }
|
||||
+
|
||||
+ if (sched)
|
||||
+ qemu_bh_schedule(usbif->bh);
|
||||
+}
|
||||
+
|
||||
+static void usbback_portid_detach(struct usbback_info *usbif, unsigned port)
|
||||
+{
|
||||
+ if (!usbif->ports[port - 1].attached)
|
||||
+ return;
|
||||
+
|
||||
+ usbif->ports[port - 1].speed = USBIF_SPEED_NONE;
|
||||
+ usbif->ports[port - 1].attached = false;
|
||||
+ usbback_portid_drain(usbif, port);
|
||||
+ usbback_hotplug_enq(usbif, port);
|
||||
+}
|
||||
+
|
||||
static void usbback_portid_remove(struct usbback_info *usbif, unsigned port)
|
||||
{
|
||||
USBPort *p;
|
||||
@@ -697,9 +724,7 @@ static void usbback_portid_remove(struct usbback_info *usbif, unsigned port)
|
||||
|
||||
object_unparent(OBJECT(usbif->ports[port - 1].dev));
|
||||
usbif->ports[port - 1].dev = NULL;
|
||||
- usbif->ports[port - 1].speed = USBIF_SPEED_NONE;
|
||||
- usbif->ports[port - 1].attached = false;
|
||||
- usbback_hotplug_enq(usbif, port);
|
||||
+ usbback_portid_detach(usbif, port);
|
||||
|
||||
TR_BUS(&usbif->xendev, "port %d removed\n", port);
|
||||
}
|
||||
@@ -804,7 +829,6 @@ static void usbback_process_port(struct usbback_info *usbif, unsigned port)
|
||||
static void usbback_disconnect(struct XenDevice *xendev)
|
||||
{
|
||||
struct usbback_info *usbif;
|
||||
- struct usbback_req *req, *tmp;
|
||||
unsigned int i;
|
||||
|
||||
TR_BUS(xendev, "start\n");
|
||||
@@ -823,12 +847,8 @@ static void usbback_disconnect(struct XenDevice *xendev)
|
||||
}
|
||||
|
||||
for (i = 0; i < usbif->num_ports; i++) {
|
||||
- if (!usbif->ports[i].dev) {
|
||||
- continue;
|
||||
- }
|
||||
- QTAILQ_FOREACH_SAFE(req, &usbif->ports[i].submit_q, q, tmp) {
|
||||
- usbback_cancel_req(req);
|
||||
- }
|
||||
+ if (usbif->ports[i].dev)
|
||||
+ usbback_portid_drain(usbif, i + 1);
|
||||
}
|
||||
|
||||
TR_BUS(xendev, "finished\n");
|
||||
@@ -947,8 +967,7 @@ static void xen_bus_detach(USBPort *port)
|
||||
|
||||
usbif = port->opaque;
|
||||
TR_BUS(&usbif->xendev, "\n");
|
||||
- usbif->ports[port->index].attached = false;
|
||||
- usbback_hotplug_enq(usbif, port->index + 1);
|
||||
+ usbback_portid_detach(usbif, port->index + 1);
|
||||
}
|
||||
|
||||
static void xen_bus_child_detach(USBPort *port, USBDevice *child)
|
||||
@@ -961,9 +980,16 @@ static void xen_bus_child_detach(USBPort *port, USBDevice *child)
|
||||
|
||||
static void xen_bus_complete(USBPort *port, USBPacket *packet)
|
||||
{
|
||||
+ struct usbback_req *usbback_req;
|
||||
struct usbback_info *usbif;
|
||||
|
||||
- usbif = port->opaque;
|
||||
+ usbback_req = container_of(packet, struct usbback_req, packet);
|
||||
+ if (usbback_req->cancelled) {
|
||||
+ g_free(usbback_req);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ usbif = usbback_req->usbif;
|
||||
TR_REQ(&usbif->xendev, "\n");
|
||||
usbback_packet_complete(packet);
|
||||
}
|
||||
@@ -1040,6 +1066,7 @@ static int usbback_free(struct XenDevice *xendev)
|
||||
}
|
||||
|
||||
usb_bus_release(&usbif->bus);
|
||||
+ object_unparent(OBJECT(&usbif->bus));
|
||||
|
||||
TR_BUS(xendev, "finished\n");
|
||||
|
104
0074-qcow2-avoid-extra-flushes-in-qcow2.patch
Normal file
104
0074-qcow2-avoid-extra-flushes-in-qcow2.patch
Normal file
@ -0,0 +1,104 @@
|
||||
From 197d526012602fbac75392a86e991539e4400bf0 Mon Sep 17 00:00:00 2001
|
||||
From: "Denis V. Lunev" <den@openvz.org>
|
||||
Date: Thu, 2 Jun 2016 18:58:15 +0300
|
||||
Subject: [PATCH] qcow2: avoid extra flushes in qcow2
|
||||
|
||||
The problem with excessive flushing was found by a couple of performance
|
||||
tests:
|
||||
- parallel directory tree creation (from 2 processes)
|
||||
- 32 cached writes + fsync at the end in a loop
|
||||
|
||||
For the first one results improved from 2.6 loops/sec to 3.5 loops/sec.
|
||||
Each loop creates 10^3 directories with 10 files in each.
|
||||
|
||||
For the second one results improved from ~600 fsync/sec to ~1100
|
||||
fsync/sec. Though, it was run on SSD so it probably won't show such
|
||||
performance gain on rotational media.
|
||||
|
||||
qcow2_cache_flush() calls bdrv_flush() unconditionally after writing
|
||||
cache entries of a particular cache. This can lead to as many as
|
||||
2 additional fdatasyncs inside bdrv_flush.
|
||||
|
||||
We can simply skip all fdatasync calls inside qcow2_co_flush_to_os
|
||||
as bdrv_flush for sure will do the job. These flushes are necessary to
|
||||
keep the right order of writes to the different caches. Though this is
|
||||
not necessary in the current code base as this ordering is ensured through
|
||||
the flush in qcow2_cache_flush_dependency().
|
||||
|
||||
Signed-off-by: Denis V. Lunev <den@openvz.org>
|
||||
CC: Pavel Borzenkov <pborzenkov@virtuozzo.com>
|
||||
CC: Kevin Wolf <kwolf@redhat.com>
|
||||
CC: Max Reitz <mreitz@redhat.com>
|
||||
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
|
||||
(cherry picked from commit f3c3b87dae44ac6c82246ceb3953793951800a9a)
|
||||
[BR: BSC#991296]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
block/qcow2-cache.c | 11 +++++++++--
|
||||
block/qcow2.c | 4 ++--
|
||||
block/qcow2.h | 1 +
|
||||
3 files changed, 12 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/block/qcow2-cache.c b/block/qcow2-cache.c
|
||||
index 0fe8eda..208a060 100644
|
||||
--- a/block/qcow2-cache.c
|
||||
+++ b/block/qcow2-cache.c
|
||||
@@ -226,7 +226,7 @@ static int qcow2_cache_entry_flush(BlockDriverState *bs, Qcow2Cache *c, int i)
|
||||
return 0;
|
||||
}
|
||||
|
||||
-int qcow2_cache_flush(BlockDriverState *bs, Qcow2Cache *c)
|
||||
+int qcow2_cache_write(BlockDriverState *bs, Qcow2Cache *c)
|
||||
{
|
||||
BDRVQcow2State *s = bs->opaque;
|
||||
int result = 0;
|
||||
@@ -242,8 +242,15 @@ int qcow2_cache_flush(BlockDriverState *bs, Qcow2Cache *c)
|
||||
}
|
||||
}
|
||||
|
||||
+ return result;
|
||||
+}
|
||||
+
|
||||
+int qcow2_cache_flush(BlockDriverState *bs, Qcow2Cache *c)
|
||||
+{
|
||||
+ int result = qcow2_cache_write(bs, c);
|
||||
+
|
||||
if (result == 0) {
|
||||
- ret = bdrv_flush(bs->file->bs);
|
||||
+ int ret = bdrv_flush(bs->file->bs);
|
||||
if (ret < 0) {
|
||||
result = ret;
|
||||
}
|
||||
diff --git a/block/qcow2.c b/block/qcow2.c
|
||||
index 470734b..dc609a1 100644
|
||||
--- a/block/qcow2.c
|
||||
+++ b/block/qcow2.c
|
||||
@@ -2774,14 +2774,14 @@ static coroutine_fn int qcow2_co_flush_to_os(BlockDriverState *bs)
|
||||
int ret;
|
||||
|
||||
qemu_co_mutex_lock(&s->lock);
|
||||
- ret = qcow2_cache_flush(bs, s->l2_table_cache);
|
||||
+ ret = qcow2_cache_write(bs, s->l2_table_cache);
|
||||
if (ret < 0) {
|
||||
qemu_co_mutex_unlock(&s->lock);
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (qcow2_need_accurate_refcounts(s)) {
|
||||
- ret = qcow2_cache_flush(bs, s->refcount_block_cache);
|
||||
+ ret = qcow2_cache_write(bs, s->refcount_block_cache);
|
||||
if (ret < 0) {
|
||||
qemu_co_mutex_unlock(&s->lock);
|
||||
return ret;
|
||||
diff --git a/block/qcow2.h b/block/qcow2.h
|
||||
index a063a3c..7db9795 100644
|
||||
--- a/block/qcow2.h
|
||||
+++ b/block/qcow2.h
|
||||
@@ -583,6 +583,7 @@ int qcow2_cache_destroy(BlockDriverState* bs, Qcow2Cache *c);
|
||||
void qcow2_cache_entry_mark_dirty(BlockDriverState *bs, Qcow2Cache *c,
|
||||
void *table);
|
||||
int qcow2_cache_flush(BlockDriverState *bs, Qcow2Cache *c);
|
||||
+int qcow2_cache_write(BlockDriverState *bs, Qcow2Cache *c);
|
||||
int qcow2_cache_set_dependency(BlockDriverState *bs, Qcow2Cache *c,
|
||||
Qcow2Cache *dependency);
|
||||
void qcow2_cache_depends_on_flush(Qcow2Cache *c);
|
83
0075-qemu-bridge-helper-reduce-security-.patch
Normal file
83
0075-qemu-bridge-helper-reduce-security-.patch
Normal file
@ -0,0 +1,83 @@
|
||||
From 4bbd77b07de2f0df2e8a0dba9c4ca51299ee2518 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
|
||||
|
||||
Change from using glib alloc and free routines to those
|
||||
from libc. Also perform safety measure of dropping privs
|
||||
to user if configured no-caps.
|
||||
|
||||
[BR: BOO#988279]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
qemu-bridge-helper.c | 29 ++++++++++++++++++++++++-----
|
||||
1 file changed, 24 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/qemu-bridge-helper.c b/qemu-bridge-helper.c
|
||||
index 830fb9e..73ac49b 100644
|
||||
--- a/qemu-bridge-helper.c
|
||||
+++ b/qemu-bridge-helper.c
|
||||
@@ -15,8 +15,6 @@
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
|
||||
-#include <glib.h>
|
||||
-
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/socket.h>
|
||||
#include <sys/un.h>
|
||||
@@ -111,7 +109,12 @@ static int parse_acl_file(const char *filename, ACLList *acl_list)
|
||||
*argend = 0;
|
||||
|
||||
if (strcmp(cmd, "deny") == 0) {
|
||||
- acl_rule = g_malloc(sizeof(*acl_rule));
|
||||
+ acl_rule = calloc(1, sizeof(*acl_rule));
|
||||
+ if (!acl_rule) {
|
||||
+ fclose(f);
|
||||
+ errno = ENOMEM;
|
||||
+ return -1;
|
||||
+ }
|
||||
if (strcmp(arg, "all") == 0) {
|
||||
acl_rule->type = ACL_DENY_ALL;
|
||||
} else {
|
||||
@@ -120,7 +123,12 @@ static int parse_acl_file(const char *filename, ACLList *acl_list)
|
||||
}
|
||||
QSIMPLEQ_INSERT_TAIL(acl_list, acl_rule, entry);
|
||||
} else if (strcmp(cmd, "allow") == 0) {
|
||||
- acl_rule = g_malloc(sizeof(*acl_rule));
|
||||
+ acl_rule = calloc(1, sizeof(*acl_rule));
|
||||
+ if (!acl_rule) {
|
||||
+ fclose(f);
|
||||
+ errno = ENOMEM;
|
||||
+ return -1;
|
||||
+ }
|
||||
if (strcmp(arg, "all") == 0) {
|
||||
acl_rule->type = ACL_ALLOW_ALL;
|
||||
} else {
|
||||
@@ -414,6 +422,17 @@ int main(int argc, char **argv)
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
+#ifndef CONFIG_LIBCAP
|
||||
+ /* avoid sending the fd as root user if running suid to not fool
|
||||
+ * peer credentials to daemons that dont expect that
|
||||
+ */
|
||||
+ if (setuid(getuid()) < 0) {
|
||||
+ fprintf(stderr, "Failed to drop privileges.\n");
|
||||
+ ret = EXIT_FAILURE;
|
||||
+ goto cleanup;
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
/* write fd to the domain socket */
|
||||
if (send_fd(unixfd, fd) == -1) {
|
||||
fprintf(stderr, "failed to write fd to unix socket: %s\n",
|
||||
@@ -435,7 +454,7 @@ cleanup:
|
||||
}
|
||||
while ((acl_rule = QSIMPLEQ_FIRST(&acl_list)) != NULL) {
|
||||
QSIMPLEQ_REMOVE_HEAD(&acl_list, entry);
|
||||
- g_free(acl_rule);
|
||||
+ free(acl_rule);
|
||||
}
|
||||
|
||||
return ret;
|
95
0076-xen-use-a-common-function-for-pv-an.patch
Normal file
95
0076-xen-use-a-common-function-for-pv-an.patch
Normal file
@ -0,0 +1,95 @@
|
||||
From ddbfdd2c5396aa810a789f5cb681879f78cb693f Mon Sep 17 00:00:00 2001
|
||||
From: Juergen Gross <jgross@suse.com>
|
||||
Date: Tue, 2 Aug 2016 08:32:32 +0200
|
||||
Subject: [PATCH] xen: use a common function for pv and hvm guest backend
|
||||
register calls
|
||||
|
||||
Instead of calling xen_be_register() for each supported backend type
|
||||
for hvm and pv guests in their machine init functions use a common
|
||||
function in order not to have to add new backends twice.
|
||||
|
||||
This at once fixes the error that hvm domains couldn't use the qusb
|
||||
backend.
|
||||
|
||||
Signed-off-by: Juergen Gross <jgross@suse.com>
|
||||
Acked-by: Anthony PERARD <anthony.perard@citrix.com>
|
||||
Message-id: 1470119552-16170-1-git-send-email-jgross@suse.com
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
(cherry picked from commit 0e39bb022b5fa8c11964968885f3263c02ce42b0)
|
||||
[BR: BSC#991785]
|
||||
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||
---
|
||||
hw/xen/xen_backend.c | 10 ++++++++++
|
||||
hw/xenpv/xen_machine_pv.c | 7 +------
|
||||
include/hw/xen/xen_backend.h | 1 +
|
||||
xen-hvm.c | 4 +---
|
||||
4 files changed, 13 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/hw/xen/xen_backend.c b/hw/xen/xen_backend.c
|
||||
index 8f347da..f4d302d 100644
|
||||
--- a/hw/xen/xen_backend.c
|
||||
+++ b/hw/xen/xen_backend.c
|
||||
@@ -781,6 +781,16 @@ int xen_be_register(const char *type, struct XenDevOps *ops)
|
||||
return xenstore_scan(type, xen_domid, ops);
|
||||
}
|
||||
|
||||
+void xen_be_register_common(void)
|
||||
+{
|
||||
+ xen_be_register("console", &xen_console_ops);
|
||||
+ xen_be_register("vkbd", &xen_kbdmouse_ops);
|
||||
+ xen_be_register("qdisk", &xen_blkdev_ops);
|
||||
+#ifdef CONFIG_USB_LIBUSB
|
||||
+ xen_be_register("qusb", &xen_usb_ops);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
int xen_be_bind_evtchn(struct XenDevice *xendev)
|
||||
{
|
||||
if (xendev->local_port != -1) {
|
||||
diff --git a/hw/xenpv/xen_machine_pv.c b/hw/xenpv/xen_machine_pv.c
|
||||
index 48f725c..79aef4e 100644
|
||||
--- a/hw/xenpv/xen_machine_pv.c
|
||||
+++ b/hw/xenpv/xen_machine_pv.c
|
||||
@@ -67,14 +67,9 @@ static void xen_init_pv(MachineState *machine)
|
||||
break;
|
||||
}
|
||||
|
||||
- xen_be_register("console", &xen_console_ops);
|
||||
- xen_be_register("vkbd", &xen_kbdmouse_ops);
|
||||
+ xen_be_register_common();
|
||||
xen_be_register("vfb", &xen_framebuffer_ops);
|
||||
- xen_be_register("qdisk", &xen_blkdev_ops);
|
||||
xen_be_register("qnic", &xen_netdev_ops);
|
||||
-#ifdef CONFIG_USB_LIBUSB
|
||||
- xen_be_register("qusb", &xen_usb_ops);
|
||||
-#endif
|
||||
|
||||
/* configure framebuffer */
|
||||
if (xenfb_enabled) {
|
||||
diff --git a/include/hw/xen/xen_backend.h b/include/hw/xen/xen_backend.h
|
||||
index 6e18a46..0e9af28 100644
|
||||
--- a/include/hw/xen/xen_backend.h
|
||||
+++ b/include/hw/xen/xen_backend.h
|
||||
@@ -87,6 +87,7 @@ void xen_be_check_state(struct XenDevice *xendev);
|
||||
|
||||
/* xen backend driver bits */
|
||||
int xen_be_init(void);
|
||||
+void xen_be_register_common(void);
|
||||
int xen_be_register(const char *type, struct XenDevOps *ops);
|
||||
int xen_be_set_state(struct XenDevice *xendev, enum xenbus_state state);
|
||||
int xen_be_bind_evtchn(struct XenDevice *xendev);
|
||||
diff --git a/xen-hvm.c b/xen-hvm.c
|
||||
index 039680a..93c958a 100644
|
||||
--- a/xen-hvm.c
|
||||
+++ b/xen-hvm.c
|
||||
@@ -1305,9 +1305,7 @@ void xen_hvm_init(PCMachineState *pcms, MemoryRegion **ram_memory)
|
||||
error_report("xen backend core setup failed");
|
||||
goto err;
|
||||
}
|
||||
- xen_be_register("console", &xen_console_ops);
|
||||
- xen_be_register("vkbd", &xen_kbdmouse_ops);
|
||||
- xen_be_register("qdisk", &xen_blkdev_ops);
|
||||
+ xen_be_register_common();
|
||||
xen_read_physmap(state);
|
||||
return;
|
||||
|
@ -1,3 +1,173 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 3 17:09:11 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches dropped:
|
||||
0058-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
* Patches added:
|
||||
0058-xen-move-xen_sysdev-to-xen_backend..patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 3 13:51:47 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches added:
|
||||
0064-xen-SUSE-xenlinux-unplug-for-emulat.patch
|
||||
0065-scsi-esp-check-buffer-length-before.patch
|
||||
0066-scsi-esp-respect-FIFO-invariant-aft.patch
|
||||
0067-pci-assign-Move-Invalid-ROM-error-m.patch
|
||||
0068-Xen-PCI-passthrough-fix-passthrough.patch
|
||||
0069-scsi-esp-make-cmdbuf-big-enough-for.patch
|
||||
0070-scsi-esp-fix-migration.patch
|
||||
0071-virtio-error-out-if-guest-exceeds-v.patch
|
||||
0072-xen-when-removing-a-backend-don-t-r.patch
|
||||
0073-xen-drain-submit-queue-in-xen-usb-b.patch
|
||||
0074-qcow2-avoid-extra-flushes-in-qcow2.patch
|
||||
0075-qemu-bridge-helper-reduce-security-.patch
|
||||
0076-xen-use-a-common-function-for-pv-an.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 28 10:53:18 UTC 2016 - agraf@suse.com
|
||||
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches added:
|
||||
0063-hw-arm-virt-mark-the-PCIe-host-cont.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 14 19:38:39 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches added:
|
||||
0061-configure-add-echo_version-helper.patch
|
||||
0062-configure-support-vte-2.91.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 7 16:16:40 UTC 2016 - agraf@suse.com
|
||||
|
||||
- Remove deprecated patch "work-around-SA_RESTART-race" (boo#982208)
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches dropped:
|
||||
0002-XXX-work-around-SA_RESTART-race-wit.patch
|
||||
0003-qemu-0.9.0.cvs-binfmt.patch
|
||||
0004-qemu-cvs-alsa_bitfield.patch
|
||||
0005-qemu-cvs-alsa_ioctl.patch
|
||||
0006-qemu-cvs-alsa_mmap.patch
|
||||
0007-qemu-cvs-gettimeofday.patch
|
||||
0008-qemu-cvs-ioctl_debug.patch
|
||||
0009-qemu-cvs-ioctl_nodirection.patch
|
||||
0010-block-vmdk-Support-creation-of-SCSI.patch
|
||||
0011-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
0012-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
0013-linux-user-fix-segfault-deadlock.patch
|
||||
0014-linux-user-binfmt-support-host-bina.patch
|
||||
0015-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
0016-linux-user-lock-tcg.patch
|
||||
0017-linux-user-Run-multi-threaded-code-.patch
|
||||
0018-linux-user-lock-tb-flushing-too.patch
|
||||
0019-linux-user-Fake-proc-cpuinfo.patch
|
||||
0020-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
0021-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
0022-linux-user-XXX-disable-fiemap.patch
|
||||
0023-slirp-nooutgoing.patch
|
||||
0024-vnc-password-file-and-incoming-conn.patch
|
||||
0025-linux-user-add-more-blk-ioctls.patch
|
||||
0026-linux-user-use-target_ulong.patch
|
||||
0027-block-Add-support-for-DictZip-enabl.patch
|
||||
0028-block-Add-tar-container-format.patch
|
||||
0029-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
0030-console-add-question-mark-escape-op.patch
|
||||
0031-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
0032-linux-user-lseek-explicitly-cast-no.patch
|
||||
0033-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
0034-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
0035-qtest-Increase-socket-timeout.patch
|
||||
0036-AIO-Reduce-number-of-threads-for-32.patch
|
||||
0037-configure-Enable-libseccomp-for-ppc.patch
|
||||
0038-dictzip-Fix-on-big-endian-systems.patch
|
||||
0039-block-split-large-discard-requests-.patch
|
||||
0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||
0041-build-link-with-libatomic-on-powerp.patch
|
||||
0042-net-mipsnet-check-packet-length-aga.patch
|
||||
0043-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
0044-esp-check-command-buffer-length-bef.patch
|
||||
0045-esp-check-dma-length-before-reading.patch
|
||||
0046-scsi-pvscsi-check-command-descripto.patch
|
||||
0047-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
0048-vga-add-sr_vbe-register-set.patch
|
||||
0049-scsi-megasas-use-appropriate-proper.patch
|
||||
0050-scsi-megasas-check-read_queue_head-.patch
|
||||
0051-scsi-megasas-null-terminate-bios-ve.patch
|
||||
0052-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
0053-vmsvga-don-t-process-more-than-1024.patch
|
||||
0054-block-iscsi-avoid-potential-overflo.patch
|
||||
0055-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
0056-xen-introduce-dummy-system-device.patch
|
||||
0057-xen-write-information-about-support.patch
|
||||
0058-xen-add-pvUSB-backend.patch
|
||||
0059-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
0060-vnc-add-configurable-keyboard-delay.patch
|
||||
0061-scsi-megasas-initialise-local-confi.patch
|
||||
* Patches added:
|
||||
0002-qemu-0.9.0.cvs-binfmt.patch
|
||||
0003-qemu-cvs-alsa_bitfield.patch
|
||||
0004-qemu-cvs-alsa_ioctl.patch
|
||||
0005-qemu-cvs-alsa_mmap.patch
|
||||
0006-qemu-cvs-gettimeofday.patch
|
||||
0007-qemu-cvs-ioctl_debug.patch
|
||||
0008-qemu-cvs-ioctl_nodirection.patch
|
||||
0009-block-vmdk-Support-creation-of-SCSI.patch
|
||||
0010-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
0011-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
0012-linux-user-fix-segfault-deadlock.patch
|
||||
0013-linux-user-binfmt-support-host-bina.patch
|
||||
0014-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
0015-linux-user-lock-tcg.patch
|
||||
0016-linux-user-Run-multi-threaded-code-.patch
|
||||
0017-linux-user-lock-tb-flushing-too.patch
|
||||
0018-linux-user-Fake-proc-cpuinfo.patch
|
||||
0019-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
0020-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
0021-linux-user-XXX-disable-fiemap.patch
|
||||
0022-slirp-nooutgoing.patch
|
||||
0023-vnc-password-file-and-incoming-conn.patch
|
||||
0024-linux-user-add-more-blk-ioctls.patch
|
||||
0025-linux-user-use-target_ulong.patch
|
||||
0026-block-Add-support-for-DictZip-enabl.patch
|
||||
0027-block-Add-tar-container-format.patch
|
||||
0028-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
0029-console-add-question-mark-escape-op.patch
|
||||
0030-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
0031-linux-user-lseek-explicitly-cast-no.patch
|
||||
0032-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
0033-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
0034-qtest-Increase-socket-timeout.patch
|
||||
0035-AIO-Reduce-number-of-threads-for-32.patch
|
||||
0036-configure-Enable-libseccomp-for-ppc.patch
|
||||
0037-dictzip-Fix-on-big-endian-systems.patch
|
||||
0038-block-split-large-discard-requests-.patch
|
||||
0039-xen_disk-Add-suse-specific-flush-di.patch
|
||||
0040-build-link-with-libatomic-on-powerp.patch
|
||||
0041-net-mipsnet-check-packet-length-aga.patch
|
||||
0042-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
0043-esp-check-command-buffer-length-bef.patch
|
||||
0044-esp-check-dma-length-before-reading.patch
|
||||
0045-scsi-pvscsi-check-command-descripto.patch
|
||||
0046-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
0047-vga-add-sr_vbe-register-set.patch
|
||||
0048-scsi-megasas-use-appropriate-proper.patch
|
||||
0049-scsi-megasas-check-read_queue_head-.patch
|
||||
0050-scsi-megasas-null-terminate-bios-ve.patch
|
||||
0051-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
0052-vmsvga-don-t-process-more-than-1024.patch
|
||||
0053-block-iscsi-avoid-potential-overflo.patch
|
||||
0054-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
0055-xen-introduce-dummy-system-device.patch
|
||||
0056-xen-write-information-about-support.patch
|
||||
0057-xen-add-pvUSB-backend.patch
|
||||
0058-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
0059-vnc-add-configurable-keyboard-delay.patch
|
||||
0060-scsi-megasas-initialise-local-confi.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 10 20:25:33 UTC 2016 - brogers@suse.com
|
||||
|
||||
|
@ -26,66 +26,81 @@ Release: 0
|
||||
Source: http://wiki.qemu.org/download/qemu-2.6.0.tar.bz2
|
||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
|
||||
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
|
||||
Patch0003: 0003-qemu-0.9.0.cvs-binfmt.patch
|
||||
Patch0004: 0004-qemu-cvs-alsa_bitfield.patch
|
||||
Patch0005: 0005-qemu-cvs-alsa_ioctl.patch
|
||||
Patch0006: 0006-qemu-cvs-alsa_mmap.patch
|
||||
Patch0007: 0007-qemu-cvs-gettimeofday.patch
|
||||
Patch0008: 0008-qemu-cvs-ioctl_debug.patch
|
||||
Patch0009: 0009-qemu-cvs-ioctl_nodirection.patch
|
||||
Patch0010: 0010-block-vmdk-Support-creation-of-SCSI.patch
|
||||
Patch0011: 0011-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
Patch0012: 0012-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
Patch0013: 0013-linux-user-fix-segfault-deadlock.patch
|
||||
Patch0014: 0014-linux-user-binfmt-support-host-bina.patch
|
||||
Patch0015: 0015-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
Patch0016: 0016-linux-user-lock-tcg.patch
|
||||
Patch0017: 0017-linux-user-Run-multi-threaded-code-.patch
|
||||
Patch0018: 0018-linux-user-lock-tb-flushing-too.patch
|
||||
Patch0019: 0019-linux-user-Fake-proc-cpuinfo.patch
|
||||
Patch0020: 0020-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
Patch0021: 0021-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
Patch0022: 0022-linux-user-XXX-disable-fiemap.patch
|
||||
Patch0023: 0023-slirp-nooutgoing.patch
|
||||
Patch0024: 0024-vnc-password-file-and-incoming-conn.patch
|
||||
Patch0025: 0025-linux-user-add-more-blk-ioctls.patch
|
||||
Patch0026: 0026-linux-user-use-target_ulong.patch
|
||||
Patch0027: 0027-block-Add-support-for-DictZip-enabl.patch
|
||||
Patch0028: 0028-block-Add-tar-container-format.patch
|
||||
Patch0029: 0029-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
Patch0030: 0030-console-add-question-mark-escape-op.patch
|
||||
Patch0031: 0031-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
Patch0032: 0032-linux-user-lseek-explicitly-cast-no.patch
|
||||
Patch0033: 0033-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
Patch0034: 0034-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
Patch0035: 0035-qtest-Increase-socket-timeout.patch
|
||||
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
|
||||
Patch0037: 0037-configure-Enable-libseccomp-for-ppc.patch
|
||||
Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
||||
Patch0039: 0039-block-split-large-discard-requests-.patch
|
||||
Patch0040: 0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||
Patch0041: 0041-build-link-with-libatomic-on-powerp.patch
|
||||
Patch0042: 0042-net-mipsnet-check-packet-length-aga.patch
|
||||
Patch0043: 0043-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
Patch0044: 0044-esp-check-command-buffer-length-bef.patch
|
||||
Patch0045: 0045-esp-check-dma-length-before-reading.patch
|
||||
Patch0046: 0046-scsi-pvscsi-check-command-descripto.patch
|
||||
Patch0047: 0047-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
Patch0048: 0048-vga-add-sr_vbe-register-set.patch
|
||||
Patch0049: 0049-scsi-megasas-use-appropriate-proper.patch
|
||||
Patch0050: 0050-scsi-megasas-check-read_queue_head-.patch
|
||||
Patch0051: 0051-scsi-megasas-null-terminate-bios-ve.patch
|
||||
Patch0052: 0052-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
Patch0053: 0053-vmsvga-don-t-process-more-than-1024.patch
|
||||
Patch0054: 0054-block-iscsi-avoid-potential-overflo.patch
|
||||
Patch0055: 0055-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
Patch0056: 0056-xen-introduce-dummy-system-device.patch
|
||||
Patch0057: 0057-xen-write-information-about-support.patch
|
||||
Patch0058: 0058-xen-add-pvUSB-backend.patch
|
||||
Patch0059: 0059-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
Patch0060: 0060-vnc-add-configurable-keyboard-delay.patch
|
||||
Patch0061: 0061-scsi-megasas-initialise-local-confi.patch
|
||||
Patch0002: 0002-qemu-0.9.0.cvs-binfmt.patch
|
||||
Patch0003: 0003-qemu-cvs-alsa_bitfield.patch
|
||||
Patch0004: 0004-qemu-cvs-alsa_ioctl.patch
|
||||
Patch0005: 0005-qemu-cvs-alsa_mmap.patch
|
||||
Patch0006: 0006-qemu-cvs-gettimeofday.patch
|
||||
Patch0007: 0007-qemu-cvs-ioctl_debug.patch
|
||||
Patch0008: 0008-qemu-cvs-ioctl_nodirection.patch
|
||||
Patch0009: 0009-block-vmdk-Support-creation-of-SCSI.patch
|
||||
Patch0010: 0010-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
Patch0011: 0011-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
Patch0012: 0012-linux-user-fix-segfault-deadlock.patch
|
||||
Patch0013: 0013-linux-user-binfmt-support-host-bina.patch
|
||||
Patch0014: 0014-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
Patch0015: 0015-linux-user-lock-tcg.patch
|
||||
Patch0016: 0016-linux-user-Run-multi-threaded-code-.patch
|
||||
Patch0017: 0017-linux-user-lock-tb-flushing-too.patch
|
||||
Patch0018: 0018-linux-user-Fake-proc-cpuinfo.patch
|
||||
Patch0019: 0019-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
Patch0020: 0020-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
Patch0021: 0021-linux-user-XXX-disable-fiemap.patch
|
||||
Patch0022: 0022-slirp-nooutgoing.patch
|
||||
Patch0023: 0023-vnc-password-file-and-incoming-conn.patch
|
||||
Patch0024: 0024-linux-user-add-more-blk-ioctls.patch
|
||||
Patch0025: 0025-linux-user-use-target_ulong.patch
|
||||
Patch0026: 0026-block-Add-support-for-DictZip-enabl.patch
|
||||
Patch0027: 0027-block-Add-tar-container-format.patch
|
||||
Patch0028: 0028-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
Patch0029: 0029-console-add-question-mark-escape-op.patch
|
||||
Patch0030: 0030-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
Patch0031: 0031-linux-user-lseek-explicitly-cast-no.patch
|
||||
Patch0032: 0032-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
Patch0033: 0033-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
Patch0034: 0034-qtest-Increase-socket-timeout.patch
|
||||
Patch0035: 0035-AIO-Reduce-number-of-threads-for-32.patch
|
||||
Patch0036: 0036-configure-Enable-libseccomp-for-ppc.patch
|
||||
Patch0037: 0037-dictzip-Fix-on-big-endian-systems.patch
|
||||
Patch0038: 0038-block-split-large-discard-requests-.patch
|
||||
Patch0039: 0039-xen_disk-Add-suse-specific-flush-di.patch
|
||||
Patch0040: 0040-build-link-with-libatomic-on-powerp.patch
|
||||
Patch0041: 0041-net-mipsnet-check-packet-length-aga.patch
|
||||
Patch0042: 0042-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
Patch0043: 0043-esp-check-command-buffer-length-bef.patch
|
||||
Patch0044: 0044-esp-check-dma-length-before-reading.patch
|
||||
Patch0045: 0045-scsi-pvscsi-check-command-descripto.patch
|
||||
Patch0046: 0046-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
Patch0047: 0047-vga-add-sr_vbe-register-set.patch
|
||||
Patch0048: 0048-scsi-megasas-use-appropriate-proper.patch
|
||||
Patch0049: 0049-scsi-megasas-check-read_queue_head-.patch
|
||||
Patch0050: 0050-scsi-megasas-null-terminate-bios-ve.patch
|
||||
Patch0051: 0051-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
Patch0052: 0052-vmsvga-don-t-process-more-than-1024.patch
|
||||
Patch0053: 0053-block-iscsi-avoid-potential-overflo.patch
|
||||
Patch0054: 0054-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
Patch0055: 0055-xen-introduce-dummy-system-device.patch
|
||||
Patch0056: 0056-xen-write-information-about-support.patch
|
||||
Patch0057: 0057-xen-add-pvUSB-backend.patch
|
||||
Patch0058: 0058-xen-move-xen_sysdev-to-xen_backend..patch
|
||||
Patch0059: 0059-vnc-add-configurable-keyboard-delay.patch
|
||||
Patch0060: 0060-scsi-megasas-initialise-local-confi.patch
|
||||
Patch0061: 0061-configure-add-echo_version-helper.patch
|
||||
Patch0062: 0062-configure-support-vte-2.91.patch
|
||||
Patch0063: 0063-hw-arm-virt-mark-the-PCIe-host-cont.patch
|
||||
Patch0064: 0064-xen-SUSE-xenlinux-unplug-for-emulat.patch
|
||||
Patch0065: 0065-scsi-esp-check-buffer-length-before.patch
|
||||
Patch0066: 0066-scsi-esp-respect-FIFO-invariant-aft.patch
|
||||
Patch0067: 0067-pci-assign-Move-Invalid-ROM-error-m.patch
|
||||
Patch0068: 0068-Xen-PCI-passthrough-fix-passthrough.patch
|
||||
Patch0069: 0069-scsi-esp-make-cmdbuf-big-enough-for.patch
|
||||
Patch0070: 0070-scsi-esp-fix-migration.patch
|
||||
Patch0071: 0071-virtio-error-out-if-guest-exceeds-v.patch
|
||||
Patch0072: 0072-xen-when-removing-a-backend-don-t-r.patch
|
||||
Patch0073: 0073-xen-drain-submit-queue-in-xen-usb-b.patch
|
||||
Patch0074: 0074-qcow2-avoid-extra-flushes-in-qcow2.patch
|
||||
Patch0075: 0075-qemu-bridge-helper-reduce-security-.patch
|
||||
Patch0076: 0076-xen-use-a-common-function-for-pv-an.patch
|
||||
# Please do not add patches manually here, run update_git.sh.
|
||||
# this is to make lint happy
|
||||
Source300: qemu-rpmlintrc
|
||||
@ -200,6 +215,21 @@ run cross-architecture builds.
|
||||
%patch0059 -p1
|
||||
%patch0060 -p1
|
||||
%patch0061 -p1
|
||||
%patch0062 -p1
|
||||
%patch0063 -p1
|
||||
%patch0064 -p1
|
||||
%patch0065 -p1
|
||||
%patch0066 -p1
|
||||
%patch0067 -p1
|
||||
%patch0068 -p1
|
||||
%patch0069 -p1
|
||||
%patch0070 -p1
|
||||
%patch0071 -p1
|
||||
%patch0072 -p1
|
||||
%patch0073 -p1
|
||||
%patch0074 -p1
|
||||
%patch0075 -p1
|
||||
%patch0076 -p1
|
||||
|
||||
%build
|
||||
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
|
||||
|
@ -1,3 +1,220 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 3 21:36:14 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Temporarily disable ceph (rbd) functionality in OBS due to staging
|
||||
issues.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 3 17:09:05 UTC 2016 - brogers@suse.com
|
||||
|
||||
- use upstream solution for building xen-usb.c correctly
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches dropped:
|
||||
0058-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
* Patches added:
|
||||
0058-xen-move-xen_sysdev-to-xen_backend..patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 3 13:51:42 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Incorporate patch carried in Xen's qemu to get same support
|
||||
as Xen switches to use the qemu package (bsc#953339, bsc#953362,
|
||||
bsc#953518, bsc#984981)
|
||||
0064-xen-SUSE-xenlinux-unplug-for-emulat.patch
|
||||
- Fix more potential OOB accesses in 53C9X emulation
|
||||
(CVE-2016-5238 bsc#982959)
|
||||
0065-scsi-esp-check-buffer-length-before.patch
|
||||
0066-scsi-esp-respect-FIFO-invariant-aft.patch
|
||||
- Avoid "Invalid ROM" error message when it is not appropriate
|
||||
(bsc#982927)
|
||||
0067-pci-assign-Move-Invalid-ROM-error-m.patch
|
||||
- Fix failure in Xen HVM PCI passthrough (bsc#981925, bsc#989250)
|
||||
0068-Xen-PCI-passthrough-fix-passthrough.patch
|
||||
- Fix OOB access in 53C9X emulation (CVE-2016-6351 bsc#990835)
|
||||
0069-scsi-esp-make-cmdbuf-big-enough-for.patch
|
||||
0070-scsi-esp-fix-migration.patch
|
||||
- Avoid potential for guest initiated OOM condition in qemu through
|
||||
virtio interface (CVE-2016-5403 bsc#991080)
|
||||
0071-virtio-error-out-if-guest-exceeds-v.patch
|
||||
- Fix potential crashes in qemu from pvusb bugs (bsc#986156)
|
||||
0072-xen-when-removing-a-backend-don-t-r.patch
|
||||
0073-xen-drain-submit-queue-in-xen-usb-b.patch
|
||||
- Avoid unneeded flushes in qcow2 which impact performance (bsc#991296)
|
||||
0074-qcow2-avoid-extra-flushes-in-qcow2.patch
|
||||
- Finally get qemu-bridge-helper the permissions it needs for non-
|
||||
root usage. The kvm group is leveraged to control access. (boo#988279)
|
||||
0075-qemu-bridge-helper-reduce-security-.patch
|
||||
- Fix pvusb not working for HVM guests (bsc#991785)
|
||||
0076-xen-use-a-common-function-for-pv-an.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
- Minor spec file formatting fixes
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 28 10:53:14 UTC 2016 - agraf@suse.com
|
||||
|
||||
- Fix ARM PCIe DMA coherency bug (bsc#991034)
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches added:
|
||||
0063-hw-arm-virt-mark-the-PCIe-host-cont.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 19 20:57:17 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up the udev ifdeffery to cover systemd as well (boo#860275)
|
||||
- Trigger udev rules also under systemd (boo#989655)
|
||||
- Suppress s390x sysctl in chroot
|
||||
- Ignore s390x sysctl failures (agraf)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 14 19:38:39 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Build SLOF for SLE12 now that we have gcc fix (bsc#949000)
|
||||
- Add script for loading kvm module on s390x
|
||||
- Enable seccomp and iscsi support in more configurations
|
||||
- Enable more support for virtio-gpu
|
||||
- Fix /dev/kvm permissions problem with package install and no
|
||||
reboot (bnc#867867)
|
||||
- Remove libtool dependency
|
||||
- Disable more aggressive stack protector for performance reasons
|
||||
- Enable vte to be used again in more configurations (bsc#988855)
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches added:
|
||||
0061-configure-add-echo_version-helper.patch
|
||||
0062-configure-support-vte-2.91.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 14 14:59:37 UTC 2016 - agraf@suse.com
|
||||
|
||||
- Remove deprecated patch "work-around-SA_RESTART-race" (boo#982208)
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches dropped:
|
||||
0002-XXX-work-around-SA_RESTART-race-wit.patch
|
||||
0003-qemu-0.9.0.cvs-binfmt.patch
|
||||
0004-qemu-cvs-alsa_bitfield.patch
|
||||
0005-qemu-cvs-alsa_ioctl.patch
|
||||
0006-qemu-cvs-alsa_mmap.patch
|
||||
0007-qemu-cvs-gettimeofday.patch
|
||||
0008-qemu-cvs-ioctl_debug.patch
|
||||
0009-qemu-cvs-ioctl_nodirection.patch
|
||||
0010-block-vmdk-Support-creation-of-SCSI.patch
|
||||
0011-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
0012-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
0013-linux-user-fix-segfault-deadlock.patch
|
||||
0014-linux-user-binfmt-support-host-bina.patch
|
||||
0015-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
0016-linux-user-lock-tcg.patch
|
||||
0017-linux-user-Run-multi-threaded-code-.patch
|
||||
0018-linux-user-lock-tb-flushing-too.patch
|
||||
0019-linux-user-Fake-proc-cpuinfo.patch
|
||||
0020-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
0021-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
0022-linux-user-XXX-disable-fiemap.patch
|
||||
0023-slirp-nooutgoing.patch
|
||||
0024-vnc-password-file-and-incoming-conn.patch
|
||||
0025-linux-user-add-more-blk-ioctls.patch
|
||||
0026-linux-user-use-target_ulong.patch
|
||||
0027-block-Add-support-for-DictZip-enabl.patch
|
||||
0028-block-Add-tar-container-format.patch
|
||||
0029-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
0030-console-add-question-mark-escape-op.patch
|
||||
0031-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
0032-linux-user-lseek-explicitly-cast-no.patch
|
||||
0033-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
0034-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
0035-qtest-Increase-socket-timeout.patch
|
||||
0036-AIO-Reduce-number-of-threads-for-32.patch
|
||||
0037-configure-Enable-libseccomp-for-ppc.patch
|
||||
0038-dictzip-Fix-on-big-endian-systems.patch
|
||||
0039-block-split-large-discard-requests-.patch
|
||||
0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||
0041-build-link-with-libatomic-on-powerp.patch
|
||||
0042-net-mipsnet-check-packet-length-aga.patch
|
||||
0043-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
0044-esp-check-command-buffer-length-bef.patch
|
||||
0045-esp-check-dma-length-before-reading.patch
|
||||
0046-scsi-pvscsi-check-command-descripto.patch
|
||||
0047-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
0048-vga-add-sr_vbe-register-set.patch
|
||||
0049-scsi-megasas-use-appropriate-proper.patch
|
||||
0050-scsi-megasas-check-read_queue_head-.patch
|
||||
0051-scsi-megasas-null-terminate-bios-ve.patch
|
||||
0052-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
0053-vmsvga-don-t-process-more-than-1024.patch
|
||||
0054-block-iscsi-avoid-potential-overflo.patch
|
||||
0055-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
0056-xen-introduce-dummy-system-device.patch
|
||||
0057-xen-write-information-about-support.patch
|
||||
0058-xen-add-pvUSB-backend.patch
|
||||
0059-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
0060-vnc-add-configurable-keyboard-delay.patch
|
||||
0061-scsi-megasas-initialise-local-confi.patch
|
||||
* Patches added:
|
||||
0002-qemu-0.9.0.cvs-binfmt.patch
|
||||
0003-qemu-cvs-alsa_bitfield.patch
|
||||
0004-qemu-cvs-alsa_ioctl.patch
|
||||
0005-qemu-cvs-alsa_mmap.patch
|
||||
0006-qemu-cvs-gettimeofday.patch
|
||||
0007-qemu-cvs-ioctl_debug.patch
|
||||
0008-qemu-cvs-ioctl_nodirection.patch
|
||||
0009-block-vmdk-Support-creation-of-SCSI.patch
|
||||
0010-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
0011-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
0012-linux-user-fix-segfault-deadlock.patch
|
||||
0013-linux-user-binfmt-support-host-bina.patch
|
||||
0014-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
0015-linux-user-lock-tcg.patch
|
||||
0016-linux-user-Run-multi-threaded-code-.patch
|
||||
0017-linux-user-lock-tb-flushing-too.patch
|
||||
0018-linux-user-Fake-proc-cpuinfo.patch
|
||||
0019-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
0020-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
0021-linux-user-XXX-disable-fiemap.patch
|
||||
0022-slirp-nooutgoing.patch
|
||||
0023-vnc-password-file-and-incoming-conn.patch
|
||||
0024-linux-user-add-more-blk-ioctls.patch
|
||||
0025-linux-user-use-target_ulong.patch
|
||||
0026-block-Add-support-for-DictZip-enabl.patch
|
||||
0027-block-Add-tar-container-format.patch
|
||||
0028-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
0029-console-add-question-mark-escape-op.patch
|
||||
0030-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
0031-linux-user-lseek-explicitly-cast-no.patch
|
||||
0032-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
0033-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
0034-qtest-Increase-socket-timeout.patch
|
||||
0035-AIO-Reduce-number-of-threads-for-32.patch
|
||||
0036-configure-Enable-libseccomp-for-ppc.patch
|
||||
0037-dictzip-Fix-on-big-endian-systems.patch
|
||||
0038-block-split-large-discard-requests-.patch
|
||||
0039-xen_disk-Add-suse-specific-flush-di.patch
|
||||
0040-build-link-with-libatomic-on-powerp.patch
|
||||
0041-net-mipsnet-check-packet-length-aga.patch
|
||||
0042-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
0043-esp-check-command-buffer-length-bef.patch
|
||||
0044-esp-check-dma-length-before-reading.patch
|
||||
0045-scsi-pvscsi-check-command-descripto.patch
|
||||
0046-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
0047-vga-add-sr_vbe-register-set.patch
|
||||
0048-scsi-megasas-use-appropriate-proper.patch
|
||||
0049-scsi-megasas-check-read_queue_head-.patch
|
||||
0050-scsi-megasas-null-terminate-bios-ve.patch
|
||||
0051-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
0052-vmsvga-don-t-process-more-than-1024.patch
|
||||
0053-block-iscsi-avoid-potential-overflo.patch
|
||||
0054-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
0055-xen-introduce-dummy-system-device.patch
|
||||
0056-xen-write-information-about-support.patch
|
||||
0057-xen-add-pvUSB-backend.patch
|
||||
0058-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
0059-vnc-add-configurable-keyboard-delay.patch
|
||||
0060-scsi-megasas-initialise-local-confi.patch
|
||||
- Enable ceph (rbd) support for aarch64
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 12 18:20:24 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Enable ceph (rbd) support
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jul 4 06:20:16 UTC 2016 - glin@suse.com
|
||||
|
||||
|
@ -28,9 +28,7 @@
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
%ifarch ppc64le
|
||||
# Needs a compatible gcc (bsc#949000)
|
||||
# TODO: include 1315 for SLE12 once possible
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
%endif
|
||||
@ -46,6 +44,28 @@
|
||||
%endif
|
||||
%define noarch_supported 1110
|
||||
|
||||
%if 0%{?is_opensuse} == 0
|
||||
%ifarch x86_64
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} > 120100 ) )
|
||||
%define with_rbd 1
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%ifarch aarch64
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120100 )
|
||||
%define with_rbd 1
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320
|
||||
%define with_seccomp 1
|
||||
%endif
|
||||
|
||||
%ifarch %ix86 x86_64
|
||||
%define with_seccomp 1
|
||||
%endif
|
||||
|
||||
Name: qemu-testsuite
|
||||
Url: http://www.qemu.org/
|
||||
Summary: Universal CPU emulator
|
||||
@ -64,69 +84,85 @@ Source6: ksm.service
|
||||
Source7: 60-kvm.x86.rules
|
||||
Source8: 80-qemu-ga.rules
|
||||
Source9: qemu-ga.service
|
||||
Source10: kvm.conf
|
||||
# Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch
|
||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
|
||||
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
|
||||
Patch0003: 0003-qemu-0.9.0.cvs-binfmt.patch
|
||||
Patch0004: 0004-qemu-cvs-alsa_bitfield.patch
|
||||
Patch0005: 0005-qemu-cvs-alsa_ioctl.patch
|
||||
Patch0006: 0006-qemu-cvs-alsa_mmap.patch
|
||||
Patch0007: 0007-qemu-cvs-gettimeofday.patch
|
||||
Patch0008: 0008-qemu-cvs-ioctl_debug.patch
|
||||
Patch0009: 0009-qemu-cvs-ioctl_nodirection.patch
|
||||
Patch0010: 0010-block-vmdk-Support-creation-of-SCSI.patch
|
||||
Patch0011: 0011-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
Patch0012: 0012-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
Patch0013: 0013-linux-user-fix-segfault-deadlock.patch
|
||||
Patch0014: 0014-linux-user-binfmt-support-host-bina.patch
|
||||
Patch0015: 0015-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
Patch0016: 0016-linux-user-lock-tcg.patch
|
||||
Patch0017: 0017-linux-user-Run-multi-threaded-code-.patch
|
||||
Patch0018: 0018-linux-user-lock-tb-flushing-too.patch
|
||||
Patch0019: 0019-linux-user-Fake-proc-cpuinfo.patch
|
||||
Patch0020: 0020-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
Patch0021: 0021-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
Patch0022: 0022-linux-user-XXX-disable-fiemap.patch
|
||||
Patch0023: 0023-slirp-nooutgoing.patch
|
||||
Patch0024: 0024-vnc-password-file-and-incoming-conn.patch
|
||||
Patch0025: 0025-linux-user-add-more-blk-ioctls.patch
|
||||
Patch0026: 0026-linux-user-use-target_ulong.patch
|
||||
Patch0027: 0027-block-Add-support-for-DictZip-enabl.patch
|
||||
Patch0028: 0028-block-Add-tar-container-format.patch
|
||||
Patch0029: 0029-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
Patch0030: 0030-console-add-question-mark-escape-op.patch
|
||||
Patch0031: 0031-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
Patch0032: 0032-linux-user-lseek-explicitly-cast-no.patch
|
||||
Patch0033: 0033-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
Patch0034: 0034-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
Patch0035: 0035-qtest-Increase-socket-timeout.patch
|
||||
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
|
||||
Patch0037: 0037-configure-Enable-libseccomp-for-ppc.patch
|
||||
Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
||||
Patch0039: 0039-block-split-large-discard-requests-.patch
|
||||
Patch0040: 0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||
Patch0041: 0041-build-link-with-libatomic-on-powerp.patch
|
||||
Patch0042: 0042-net-mipsnet-check-packet-length-aga.patch
|
||||
Patch0043: 0043-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
Patch0044: 0044-esp-check-command-buffer-length-bef.patch
|
||||
Patch0045: 0045-esp-check-dma-length-before-reading.patch
|
||||
Patch0046: 0046-scsi-pvscsi-check-command-descripto.patch
|
||||
Patch0047: 0047-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
Patch0048: 0048-vga-add-sr_vbe-register-set.patch
|
||||
Patch0049: 0049-scsi-megasas-use-appropriate-proper.patch
|
||||
Patch0050: 0050-scsi-megasas-check-read_queue_head-.patch
|
||||
Patch0051: 0051-scsi-megasas-null-terminate-bios-ve.patch
|
||||
Patch0052: 0052-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
Patch0053: 0053-vmsvga-don-t-process-more-than-1024.patch
|
||||
Patch0054: 0054-block-iscsi-avoid-potential-overflo.patch
|
||||
Patch0055: 0055-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
Patch0056: 0056-xen-introduce-dummy-system-device.patch
|
||||
Patch0057: 0057-xen-write-information-about-support.patch
|
||||
Patch0058: 0058-xen-add-pvUSB-backend.patch
|
||||
Patch0059: 0059-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
Patch0060: 0060-vnc-add-configurable-keyboard-delay.patch
|
||||
Patch0061: 0061-scsi-megasas-initialise-local-confi.patch
|
||||
Patch0002: 0002-qemu-0.9.0.cvs-binfmt.patch
|
||||
Patch0003: 0003-qemu-cvs-alsa_bitfield.patch
|
||||
Patch0004: 0004-qemu-cvs-alsa_ioctl.patch
|
||||
Patch0005: 0005-qemu-cvs-alsa_mmap.patch
|
||||
Patch0006: 0006-qemu-cvs-gettimeofday.patch
|
||||
Patch0007: 0007-qemu-cvs-ioctl_debug.patch
|
||||
Patch0008: 0008-qemu-cvs-ioctl_nodirection.patch
|
||||
Patch0009: 0009-block-vmdk-Support-creation-of-SCSI.patch
|
||||
Patch0010: 0010-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
Patch0011: 0011-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
Patch0012: 0012-linux-user-fix-segfault-deadlock.patch
|
||||
Patch0013: 0013-linux-user-binfmt-support-host-bina.patch
|
||||
Patch0014: 0014-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
Patch0015: 0015-linux-user-lock-tcg.patch
|
||||
Patch0016: 0016-linux-user-Run-multi-threaded-code-.patch
|
||||
Patch0017: 0017-linux-user-lock-tb-flushing-too.patch
|
||||
Patch0018: 0018-linux-user-Fake-proc-cpuinfo.patch
|
||||
Patch0019: 0019-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
Patch0020: 0020-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
Patch0021: 0021-linux-user-XXX-disable-fiemap.patch
|
||||
Patch0022: 0022-slirp-nooutgoing.patch
|
||||
Patch0023: 0023-vnc-password-file-and-incoming-conn.patch
|
||||
Patch0024: 0024-linux-user-add-more-blk-ioctls.patch
|
||||
Patch0025: 0025-linux-user-use-target_ulong.patch
|
||||
Patch0026: 0026-block-Add-support-for-DictZip-enabl.patch
|
||||
Patch0027: 0027-block-Add-tar-container-format.patch
|
||||
Patch0028: 0028-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
Patch0029: 0029-console-add-question-mark-escape-op.patch
|
||||
Patch0030: 0030-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
Patch0031: 0031-linux-user-lseek-explicitly-cast-no.patch
|
||||
Patch0032: 0032-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
Patch0033: 0033-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
Patch0034: 0034-qtest-Increase-socket-timeout.patch
|
||||
Patch0035: 0035-AIO-Reduce-number-of-threads-for-32.patch
|
||||
Patch0036: 0036-configure-Enable-libseccomp-for-ppc.patch
|
||||
Patch0037: 0037-dictzip-Fix-on-big-endian-systems.patch
|
||||
Patch0038: 0038-block-split-large-discard-requests-.patch
|
||||
Patch0039: 0039-xen_disk-Add-suse-specific-flush-di.patch
|
||||
Patch0040: 0040-build-link-with-libatomic-on-powerp.patch
|
||||
Patch0041: 0041-net-mipsnet-check-packet-length-aga.patch
|
||||
Patch0042: 0042-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
Patch0043: 0043-esp-check-command-buffer-length-bef.patch
|
||||
Patch0044: 0044-esp-check-dma-length-before-reading.patch
|
||||
Patch0045: 0045-scsi-pvscsi-check-command-descripto.patch
|
||||
Patch0046: 0046-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
Patch0047: 0047-vga-add-sr_vbe-register-set.patch
|
||||
Patch0048: 0048-scsi-megasas-use-appropriate-proper.patch
|
||||
Patch0049: 0049-scsi-megasas-check-read_queue_head-.patch
|
||||
Patch0050: 0050-scsi-megasas-null-terminate-bios-ve.patch
|
||||
Patch0051: 0051-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
Patch0052: 0052-vmsvga-don-t-process-more-than-1024.patch
|
||||
Patch0053: 0053-block-iscsi-avoid-potential-overflo.patch
|
||||
Patch0054: 0054-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
Patch0055: 0055-xen-introduce-dummy-system-device.patch
|
||||
Patch0056: 0056-xen-write-information-about-support.patch
|
||||
Patch0057: 0057-xen-add-pvUSB-backend.patch
|
||||
Patch0058: 0058-xen-move-xen_sysdev-to-xen_backend..patch
|
||||
Patch0059: 0059-vnc-add-configurable-keyboard-delay.patch
|
||||
Patch0060: 0060-scsi-megasas-initialise-local-confi.patch
|
||||
Patch0061: 0061-configure-add-echo_version-helper.patch
|
||||
Patch0062: 0062-configure-support-vte-2.91.patch
|
||||
Patch0063: 0063-hw-arm-virt-mark-the-PCIe-host-cont.patch
|
||||
Patch0064: 0064-xen-SUSE-xenlinux-unplug-for-emulat.patch
|
||||
Patch0065: 0065-scsi-esp-check-buffer-length-before.patch
|
||||
Patch0066: 0066-scsi-esp-respect-FIFO-invariant-aft.patch
|
||||
Patch0067: 0067-pci-assign-Move-Invalid-ROM-error-m.patch
|
||||
Patch0068: 0068-Xen-PCI-passthrough-fix-passthrough.patch
|
||||
Patch0069: 0069-scsi-esp-make-cmdbuf-big-enough-for.patch
|
||||
Patch0070: 0070-scsi-esp-fix-migration.patch
|
||||
Patch0071: 0071-virtio-error-out-if-guest-exceeds-v.patch
|
||||
Patch0072: 0072-xen-when-removing-a-backend-don-t-r.patch
|
||||
Patch0073: 0073-xen-drain-submit-queue-in-xen-usb-b.patch
|
||||
Patch0074: 0074-qcow2-avoid-extra-flushes-in-qcow2.patch
|
||||
Patch0075: 0075-qemu-bridge-helper-reduce-security-.patch
|
||||
Patch0076: 0076-xen-use-a-common-function-for-pv-an.patch
|
||||
# Please do not add QEMU patches manually here.
|
||||
# Run update_git.sh to regenerate this queue.
|
||||
|
||||
@ -189,7 +225,7 @@ BuildRequires: libcacard-devel
|
||||
BuildRequires: libcap-devel
|
||||
BuildRequires: libcap-ng-devel
|
||||
BuildRequires: libdrm-devel
|
||||
%if 0%{?suse_version} >= 1320
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: libepoxy-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1310
|
||||
@ -202,7 +238,14 @@ BuildRequires: libgnutls-devel
|
||||
%if 0%{?suse_version} >= 1315
|
||||
BuildRequires: libibverbs-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?with_rbd}
|
||||
%if 0%{?is_opensuse}
|
||||
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
|
||||
@ -225,13 +268,12 @@ BuildRequires: libpulse-devel
|
||||
%if 0%{?suse_version} >= 1315
|
||||
BuildRequires: librdmacm-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?with_seccomp}
|
||||
BuildRequires: libseccomp-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1140
|
||||
BuildRequires: libssh2-devel
|
||||
%endif
|
||||
BuildRequires: libtool
|
||||
%if 0%{?suse_version} > 1310
|
||||
BuildRequires: libusb-1_0-devel
|
||||
%endif
|
||||
@ -240,6 +282,7 @@ BuildRequires: lzo-devel
|
||||
%if 0%{?suse_version} > 1220
|
||||
BuildRequires: makeinfo
|
||||
%endif
|
||||
BuildRequires: Mesa-devel
|
||||
BuildRequires: mozilla-nss-devel
|
||||
BuildRequires: ncurses-devel
|
||||
%if 0%{?build_x86_fw_from_source}
|
||||
@ -267,7 +310,7 @@ BuildRequires: pkgconfig(udev)
|
||||
%if 0%{?sles_version} != 11
|
||||
BuildRequires: usbredir-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1320
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: virglrenderer-devel >= 0.4.1
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1210
|
||||
@ -332,9 +375,12 @@ Suggests: qemu-block-dmg
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
Suggests: qemu-block-gluster
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
Suggests: qemu-block-iscsi
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
Suggests: qemu-block-rbd
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1140
|
||||
Suggests: qemu-block-ssh
|
||||
%endif
|
||||
@ -348,11 +394,11 @@ Recommends: qemu-ksm = %{version}
|
||||
%define x86_64_only_b_f_f {efi-e1000.rom efi-eepro100.rom \
|
||||
efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom}
|
||||
%endif
|
||||
%define built_firmware_files {bios.bin bios-256k.bin \
|
||||
sgabios.bin vgabios.bin vgabios-cirrus.bin \
|
||||
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
|
||||
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
|
||||
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom %{?x86_64_only_b_f_f}}
|
||||
%define built_firmware_files {bios.bin bios-256k.bin sgabios.bin vgabios.bin \
|
||||
vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
|
||||
vgabios-qxl.bin optionrom/linuxboot.bin optionrom/multiboot.bin \
|
||||
optionrom/kvmvapic.bin pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom \
|
||||
pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom %{?x86_64_only_b_f_f}}
|
||||
|
||||
%description
|
||||
QEMU is an extremely well-performing CPU emulator that allows you to
|
||||
@ -533,7 +579,7 @@ This sub-package contains a module for accessing network-based image files
|
||||
over a GlusterFS network connection from qemu-img tool and QEMU system emulation.
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
%package block-iscsi
|
||||
Summary: Universal CPU emulator -- iSCSI block support
|
||||
Group: System/Emulators/PC
|
||||
@ -550,6 +596,23 @@ This sub-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%{?with_rbd}
|
||||
%package block-rbd
|
||||
Summary: Universal CPU emulator -- Ceph (rbd) block support
|
||||
Group: System/Emulators/PC
|
||||
%{qemu_module_conflicts}
|
||||
|
||||
%description block-rbd
|
||||
QEMU is an extremely well-performing CPU emulator that allows you to
|
||||
choose between simulating an entire system and running userspace
|
||||
binaries for different architectures under your native operating
|
||||
system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well
|
||||
as PC and PowerMac systems.
|
||||
|
||||
This sub-package contains a module for accessing ceph (rbd,rados)
|
||||
image files.
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1140
|
||||
%package block-ssh
|
||||
Summary: Universal CPU emulator -- SSH block support
|
||||
@ -573,6 +636,9 @@ Group: System/Emulators/PC
|
||||
Provides: qemu:%_libexecdir/qemu-bridge-helper
|
||||
PreReq: permissions
|
||||
Recommends: qemu-block-curl
|
||||
%if 0%{?with_rbd}
|
||||
Recommends: qemu-block-rbd
|
||||
%endif
|
||||
|
||||
%description tools
|
||||
QEMU is an extremely well-performing CPU emulator that allows you to
|
||||
@ -738,6 +804,21 @@ This package provides a service file for starting and stopping KSM.
|
||||
%patch0059 -p1
|
||||
%patch0060 -p1
|
||||
%patch0061 -p1
|
||||
%patch0062 -p1
|
||||
%patch0063 -p1
|
||||
%patch0064 -p1
|
||||
%patch0065 -p1
|
||||
%patch0066 -p1
|
||||
%patch0067 -p1
|
||||
%patch0068 -p1
|
||||
%patch0069 -p1
|
||||
%patch0070 -p1
|
||||
%patch0071 -p1
|
||||
%patch0072 -p1
|
||||
%patch0073 -p1
|
||||
%patch0074 -p1
|
||||
%patch0075 -p1
|
||||
%patch0076 -p1
|
||||
|
||||
%if %{build_x86_fw_from_source}
|
||||
pushd roms/seabios
|
||||
@ -774,6 +855,7 @@ rm -f pc-bios/slof.bin
|
||||
--libexecdir=%_libexecdir \
|
||||
--localstatedir=%_localstatedir \
|
||||
--extra-cflags="%{optflags}" \
|
||||
--disable-stack-protector \
|
||||
--disable-strip \
|
||||
--with-pkgversion="%(echo '%{distribution}' | sed 's/ (.*)//')" \
|
||||
--enable-system --disable-linux-user \
|
||||
@ -818,7 +900,7 @@ rm -f pc-bios/slof.bin
|
||||
%else
|
||||
--disable-kvm \
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-libiscsi \
|
||||
%else
|
||||
--disable-libiscsi \
|
||||
@ -850,7 +932,14 @@ rm -f pc-bios/slof.bin
|
||||
--enable-numa \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-opengl \
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
--enable-rbd \
|
||||
%else
|
||||
--disable-rbd \
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1315
|
||||
--enable-rdma \
|
||||
%else
|
||||
@ -862,7 +951,7 @@ rm -f pc-bios/slof.bin
|
||||
%else
|
||||
--with-sdlabi=1.2 \
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?with_seccomp}
|
||||
--enable-seccomp \
|
||||
%else
|
||||
--disable-seccomp \
|
||||
@ -892,15 +981,17 @@ rm -f pc-bios/slof.bin
|
||||
--enable-vde \
|
||||
--enable-vhdx \
|
||||
--enable-vhost-net \
|
||||
%if 0%{?suse_version} >= 1320
|
||||
--enable-virglrenderer \
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-virglrenderer \
|
||||
%endif
|
||||
--enable-virtfs \
|
||||
--enable-vnc \
|
||||
--enable-vnc-jpeg \
|
||||
--enable-vnc-png \
|
||||
--enable-vnc-sasl \
|
||||
%if 0%{?suse_version} == 1310 || (0%{?suse_version} == 1315 && 0%{?is_opensuse} == 0)
|
||||
%if 0%{?suse_version} == 1320
|
||||
--disable-vte \
|
||||
%else
|
||||
--enable-vte \
|
||||
%endif
|
||||
%ifarch x86_64
|
||||
@ -910,7 +1001,7 @@ rm -f pc-bios/slof.bin
|
||||
%else
|
||||
--disable-xen \
|
||||
%endif
|
||||
--enable-xfsctl \
|
||||
--enable-xfsctl \
|
||||
|
||||
%if "%{name}" != "qemu-testsuite"
|
||||
|
||||
@ -951,7 +1042,7 @@ for conf in default-configs/*-softmmu.mak; do
|
||||
done
|
||||
|
||||
# Compile the QOM test binary first, so that ...
|
||||
make tests/qom-test %{?_smp_mflags} V=1
|
||||
make tests/qom-test %{?_smp_mflags} V=1
|
||||
# ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379)
|
||||
%if 0%{?suse_version} >= 1310
|
||||
make check-report.html V=1
|
||||
@ -1049,6 +1140,9 @@ install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules
|
||||
%if 0%{?with_systemd}
|
||||
install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/ksm.service
|
||||
install -D -p -m 0644 %{SOURCE9} %{buildroot}%{_unitdir}/qemu-ga.service
|
||||
%ifarch s390x
|
||||
install -D -m 0644 %{SOURCE10} %{buildroot}%{_libexecdir}/modules-load.d/kvm.conf
|
||||
%endif
|
||||
%endif
|
||||
%fdupes -s $RPM_BUILD_ROOT
|
||||
|
||||
@ -1072,17 +1166,20 @@ install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml
|
||||
|
||||
%if %{kvm_available}
|
||||
%post
|
||||
# Do not execute operations affecting host devices while running in a chroot
|
||||
if [ $(stat -L -c "%i" /proc/1/root/) = $(stat -L -c "%i" /) ]; then
|
||||
setfacl --remove-all /dev/kvm &> /dev/null || :
|
||||
%if 0%{?with_systemd}
|
||||
%udev_rules_update
|
||||
%udev_rules_update
|
||||
%_bindir/udevadm trigger || :
|
||||
%else
|
||||
if [ "$(readlink -f /proc/1/root)" = "/" ]; then
|
||||
/sbin/udevadm control --reload-rules || :
|
||||
/sbin/udevadm trigger || :
|
||||
fi
|
||||
%endif
|
||||
%ifarch s390x
|
||||
sysctl vm.allocate_pgste=1
|
||||
sysctl vm.allocate_pgste=1 || :
|
||||
%endif
|
||||
fi
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} >= 1130
|
||||
@ -1146,6 +1243,9 @@ fi
|
||||
%endif
|
||||
%ifarch s390x
|
||||
%{_sysconfdir}/sysctl.d/50-allow-kvm-on-s390x
|
||||
%if 0%{?with_systemd}
|
||||
%_libexecdir/modules-load.d/kvm.conf
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
@ -1232,12 +1332,19 @@ fi
|
||||
%_libdir/%name/block-gluster.so
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
%files block-iscsi
|
||||
%defattr(-, root, root)
|
||||
%_libdir/%name/block-iscsi.so
|
||||
%endif
|
||||
|
||||
%if 0%{?with_rbd}
|
||||
%files block-rbd
|
||||
%defattr(-, root, root)
|
||||
%dir %_libdir/%name
|
||||
%_libdir/%name/block-rbd.so
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1140
|
||||
%files block-ssh
|
||||
%defattr(-, root, root)
|
||||
@ -1295,7 +1402,7 @@ fi
|
||||
%_bindir/qemu-nbd
|
||||
%_bindir/virtfs-proxy-helper
|
||||
#%_bindir/vscclient
|
||||
%verify(not mode) %_libexecdir/qemu-bridge-helper
|
||||
%verify(not mode) %attr(4750,root,kvm) %_libexecdir/qemu-bridge-helper
|
||||
%dir %_sysconfdir/%name
|
||||
%config %_sysconfdir/%name/bridge.conf
|
||||
%dir %_libdir/%name
|
||||
|
217
qemu.changes
217
qemu.changes
@ -1,3 +1,220 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 3 21:36:14 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Temporarily disable ceph (rbd) functionality in OBS due to staging
|
||||
issues.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 3 17:09:05 UTC 2016 - brogers@suse.com
|
||||
|
||||
- use upstream solution for building xen-usb.c correctly
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches dropped:
|
||||
0058-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
* Patches added:
|
||||
0058-xen-move-xen_sysdev-to-xen_backend..patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 3 13:51:42 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Incorporate patch carried in Xen's qemu to get same support
|
||||
as Xen switches to use the qemu package (bsc#953339, bsc#953362,
|
||||
bsc#953518, bsc#984981)
|
||||
0064-xen-SUSE-xenlinux-unplug-for-emulat.patch
|
||||
- Fix more potential OOB accesses in 53C9X emulation
|
||||
(CVE-2016-5238 bsc#982959)
|
||||
0065-scsi-esp-check-buffer-length-before.patch
|
||||
0066-scsi-esp-respect-FIFO-invariant-aft.patch
|
||||
- Avoid "Invalid ROM" error message when it is not appropriate
|
||||
(bsc#982927)
|
||||
0067-pci-assign-Move-Invalid-ROM-error-m.patch
|
||||
- Fix failure in Xen HVM PCI passthrough (bsc#981925, bsc#989250)
|
||||
0068-Xen-PCI-passthrough-fix-passthrough.patch
|
||||
- Fix OOB access in 53C9X emulation (CVE-2016-6351 bsc#990835)
|
||||
0069-scsi-esp-make-cmdbuf-big-enough-for.patch
|
||||
0070-scsi-esp-fix-migration.patch
|
||||
- Avoid potential for guest initiated OOM condition in qemu through
|
||||
virtio interface (CVE-2016-5403 bsc#991080)
|
||||
0071-virtio-error-out-if-guest-exceeds-v.patch
|
||||
- Fix potential crashes in qemu from pvusb bugs (bsc#986156)
|
||||
0072-xen-when-removing-a-backend-don-t-r.patch
|
||||
0073-xen-drain-submit-queue-in-xen-usb-b.patch
|
||||
- Avoid unneeded flushes in qcow2 which impact performance (bsc#991296)
|
||||
0074-qcow2-avoid-extra-flushes-in-qcow2.patch
|
||||
- Finally get qemu-bridge-helper the permissions it needs for non-
|
||||
root usage. The kvm group is leveraged to control access. (boo#988279)
|
||||
0075-qemu-bridge-helper-reduce-security-.patch
|
||||
- Fix pvusb not working for HVM guests (bsc#991785)
|
||||
0076-xen-use-a-common-function-for-pv-an.patch
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
- Minor spec file formatting fixes
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 28 10:53:14 UTC 2016 - agraf@suse.com
|
||||
|
||||
- Fix ARM PCIe DMA coherency bug (bsc#991034)
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches added:
|
||||
0063-hw-arm-virt-mark-the-PCIe-host-cont.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 19 20:57:17 UTC 2016 - afaerber@suse.de
|
||||
|
||||
- Clean up the udev ifdeffery to cover systemd as well (boo#860275)
|
||||
- Trigger udev rules also under systemd (boo#989655)
|
||||
- Suppress s390x sysctl in chroot
|
||||
- Ignore s390x sysctl failures (agraf)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 14 19:38:39 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Build SLOF for SLE12 now that we have gcc fix (bsc#949000)
|
||||
- Add script for loading kvm module on s390x
|
||||
- Enable seccomp and iscsi support in more configurations
|
||||
- Enable more support for virtio-gpu
|
||||
- Fix /dev/kvm permissions problem with package install and no
|
||||
reboot (bnc#867867)
|
||||
- Remove libtool dependency
|
||||
- Disable more aggressive stack protector for performance reasons
|
||||
- Enable vte to be used again in more configurations (bsc#988855)
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches added:
|
||||
0061-configure-add-echo_version-helper.patch
|
||||
0062-configure-support-vte-2.91.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 14 14:59:37 UTC 2016 - agraf@suse.com
|
||||
|
||||
- Remove deprecated patch "work-around-SA_RESTART-race" (boo#982208)
|
||||
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||
* Patches dropped:
|
||||
0002-XXX-work-around-SA_RESTART-race-wit.patch
|
||||
0003-qemu-0.9.0.cvs-binfmt.patch
|
||||
0004-qemu-cvs-alsa_bitfield.patch
|
||||
0005-qemu-cvs-alsa_ioctl.patch
|
||||
0006-qemu-cvs-alsa_mmap.patch
|
||||
0007-qemu-cvs-gettimeofday.patch
|
||||
0008-qemu-cvs-ioctl_debug.patch
|
||||
0009-qemu-cvs-ioctl_nodirection.patch
|
||||
0010-block-vmdk-Support-creation-of-SCSI.patch
|
||||
0011-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
0012-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
0013-linux-user-fix-segfault-deadlock.patch
|
||||
0014-linux-user-binfmt-support-host-bina.patch
|
||||
0015-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
0016-linux-user-lock-tcg.patch
|
||||
0017-linux-user-Run-multi-threaded-code-.patch
|
||||
0018-linux-user-lock-tb-flushing-too.patch
|
||||
0019-linux-user-Fake-proc-cpuinfo.patch
|
||||
0020-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
0021-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
0022-linux-user-XXX-disable-fiemap.patch
|
||||
0023-slirp-nooutgoing.patch
|
||||
0024-vnc-password-file-and-incoming-conn.patch
|
||||
0025-linux-user-add-more-blk-ioctls.patch
|
||||
0026-linux-user-use-target_ulong.patch
|
||||
0027-block-Add-support-for-DictZip-enabl.patch
|
||||
0028-block-Add-tar-container-format.patch
|
||||
0029-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
0030-console-add-question-mark-escape-op.patch
|
||||
0031-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
0032-linux-user-lseek-explicitly-cast-no.patch
|
||||
0033-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
0034-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
0035-qtest-Increase-socket-timeout.patch
|
||||
0036-AIO-Reduce-number-of-threads-for-32.patch
|
||||
0037-configure-Enable-libseccomp-for-ppc.patch
|
||||
0038-dictzip-Fix-on-big-endian-systems.patch
|
||||
0039-block-split-large-discard-requests-.patch
|
||||
0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||
0041-build-link-with-libatomic-on-powerp.patch
|
||||
0042-net-mipsnet-check-packet-length-aga.patch
|
||||
0043-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
0044-esp-check-command-buffer-length-bef.patch
|
||||
0045-esp-check-dma-length-before-reading.patch
|
||||
0046-scsi-pvscsi-check-command-descripto.patch
|
||||
0047-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
0048-vga-add-sr_vbe-register-set.patch
|
||||
0049-scsi-megasas-use-appropriate-proper.patch
|
||||
0050-scsi-megasas-check-read_queue_head-.patch
|
||||
0051-scsi-megasas-null-terminate-bios-ve.patch
|
||||
0052-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
0053-vmsvga-don-t-process-more-than-1024.patch
|
||||
0054-block-iscsi-avoid-potential-overflo.patch
|
||||
0055-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
0056-xen-introduce-dummy-system-device.patch
|
||||
0057-xen-write-information-about-support.patch
|
||||
0058-xen-add-pvUSB-backend.patch
|
||||
0059-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
0060-vnc-add-configurable-keyboard-delay.patch
|
||||
0061-scsi-megasas-initialise-local-confi.patch
|
||||
* Patches added:
|
||||
0002-qemu-0.9.0.cvs-binfmt.patch
|
||||
0003-qemu-cvs-alsa_bitfield.patch
|
||||
0004-qemu-cvs-alsa_ioctl.patch
|
||||
0005-qemu-cvs-alsa_mmap.patch
|
||||
0006-qemu-cvs-gettimeofday.patch
|
||||
0007-qemu-cvs-ioctl_debug.patch
|
||||
0008-qemu-cvs-ioctl_nodirection.patch
|
||||
0009-block-vmdk-Support-creation-of-SCSI.patch
|
||||
0010-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
0011-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
0012-linux-user-fix-segfault-deadlock.patch
|
||||
0013-linux-user-binfmt-support-host-bina.patch
|
||||
0014-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
0015-linux-user-lock-tcg.patch
|
||||
0016-linux-user-Run-multi-threaded-code-.patch
|
||||
0017-linux-user-lock-tb-flushing-too.patch
|
||||
0018-linux-user-Fake-proc-cpuinfo.patch
|
||||
0019-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
0020-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
0021-linux-user-XXX-disable-fiemap.patch
|
||||
0022-slirp-nooutgoing.patch
|
||||
0023-vnc-password-file-and-incoming-conn.patch
|
||||
0024-linux-user-add-more-blk-ioctls.patch
|
||||
0025-linux-user-use-target_ulong.patch
|
||||
0026-block-Add-support-for-DictZip-enabl.patch
|
||||
0027-block-Add-tar-container-format.patch
|
||||
0028-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
0029-console-add-question-mark-escape-op.patch
|
||||
0030-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
0031-linux-user-lseek-explicitly-cast-no.patch
|
||||
0032-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
0033-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
0034-qtest-Increase-socket-timeout.patch
|
||||
0035-AIO-Reduce-number-of-threads-for-32.patch
|
||||
0036-configure-Enable-libseccomp-for-ppc.patch
|
||||
0037-dictzip-Fix-on-big-endian-systems.patch
|
||||
0038-block-split-large-discard-requests-.patch
|
||||
0039-xen_disk-Add-suse-specific-flush-di.patch
|
||||
0040-build-link-with-libatomic-on-powerp.patch
|
||||
0041-net-mipsnet-check-packet-length-aga.patch
|
||||
0042-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
0043-esp-check-command-buffer-length-bef.patch
|
||||
0044-esp-check-dma-length-before-reading.patch
|
||||
0045-scsi-pvscsi-check-command-descripto.patch
|
||||
0046-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
0047-vga-add-sr_vbe-register-set.patch
|
||||
0048-scsi-megasas-use-appropriate-proper.patch
|
||||
0049-scsi-megasas-check-read_queue_head-.patch
|
||||
0050-scsi-megasas-null-terminate-bios-ve.patch
|
||||
0051-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
0052-vmsvga-don-t-process-more-than-1024.patch
|
||||
0053-block-iscsi-avoid-potential-overflo.patch
|
||||
0054-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
0055-xen-introduce-dummy-system-device.patch
|
||||
0056-xen-write-information-about-support.patch
|
||||
0057-xen-add-pvUSB-backend.patch
|
||||
0058-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
0059-vnc-add-configurable-keyboard-delay.patch
|
||||
0060-scsi-megasas-initialise-local-confi.patch
|
||||
- Enable ceph (rbd) support for aarch64
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 12 18:20:24 UTC 2016 - brogers@suse.com
|
||||
|
||||
- Enable ceph (rbd) support
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jul 4 06:20:16 UTC 2016 - glin@suse.com
|
||||
|
||||
|
283
qemu.spec
283
qemu.spec
@ -28,9 +28,7 @@
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
%ifarch ppc64le
|
||||
# Needs a compatible gcc (bsc#949000)
|
||||
# TODO: include 1315 for SLE12 once possible
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
%endif
|
||||
@ -46,6 +44,28 @@
|
||||
%endif
|
||||
%define noarch_supported 1110
|
||||
|
||||
%if 0%{?is_opensuse} == 0
|
||||
%ifarch x86_64
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} > 120100 ) )
|
||||
%define with_rbd 1
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%ifarch aarch64
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120100 )
|
||||
%define with_rbd 1
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320
|
||||
%define with_seccomp 1
|
||||
%endif
|
||||
|
||||
%ifarch %ix86 x86_64
|
||||
%define with_seccomp 1
|
||||
%endif
|
||||
|
||||
Name: qemu
|
||||
Url: http://www.qemu.org/
|
||||
Summary: Universal CPU emulator
|
||||
@ -64,69 +84,85 @@ Source6: ksm.service
|
||||
Source7: 60-kvm.x86.rules
|
||||
Source8: 80-qemu-ga.rules
|
||||
Source9: qemu-ga.service
|
||||
Source10: kvm.conf
|
||||
# Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch
|
||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
|
||||
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
|
||||
Patch0003: 0003-qemu-0.9.0.cvs-binfmt.patch
|
||||
Patch0004: 0004-qemu-cvs-alsa_bitfield.patch
|
||||
Patch0005: 0005-qemu-cvs-alsa_ioctl.patch
|
||||
Patch0006: 0006-qemu-cvs-alsa_mmap.patch
|
||||
Patch0007: 0007-qemu-cvs-gettimeofday.patch
|
||||
Patch0008: 0008-qemu-cvs-ioctl_debug.patch
|
||||
Patch0009: 0009-qemu-cvs-ioctl_nodirection.patch
|
||||
Patch0010: 0010-block-vmdk-Support-creation-of-SCSI.patch
|
||||
Patch0011: 0011-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
Patch0012: 0012-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
Patch0013: 0013-linux-user-fix-segfault-deadlock.patch
|
||||
Patch0014: 0014-linux-user-binfmt-support-host-bina.patch
|
||||
Patch0015: 0015-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
Patch0016: 0016-linux-user-lock-tcg.patch
|
||||
Patch0017: 0017-linux-user-Run-multi-threaded-code-.patch
|
||||
Patch0018: 0018-linux-user-lock-tb-flushing-too.patch
|
||||
Patch0019: 0019-linux-user-Fake-proc-cpuinfo.patch
|
||||
Patch0020: 0020-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
Patch0021: 0021-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
Patch0022: 0022-linux-user-XXX-disable-fiemap.patch
|
||||
Patch0023: 0023-slirp-nooutgoing.patch
|
||||
Patch0024: 0024-vnc-password-file-and-incoming-conn.patch
|
||||
Patch0025: 0025-linux-user-add-more-blk-ioctls.patch
|
||||
Patch0026: 0026-linux-user-use-target_ulong.patch
|
||||
Patch0027: 0027-block-Add-support-for-DictZip-enabl.patch
|
||||
Patch0028: 0028-block-Add-tar-container-format.patch
|
||||
Patch0029: 0029-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
Patch0030: 0030-console-add-question-mark-escape-op.patch
|
||||
Patch0031: 0031-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
Patch0032: 0032-linux-user-lseek-explicitly-cast-no.patch
|
||||
Patch0033: 0033-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
Patch0034: 0034-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
Patch0035: 0035-qtest-Increase-socket-timeout.patch
|
||||
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
|
||||
Patch0037: 0037-configure-Enable-libseccomp-for-ppc.patch
|
||||
Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
||||
Patch0039: 0039-block-split-large-discard-requests-.patch
|
||||
Patch0040: 0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||
Patch0041: 0041-build-link-with-libatomic-on-powerp.patch
|
||||
Patch0042: 0042-net-mipsnet-check-packet-length-aga.patch
|
||||
Patch0043: 0043-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
Patch0044: 0044-esp-check-command-buffer-length-bef.patch
|
||||
Patch0045: 0045-esp-check-dma-length-before-reading.patch
|
||||
Patch0046: 0046-scsi-pvscsi-check-command-descripto.patch
|
||||
Patch0047: 0047-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
Patch0048: 0048-vga-add-sr_vbe-register-set.patch
|
||||
Patch0049: 0049-scsi-megasas-use-appropriate-proper.patch
|
||||
Patch0050: 0050-scsi-megasas-check-read_queue_head-.patch
|
||||
Patch0051: 0051-scsi-megasas-null-terminate-bios-ve.patch
|
||||
Patch0052: 0052-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
Patch0053: 0053-vmsvga-don-t-process-more-than-1024.patch
|
||||
Patch0054: 0054-block-iscsi-avoid-potential-overflo.patch
|
||||
Patch0055: 0055-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
Patch0056: 0056-xen-introduce-dummy-system-device.patch
|
||||
Patch0057: 0057-xen-write-information-about-support.patch
|
||||
Patch0058: 0058-xen-add-pvUSB-backend.patch
|
||||
Patch0059: 0059-usb-Fix-conditions-that-xen-usb.c-i.patch
|
||||
Patch0060: 0060-vnc-add-configurable-keyboard-delay.patch
|
||||
Patch0061: 0061-scsi-megasas-initialise-local-confi.patch
|
||||
Patch0002: 0002-qemu-0.9.0.cvs-binfmt.patch
|
||||
Patch0003: 0003-qemu-cvs-alsa_bitfield.patch
|
||||
Patch0004: 0004-qemu-cvs-alsa_ioctl.patch
|
||||
Patch0005: 0005-qemu-cvs-alsa_mmap.patch
|
||||
Patch0006: 0006-qemu-cvs-gettimeofday.patch
|
||||
Patch0007: 0007-qemu-cvs-ioctl_debug.patch
|
||||
Patch0008: 0008-qemu-cvs-ioctl_nodirection.patch
|
||||
Patch0009: 0009-block-vmdk-Support-creation-of-SCSI.patch
|
||||
Patch0010: 0010-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
Patch0011: 0011-PPC-KVM-Disable-mmu-notifier-check.patch
|
||||
Patch0012: 0012-linux-user-fix-segfault-deadlock.patch
|
||||
Patch0013: 0013-linux-user-binfmt-support-host-bina.patch
|
||||
Patch0014: 0014-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
Patch0015: 0015-linux-user-lock-tcg.patch
|
||||
Patch0016: 0016-linux-user-Run-multi-threaded-code-.patch
|
||||
Patch0017: 0017-linux-user-lock-tb-flushing-too.patch
|
||||
Patch0018: 0018-linux-user-Fake-proc-cpuinfo.patch
|
||||
Patch0019: 0019-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
Patch0020: 0020-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
Patch0021: 0021-linux-user-XXX-disable-fiemap.patch
|
||||
Patch0022: 0022-slirp-nooutgoing.patch
|
||||
Patch0023: 0023-vnc-password-file-and-incoming-conn.patch
|
||||
Patch0024: 0024-linux-user-add-more-blk-ioctls.patch
|
||||
Patch0025: 0025-linux-user-use-target_ulong.patch
|
||||
Patch0026: 0026-block-Add-support-for-DictZip-enabl.patch
|
||||
Patch0027: 0027-block-Add-tar-container-format.patch
|
||||
Patch0028: 0028-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
Patch0029: 0029-console-add-question-mark-escape-op.patch
|
||||
Patch0030: 0030-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
Patch0031: 0031-linux-user-lseek-explicitly-cast-no.patch
|
||||
Patch0032: 0032-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
Patch0033: 0033-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
Patch0034: 0034-qtest-Increase-socket-timeout.patch
|
||||
Patch0035: 0035-AIO-Reduce-number-of-threads-for-32.patch
|
||||
Patch0036: 0036-configure-Enable-libseccomp-for-ppc.patch
|
||||
Patch0037: 0037-dictzip-Fix-on-big-endian-systems.patch
|
||||
Patch0038: 0038-block-split-large-discard-requests-.patch
|
||||
Patch0039: 0039-xen_disk-Add-suse-specific-flush-di.patch
|
||||
Patch0040: 0040-build-link-with-libatomic-on-powerp.patch
|
||||
Patch0041: 0041-net-mipsnet-check-packet-length-aga.patch
|
||||
Patch0042: 0042-i386-kvmvapic-initialise-imm32-vari.patch
|
||||
Patch0043: 0043-esp-check-command-buffer-length-bef.patch
|
||||
Patch0044: 0044-esp-check-dma-length-before-reading.patch
|
||||
Patch0045: 0045-scsi-pvscsi-check-command-descripto.patch
|
||||
Patch0046: 0046-scsi-mptsas-infinite-loop-while-fet.patch
|
||||
Patch0047: 0047-vga-add-sr_vbe-register-set.patch
|
||||
Patch0048: 0048-scsi-megasas-use-appropriate-proper.patch
|
||||
Patch0049: 0049-scsi-megasas-check-read_queue_head-.patch
|
||||
Patch0050: 0050-scsi-megasas-null-terminate-bios-ve.patch
|
||||
Patch0051: 0051-vmsvga-move-fifo-sanity-checks-to-v.patch
|
||||
Patch0052: 0052-vmsvga-don-t-process-more-than-1024.patch
|
||||
Patch0053: 0053-block-iscsi-avoid-potential-overflo.patch
|
||||
Patch0054: 0054-scsi-esp-check-TI-buffer-index-befo.patch
|
||||
Patch0055: 0055-xen-introduce-dummy-system-device.patch
|
||||
Patch0056: 0056-xen-write-information-about-support.patch
|
||||
Patch0057: 0057-xen-add-pvUSB-backend.patch
|
||||
Patch0058: 0058-xen-move-xen_sysdev-to-xen_backend..patch
|
||||
Patch0059: 0059-vnc-add-configurable-keyboard-delay.patch
|
||||
Patch0060: 0060-scsi-megasas-initialise-local-confi.patch
|
||||
Patch0061: 0061-configure-add-echo_version-helper.patch
|
||||
Patch0062: 0062-configure-support-vte-2.91.patch
|
||||
Patch0063: 0063-hw-arm-virt-mark-the-PCIe-host-cont.patch
|
||||
Patch0064: 0064-xen-SUSE-xenlinux-unplug-for-emulat.patch
|
||||
Patch0065: 0065-scsi-esp-check-buffer-length-before.patch
|
||||
Patch0066: 0066-scsi-esp-respect-FIFO-invariant-aft.patch
|
||||
Patch0067: 0067-pci-assign-Move-Invalid-ROM-error-m.patch
|
||||
Patch0068: 0068-Xen-PCI-passthrough-fix-passthrough.patch
|
||||
Patch0069: 0069-scsi-esp-make-cmdbuf-big-enough-for.patch
|
||||
Patch0070: 0070-scsi-esp-fix-migration.patch
|
||||
Patch0071: 0071-virtio-error-out-if-guest-exceeds-v.patch
|
||||
Patch0072: 0072-xen-when-removing-a-backend-don-t-r.patch
|
||||
Patch0073: 0073-xen-drain-submit-queue-in-xen-usb-b.patch
|
||||
Patch0074: 0074-qcow2-avoid-extra-flushes-in-qcow2.patch
|
||||
Patch0075: 0075-qemu-bridge-helper-reduce-security-.patch
|
||||
Patch0076: 0076-xen-use-a-common-function-for-pv-an.patch
|
||||
# Please do not add QEMU patches manually here.
|
||||
# Run update_git.sh to regenerate this queue.
|
||||
|
||||
@ -189,7 +225,7 @@ BuildRequires: libcacard-devel
|
||||
BuildRequires: libcap-devel
|
||||
BuildRequires: libcap-ng-devel
|
||||
BuildRequires: libdrm-devel
|
||||
%if 0%{?suse_version} >= 1320
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: libepoxy-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1310
|
||||
@ -202,7 +238,14 @@ BuildRequires: libgnutls-devel
|
||||
%if 0%{?suse_version} >= 1315
|
||||
BuildRequires: libibverbs-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?with_rbd}
|
||||
%if 0%{?is_opensuse}
|
||||
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
|
||||
@ -225,13 +268,12 @@ BuildRequires: libpulse-devel
|
||||
%if 0%{?suse_version} >= 1315
|
||||
BuildRequires: librdmacm-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?with_seccomp}
|
||||
BuildRequires: libseccomp-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1140
|
||||
BuildRequires: libssh2-devel
|
||||
%endif
|
||||
BuildRequires: libtool
|
||||
%if 0%{?suse_version} > 1310
|
||||
BuildRequires: libusb-1_0-devel
|
||||
%endif
|
||||
@ -240,6 +282,7 @@ BuildRequires: lzo-devel
|
||||
%if 0%{?suse_version} > 1220
|
||||
BuildRequires: makeinfo
|
||||
%endif
|
||||
BuildRequires: Mesa-devel
|
||||
BuildRequires: mozilla-nss-devel
|
||||
BuildRequires: ncurses-devel
|
||||
%if 0%{?build_x86_fw_from_source}
|
||||
@ -267,7 +310,7 @@ BuildRequires: pkgconfig(udev)
|
||||
%if 0%{?sles_version} != 11
|
||||
BuildRequires: usbredir-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1320
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: virglrenderer-devel >= 0.4.1
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1210
|
||||
@ -332,9 +375,12 @@ Suggests: qemu-block-dmg
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
Suggests: qemu-block-gluster
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
Suggests: qemu-block-iscsi
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
Suggests: qemu-block-rbd
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1140
|
||||
Suggests: qemu-block-ssh
|
||||
%endif
|
||||
@ -348,11 +394,11 @@ Recommends: qemu-ksm = %{version}
|
||||
%define x86_64_only_b_f_f {efi-e1000.rom efi-eepro100.rom \
|
||||
efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom}
|
||||
%endif
|
||||
%define built_firmware_files {bios.bin bios-256k.bin \
|
||||
sgabios.bin vgabios.bin vgabios-cirrus.bin \
|
||||
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
|
||||
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
|
||||
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom %{?x86_64_only_b_f_f}}
|
||||
%define built_firmware_files {bios.bin bios-256k.bin sgabios.bin vgabios.bin \
|
||||
vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
|
||||
vgabios-qxl.bin optionrom/linuxboot.bin optionrom/multiboot.bin \
|
||||
optionrom/kvmvapic.bin pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom \
|
||||
pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom %{?x86_64_only_b_f_f}}
|
||||
|
||||
%description
|
||||
QEMU is an extremely well-performing CPU emulator that allows you to
|
||||
@ -533,7 +579,7 @@ This sub-package contains a module for accessing network-based image files
|
||||
over a GlusterFS network connection from qemu-img tool and QEMU system emulation.
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
%package block-iscsi
|
||||
Summary: Universal CPU emulator -- iSCSI block support
|
||||
Group: System/Emulators/PC
|
||||
@ -550,6 +596,23 @@ This sub-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%{?with_rbd}
|
||||
%package block-rbd
|
||||
Summary: Universal CPU emulator -- Ceph (rbd) block support
|
||||
Group: System/Emulators/PC
|
||||
%{qemu_module_conflicts}
|
||||
|
||||
%description block-rbd
|
||||
QEMU is an extremely well-performing CPU emulator that allows you to
|
||||
choose between simulating an entire system and running userspace
|
||||
binaries for different architectures under your native operating
|
||||
system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well
|
||||
as PC and PowerMac systems.
|
||||
|
||||
This sub-package contains a module for accessing ceph (rbd,rados)
|
||||
image files.
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1140
|
||||
%package block-ssh
|
||||
Summary: Universal CPU emulator -- SSH block support
|
||||
@ -573,6 +636,9 @@ Group: System/Emulators/PC
|
||||
Provides: qemu:%_libexecdir/qemu-bridge-helper
|
||||
PreReq: permissions
|
||||
Recommends: qemu-block-curl
|
||||
%if 0%{?with_rbd}
|
||||
Recommends: qemu-block-rbd
|
||||
%endif
|
||||
|
||||
%description tools
|
||||
QEMU is an extremely well-performing CPU emulator that allows you to
|
||||
@ -738,6 +804,21 @@ This package provides a service file for starting and stopping KSM.
|
||||
%patch0059 -p1
|
||||
%patch0060 -p1
|
||||
%patch0061 -p1
|
||||
%patch0062 -p1
|
||||
%patch0063 -p1
|
||||
%patch0064 -p1
|
||||
%patch0065 -p1
|
||||
%patch0066 -p1
|
||||
%patch0067 -p1
|
||||
%patch0068 -p1
|
||||
%patch0069 -p1
|
||||
%patch0070 -p1
|
||||
%patch0071 -p1
|
||||
%patch0072 -p1
|
||||
%patch0073 -p1
|
||||
%patch0074 -p1
|
||||
%patch0075 -p1
|
||||
%patch0076 -p1
|
||||
|
||||
%if %{build_x86_fw_from_source}
|
||||
pushd roms/seabios
|
||||
@ -774,6 +855,7 @@ rm -f pc-bios/slof.bin
|
||||
--libexecdir=%_libexecdir \
|
||||
--localstatedir=%_localstatedir \
|
||||
--extra-cflags="%{optflags}" \
|
||||
--disable-stack-protector \
|
||||
--disable-strip \
|
||||
--with-pkgversion="%(echo '%{distribution}' | sed 's/ (.*)//')" \
|
||||
--enable-system --disable-linux-user \
|
||||
@ -818,7 +900,7 @@ rm -f pc-bios/slof.bin
|
||||
%else
|
||||
--disable-kvm \
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-libiscsi \
|
||||
%else
|
||||
--disable-libiscsi \
|
||||
@ -850,7 +932,14 @@ rm -f pc-bios/slof.bin
|
||||
--enable-numa \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-opengl \
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
--enable-rbd \
|
||||
%else
|
||||
--disable-rbd \
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1315
|
||||
--enable-rdma \
|
||||
%else
|
||||
@ -862,7 +951,7 @@ rm -f pc-bios/slof.bin
|
||||
%else
|
||||
--with-sdlabi=1.2 \
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?with_seccomp}
|
||||
--enable-seccomp \
|
||||
%else
|
||||
--disable-seccomp \
|
||||
@ -892,15 +981,17 @@ rm -f pc-bios/slof.bin
|
||||
--enable-vde \
|
||||
--enable-vhdx \
|
||||
--enable-vhost-net \
|
||||
%if 0%{?suse_version} >= 1320
|
||||
--enable-virglrenderer \
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-virglrenderer \
|
||||
%endif
|
||||
--enable-virtfs \
|
||||
--enable-vnc \
|
||||
--enable-vnc-jpeg \
|
||||
--enable-vnc-png \
|
||||
--enable-vnc-sasl \
|
||||
%if 0%{?suse_version} == 1310 || (0%{?suse_version} == 1315 && 0%{?is_opensuse} == 0)
|
||||
%if 0%{?suse_version} == 1320
|
||||
--disable-vte \
|
||||
%else
|
||||
--enable-vte \
|
||||
%endif
|
||||
%ifarch x86_64
|
||||
@ -910,7 +1001,7 @@ rm -f pc-bios/slof.bin
|
||||
%else
|
||||
--disable-xen \
|
||||
%endif
|
||||
--enable-xfsctl \
|
||||
--enable-xfsctl \
|
||||
|
||||
%if "%{name}" != "qemu-testsuite"
|
||||
|
||||
@ -951,7 +1042,7 @@ for conf in default-configs/*-softmmu.mak; do
|
||||
done
|
||||
|
||||
# Compile the QOM test binary first, so that ...
|
||||
make tests/qom-test %{?_smp_mflags} V=1
|
||||
make tests/qom-test %{?_smp_mflags} V=1
|
||||
# ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379)
|
||||
%if 0%{?suse_version} >= 1310
|
||||
make check-report.html V=1
|
||||
@ -1049,6 +1140,9 @@ install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules
|
||||
%if 0%{?with_systemd}
|
||||
install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/ksm.service
|
||||
install -D -p -m 0644 %{SOURCE9} %{buildroot}%{_unitdir}/qemu-ga.service
|
||||
%ifarch s390x
|
||||
install -D -m 0644 %{SOURCE10} %{buildroot}%{_libexecdir}/modules-load.d/kvm.conf
|
||||
%endif
|
||||
%endif
|
||||
%fdupes -s $RPM_BUILD_ROOT
|
||||
|
||||
@ -1072,17 +1166,20 @@ install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml
|
||||
|
||||
%if %{kvm_available}
|
||||
%post
|
||||
# Do not execute operations affecting host devices while running in a chroot
|
||||
if [ $(stat -L -c "%i" /proc/1/root/) = $(stat -L -c "%i" /) ]; then
|
||||
setfacl --remove-all /dev/kvm &> /dev/null || :
|
||||
%if 0%{?with_systemd}
|
||||
%udev_rules_update
|
||||
%udev_rules_update
|
||||
%_bindir/udevadm trigger || :
|
||||
%else
|
||||
if [ "$(readlink -f /proc/1/root)" = "/" ]; then
|
||||
/sbin/udevadm control --reload-rules || :
|
||||
/sbin/udevadm trigger || :
|
||||
fi
|
||||
%endif
|
||||
%ifarch s390x
|
||||
sysctl vm.allocate_pgste=1
|
||||
sysctl vm.allocate_pgste=1 || :
|
||||
%endif
|
||||
fi
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} >= 1130
|
||||
@ -1146,6 +1243,9 @@ fi
|
||||
%endif
|
||||
%ifarch s390x
|
||||
%{_sysconfdir}/sysctl.d/50-allow-kvm-on-s390x
|
||||
%if 0%{?with_systemd}
|
||||
%_libexecdir/modules-load.d/kvm.conf
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
@ -1232,12 +1332,19 @@ fi
|
||||
%_libdir/%name/block-gluster.so
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
%files block-iscsi
|
||||
%defattr(-, root, root)
|
||||
%_libdir/%name/block-iscsi.so
|
||||
%endif
|
||||
|
||||
%if 0%{?with_rbd}
|
||||
%files block-rbd
|
||||
%defattr(-, root, root)
|
||||
%dir %_libdir/%name
|
||||
%_libdir/%name/block-rbd.so
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1140
|
||||
%files block-ssh
|
||||
%defattr(-, root, root)
|
||||
@ -1295,7 +1402,7 @@ fi
|
||||
%_bindir/qemu-nbd
|
||||
%_bindir/virtfs-proxy-helper
|
||||
#%_bindir/vscclient
|
||||
%verify(not mode) %_libexecdir/qemu-bridge-helper
|
||||
%verify(not mode) %attr(4750,root,kvm) %_libexecdir/qemu-bridge-helper
|
||||
%dir %_sysconfdir/%name
|
||||
%config %_sysconfdir/%name/bridge.conf
|
||||
%dir %_libdir/%name
|
||||
|
133
qemu.spec.in
133
qemu.spec.in
@ -28,9 +28,7 @@
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
%ifarch ppc64le
|
||||
# Needs a compatible gcc (bsc#949000)
|
||||
# TODO: include 1315 for SLE12 once possible
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || 0%{?suse_version} == 1315
|
||||
%define build_slof_from_source 1
|
||||
%endif
|
||||
%endif
|
||||
@ -46,6 +44,28 @@
|
||||
%endif
|
||||
%define noarch_supported 1110
|
||||
|
||||
%if 0%{?is_opensuse} == 0
|
||||
%ifarch x86_64
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && ( 0%{?is_opensuse} == 0 || 0%{?sle_version} > 120100 ) )
|
||||
%define with_rbd 1
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%ifarch aarch64
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120100 )
|
||||
%define with_rbd 1
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320
|
||||
%define with_seccomp 1
|
||||
%endif
|
||||
|
||||
%ifarch %ix86 x86_64
|
||||
%define with_seccomp 1
|
||||
%endif
|
||||
|
||||
Name: qemu
|
||||
Url: http://www.qemu.org/
|
||||
Summary: Universal CPU emulator
|
||||
@ -64,6 +84,7 @@ Source6: ksm.service
|
||||
Source7: 60-kvm.x86.rules
|
||||
Source8: 80-qemu-ga.rules
|
||||
Source9: qemu-ga.service
|
||||
Source10: kvm.conf
|
||||
# Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch
|
||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||
PATCH_FILES
|
||||
@ -129,7 +150,7 @@ BuildRequires: libcacard-devel
|
||||
BuildRequires: libcap-devel
|
||||
BuildRequires: libcap-ng-devel
|
||||
BuildRequires: libdrm-devel
|
||||
%if 0%{?suse_version} >= 1320
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: libepoxy-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1310
|
||||
@ -142,7 +163,14 @@ BuildRequires: libgnutls-devel
|
||||
%if 0%{?suse_version} >= 1315
|
||||
BuildRequires: libibverbs-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?with_rbd}
|
||||
%if 0%{?is_opensuse}
|
||||
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
|
||||
@ -165,13 +193,12 @@ BuildRequires: libpulse-devel
|
||||
%if 0%{?suse_version} >= 1315
|
||||
BuildRequires: librdmacm-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?with_seccomp}
|
||||
BuildRequires: libseccomp-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1140
|
||||
BuildRequires: libssh2-devel
|
||||
%endif
|
||||
BuildRequires: libtool
|
||||
%if 0%{?suse_version} > 1310
|
||||
BuildRequires: libusb-1_0-devel
|
||||
%endif
|
||||
@ -180,6 +207,7 @@ BuildRequires: lzo-devel
|
||||
%if 0%{?suse_version} > 1220
|
||||
BuildRequires: makeinfo
|
||||
%endif
|
||||
BuildRequires: Mesa-devel
|
||||
BuildRequires: mozilla-nss-devel
|
||||
BuildRequires: ncurses-devel
|
||||
%if 0%{?build_x86_fw_from_source}
|
||||
@ -207,7 +235,7 @@ BuildRequires: pkgconfig(udev)
|
||||
%if 0%{?sles_version} != 11
|
||||
BuildRequires: usbredir-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1320
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
BuildRequires: virglrenderer-devel >= 0.4.1
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1210
|
||||
@ -272,9 +300,12 @@ Suggests: qemu-block-dmg
|
||||
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
|
||||
Suggests: qemu-block-gluster
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
Suggests: qemu-block-iscsi
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
Suggests: qemu-block-rbd
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1140
|
||||
Suggests: qemu-block-ssh
|
||||
%endif
|
||||
@ -288,11 +319,11 @@ Recommends: qemu-ksm = %{version}
|
||||
%define x86_64_only_b_f_f {efi-e1000.rom efi-eepro100.rom \
|
||||
efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom}
|
||||
%endif
|
||||
%define built_firmware_files {bios.bin bios-256k.bin \
|
||||
sgabios.bin vgabios.bin vgabios-cirrus.bin \
|
||||
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
|
||||
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
|
||||
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom %{?x86_64_only_b_f_f}}
|
||||
%define built_firmware_files {bios.bin bios-256k.bin sgabios.bin vgabios.bin \
|
||||
vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
|
||||
vgabios-qxl.bin optionrom/linuxboot.bin optionrom/multiboot.bin \
|
||||
optionrom/kvmvapic.bin pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom \
|
||||
pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom %{?x86_64_only_b_f_f}}
|
||||
|
||||
%description
|
||||
QEMU is an extremely well-performing CPU emulator that allows you to
|
||||
@ -473,7 +504,7 @@ This sub-package contains a module for accessing network-based image files
|
||||
over a GlusterFS network connection from qemu-img tool and QEMU system emulation.
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
%package block-iscsi
|
||||
Summary: Universal CPU emulator -- iSCSI block support
|
||||
Group: System/Emulators/PC
|
||||
@ -490,6 +521,23 @@ This sub-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%{?with_rbd}
|
||||
%package block-rbd
|
||||
Summary: Universal CPU emulator -- Ceph (rbd) block support
|
||||
Group: System/Emulators/PC
|
||||
%{qemu_module_conflicts}
|
||||
|
||||
%description block-rbd
|
||||
QEMU is an extremely well-performing CPU emulator that allows you to
|
||||
choose between simulating an entire system and running userspace
|
||||
binaries for different architectures under your native operating
|
||||
system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well
|
||||
as PC and PowerMac systems.
|
||||
|
||||
This sub-package contains a module for accessing ceph (rbd,rados)
|
||||
image files.
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1140
|
||||
%package block-ssh
|
||||
Summary: Universal CPU emulator -- SSH block support
|
||||
@ -513,6 +561,9 @@ Group: System/Emulators/PC
|
||||
Provides: qemu:%_libexecdir/qemu-bridge-helper
|
||||
PreReq: permissions
|
||||
Recommends: qemu-block-curl
|
||||
%if 0%{?with_rbd}
|
||||
Recommends: qemu-block-rbd
|
||||
%endif
|
||||
|
||||
%description tools
|
||||
QEMU is an extremely well-performing CPU emulator that allows you to
|
||||
@ -655,6 +706,7 @@ rm -f pc-bios/slof.bin
|
||||
--libexecdir=%_libexecdir \
|
||||
--localstatedir=%_localstatedir \
|
||||
--extra-cflags="%{optflags}" \
|
||||
--disable-stack-protector \
|
||||
--disable-strip \
|
||||
--with-pkgversion="%(echo '%{distribution}' | sed 's/ (.*)//')" \
|
||||
--enable-system --disable-linux-user \
|
||||
@ -699,7 +751,7 @@ rm -f pc-bios/slof.bin
|
||||
%else
|
||||
--disable-kvm \
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-libiscsi \
|
||||
%else
|
||||
--disable-libiscsi \
|
||||
@ -731,7 +783,14 @@ rm -f pc-bios/slof.bin
|
||||
--enable-numa \
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-opengl \
|
||||
%endif
|
||||
%if 0%{?with_rbd}
|
||||
--enable-rbd \
|
||||
%else
|
||||
--disable-rbd \
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1315
|
||||
--enable-rdma \
|
||||
%else
|
||||
@ -743,7 +802,7 @@ rm -f pc-bios/slof.bin
|
||||
%else
|
||||
--with-sdlabi=1.2 \
|
||||
%endif
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?with_seccomp}
|
||||
--enable-seccomp \
|
||||
%else
|
||||
--disable-seccomp \
|
||||
@ -773,15 +832,17 @@ rm -f pc-bios/slof.bin
|
||||
--enable-vde \
|
||||
--enable-vhdx \
|
||||
--enable-vhost-net \
|
||||
%if 0%{?suse_version} >= 1320
|
||||
--enable-virglrenderer \
|
||||
%if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
--enable-virglrenderer \
|
||||
%endif
|
||||
--enable-virtfs \
|
||||
--enable-vnc \
|
||||
--enable-vnc-jpeg \
|
||||
--enable-vnc-png \
|
||||
--enable-vnc-sasl \
|
||||
%if 0%{?suse_version} == 1310 || (0%{?suse_version} == 1315 && 0%{?is_opensuse} == 0)
|
||||
%if 0%{?suse_version} == 1320
|
||||
--disable-vte \
|
||||
%else
|
||||
--enable-vte \
|
||||
%endif
|
||||
%ifarch x86_64
|
||||
@ -791,7 +852,7 @@ rm -f pc-bios/slof.bin
|
||||
%else
|
||||
--disable-xen \
|
||||
%endif
|
||||
--enable-xfsctl \
|
||||
--enable-xfsctl \
|
||||
|
||||
|
||||
%if "%{name}" != "qemu-testsuite"
|
||||
@ -833,7 +894,7 @@ for conf in default-configs/*-softmmu.mak; do
|
||||
done
|
||||
|
||||
# Compile the QOM test binary first, so that ...
|
||||
make tests/qom-test %{?_smp_mflags} V=1
|
||||
make tests/qom-test %{?_smp_mflags} V=1
|
||||
# ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379)
|
||||
%if 0%{?suse_version} >= 1310
|
||||
make check-report.html V=1
|
||||
@ -931,6 +992,9 @@ install -D -p -m 0644 %{SOURCE8} %{buildroot}%{_udevrulesdir}/80-qemu-ga.rules
|
||||
%if 0%{?with_systemd}
|
||||
install -D -p -m 0644 %{SOURCE6} %{buildroot}%{_unitdir}/ksm.service
|
||||
install -D -p -m 0644 %{SOURCE9} %{buildroot}%{_unitdir}/qemu-ga.service
|
||||
%ifarch s390x
|
||||
install -D -m 0644 %{SOURCE10} %{buildroot}%{_libexecdir}/modules-load.d/kvm.conf
|
||||
%endif
|
||||
%endif
|
||||
%fdupes -s $RPM_BUILD_ROOT
|
||||
|
||||
@ -955,17 +1019,20 @@ install -D -m 644 check-report.xml %{buildroot}%{_datadir}/qemu/check-report.xml
|
||||
|
||||
%if %{kvm_available}
|
||||
%post
|
||||
# Do not execute operations affecting host devices while running in a chroot
|
||||
if [ $(stat -L -c "%i" /proc/1/root/) = $(stat -L -c "%i" /) ]; then
|
||||
setfacl --remove-all /dev/kvm &> /dev/null || :
|
||||
%if 0%{?with_systemd}
|
||||
%udev_rules_update
|
||||
%udev_rules_update
|
||||
%_bindir/udevadm trigger || :
|
||||
%else
|
||||
if [ "$(readlink -f /proc/1/root)" = "/" ]; then
|
||||
/sbin/udevadm control --reload-rules || :
|
||||
/sbin/udevadm trigger || :
|
||||
fi
|
||||
%endif
|
||||
%ifarch s390x
|
||||
sysctl vm.allocate_pgste=1
|
||||
sysctl vm.allocate_pgste=1 || :
|
||||
%endif
|
||||
fi
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} >= 1130
|
||||
@ -1029,6 +1096,9 @@ fi
|
||||
%endif
|
||||
%ifarch s390x
|
||||
%{_sysconfdir}/sysctl.d/50-allow-kvm-on-s390x
|
||||
%if 0%{?with_systemd}
|
||||
%_libexecdir/modules-load.d/kvm.conf
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
|
||||
@ -1115,12 +1185,19 @@ fi
|
||||
%_libdir/%name/block-gluster.so
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1320
|
||||
%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 )
|
||||
%files block-iscsi
|
||||
%defattr(-, root, root)
|
||||
%_libdir/%name/block-iscsi.so
|
||||
%endif
|
||||
|
||||
%if 0%{?with_rbd}
|
||||
%files block-rbd
|
||||
%defattr(-, root, root)
|
||||
%dir %_libdir/%name
|
||||
%_libdir/%name/block-rbd.so
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version} > 1140
|
||||
%files block-ssh
|
||||
%defattr(-, root, root)
|
||||
@ -1178,7 +1255,7 @@ fi
|
||||
%_bindir/qemu-nbd
|
||||
%_bindir/virtfs-proxy-helper
|
||||
#%_bindir/vscclient
|
||||
%verify(not mode) %_libexecdir/qemu-bridge-helper
|
||||
%verify(not mode) %attr(4750,root,kvm) %_libexecdir/qemu-bridge-helper
|
||||
%dir %_sysconfdir/%name
|
||||
%config %_sysconfdir/%name/bridge.conf
|
||||
%dir %_libdir/%name
|
||||
|
Loading…
Reference in New Issue
Block a user