Accepting request 318451 from home:a_faerber:branches:Virtualization

Update to v2.4.0-rc1

OBS-URL: https://build.opensuse.org/request/show/318451
OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=268
This commit is contained in:
Andreas Färber 2015-07-24 13:54:26 +00:00 committed by Git OBS Bridge
parent 3f9d158adf
commit 28fc555f81
60 changed files with 336 additions and 750 deletions

View File

@ -1,4 +1,4 @@
From 4e67113cd1c7eebeab06a62d97d39e6e77b59466 Mon Sep 17 00:00:00 2001
From 0b60cee04561c1dcc7c442622445d08243be93fd Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Mon, 21 Nov 2011 23:50:36 +0100
Subject: [PATCH] XXX dont dump core on sigabort
@ -8,7 +8,7 @@ Subject: [PATCH] XXX dont dump core on sigabort
1 file changed, 6 insertions(+)
diff --git a/linux-user/signal.c b/linux-user/signal.c
index 5bb399e..a849f26 100644
index 9d4cef4..42c5681 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -448,6 +448,10 @@ static void QEMU_NORETURN force_sig(int target_sig)

View File

@ -1,4 +1,4 @@
From e0496d8b8acb22e509d5d6bb6333689a5db615f6 Mon Sep 17 00:00:00 2001
From e2cc1c3c620eb2f4f6f81a43c7b3635e0495d4c5 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)
@ -13,10 +13,10 @@ Subject: [PATCH] XXX work around SA_RESTART race with boehm-gc (ARM only)
4 files changed, 130 insertions(+), 10 deletions(-)
diff --git a/linux-user/main.c b/linux-user/main.c
index a8adb04..f2c9391 100644
index fdee981..c9954fd 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -815,15 +815,22 @@ void cpu_loop(CPUARMState *env)
@@ -811,15 +811,22 @@ void cpu_loop(CPUARMState *env)
break;
}
} else {
@ -70,7 +70,7 @@ index 8012cc2..e29c7f3 100644
/* Creates the initial guest address space in the host memory space using
* the given host start address hint and size. The guest_start parameter
diff --git a/linux-user/signal.c b/linux-user/signal.c
index a849f26..ace2bfb 100644
index 42c5681..4153c99 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -25,6 +25,7 @@
@ -119,10 +119,10 @@ index a849f26..ace2bfb 100644
ignore state to avoid getting unexpected interrupted
syscalls */
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 1622ad6..f70e4f3 100644
index f62c698..a53a85f 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5512,6 +5512,87 @@ static target_timer_t get_timer_id(abi_long arg)
@@ -5570,6 +5570,87 @@ static target_timer_t get_timer_id(abi_long arg)
return timerid;
}
@ -210,7 +210,7 @@ index 1622ad6..f70e4f3 100644
/* do_syscall() should always have a single exit point at the end so
that actions, such as logging of syscall results, can be performed.
All errnos that do_syscall() returns must be -TARGET_<errcode>. */
@@ -5525,6 +5606,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -5583,6 +5664,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
struct stat st;
struct statfs stfs;
void *p;
@ -223,7 +223,7 @@ index 1622ad6..f70e4f3 100644
#ifdef DEBUG
gemu_log("syscall %d", num);
@@ -8794,7 +8881,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -8852,7 +8939,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
cmd = target_to_host_fcntl_cmd(arg2);
if (cmd == -TARGET_EINVAL) {
ret = cmd;
@ -232,7 +232,7 @@ index 1622ad6..f70e4f3 100644
}
switch(arg2) {
@@ -9825,6 +9912,7 @@ fail:
@@ -9883,6 +9970,7 @@ fail:
#endif
if(do_strace)
print_syscall_ret(num, ret);

View File

@ -1,4 +1,4 @@
From 29c2408bf7093a2d26485a08679cb14de49caf43 Mon Sep 17 00:00:00 2001
From 0c6f5965d31d72e0fb16d918694aaca8643b62e9 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

View File

@ -1,4 +1,4 @@
From 4fdcc1847221f05ba1721c84dbfe57f27fbc7cf6 Mon Sep 17 00:00:00 2001
From 3e6f37000225aba907179585e92b3296690be8fa 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
@ -13,7 +13,7 @@ Signed-off-by: Ulrich Hecht <uli@suse.de>
2 files changed, 24 insertions(+)
diff --git a/include/exec/user/thunk.h b/include/exec/user/thunk.h
index 87025c3..6c35e64 100644
index 3b67462..f26c7f4 100644
--- a/include/exec/user/thunk.h
+++ b/include/exec/user/thunk.h
@@ -38,6 +38,7 @@ typedef enum argtype {
@ -41,10 +41,10 @@ index 87025c3..6c35e64 100644
case TYPE_LONGLONG:
case TYPE_ULONGLONG:
diff --git a/thunk.c b/thunk.c
index 3cca047..c6a78ca 100644
index f501fd7..b711860 100644
--- a/thunk.c
+++ b/thunk.c
@@ -41,6 +41,7 @@ static inline const argtype *thunk_type_next(const argtype *type_ptr)
@@ -39,6 +39,7 @@ static inline const argtype *thunk_type_next(const argtype *type_ptr)
case TYPE_CHAR:
case TYPE_SHORT:
case TYPE_INT:
@ -52,7 +52,7 @@ index 3cca047..c6a78ca 100644
case TYPE_LONGLONG:
case TYPE_ULONGLONG:
case TYPE_LONG:
@@ -140,6 +141,26 @@ const argtype *thunk_convert(void *dst, const void *src,
@@ -141,6 +142,26 @@ const argtype *thunk_convert(void *dst, const void *src,
case TYPE_INT:
*(uint32_t *)dst = tswap32(*(uint32_t *)src);
break;

View File

@ -1,4 +1,4 @@
From 4c491a5962c8b54f89e61930e00293901d826679 Mon Sep 17 00:00:00 2001
From a665925912e3807c5a371c582803e77e08b4ad30 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

View File

@ -1,4 +1,4 @@
From cf0fce63b16eb24410ad11d10222350e3e47d2ef Mon Sep 17 00:00:00 2001
From d4d9043f71fa15ae5f31119148dc6fb5bfd2ef5d 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
@ -12,10 +12,10 @@ Signed-off-by: Ulrich Hecht <uli@suse.de>
1 file changed, 14 insertions(+)
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
index a249f0c..34a5615 100644
index 78e1b2d..5fd32f1 100644
--- a/linux-user/mmap.c
+++ b/linux-user/mmap.c
@@ -366,6 +366,9 @@ abi_ulong mmap_find_vma(abi_ulong start, abi_ulong size)
@@ -367,6 +367,9 @@ abi_ulong mmap_find_vma(abi_ulong start, abi_ulong size)
}
}
@ -25,7 +25,7 @@ index a249f0c..34a5615 100644
/* NOTE: all the constants are the HOST ones */
abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
int flags, int fd, abi_ulong offset)
@@ -400,6 +403,17 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
@@ -401,6 +404,17 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
}
#endif

View File

@ -1,4 +1,4 @@
From 04c1d47c2233cb3f49b27a51f5ad5c428f536faf Mon Sep 17 00:00:00 2001
From a7d1ccc627e6ffd822ae1e8dbff80bb5bf224224 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 f70e4f3..1244004 100644
index a53a85f..8e8c92e 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -6684,6 +6684,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -6742,6 +6742,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
case TARGET_NR_gettimeofday:
{
struct timeval tv;

View File

@ -1,4 +1,4 @@
From 3b21200fd89d9e3b840a226a2d506e742a4bdc02 Mon Sep 17 00:00:00 2001
From 4ad9fd908a820c9bac7eec48e6d15f227b9d66a6 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,10 +12,10 @@ 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 1244004..28ca660 100644
index 8e8c92e..8270fd0 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3861,7 +3861,12 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
@@ -3917,7 +3917,12 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
ie = ioctl_entries;
for(;;) {
if (ie->target_cmd == 0) {

View File

@ -1,4 +1,4 @@
From 0cf9b5c4dab2e9bc57c405d58f02f13ded7fe8bd Mon Sep 17 00:00:00 2001
From c088edae2329601716bf517c8703cfa15654b4ff 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,10 +15,10 @@ 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 28ca660..4f94afb 100644
index 8270fd0..42fad52 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3895,6 +3895,11 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
@@ -3951,6 +3951,11 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
arg_type++;
target_size = thunk_type_size(arg_type, 0);
switch(ie->access) {
@ -30,7 +30,7 @@ index 28ca660..4f94afb 100644
case IOC_R:
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
if (!is_error(ret)) {
@@ -3913,6 +3918,7 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
@@ -3969,6 +3974,7 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
unlock_user(argptr, arg, 0);
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
break;

View File

@ -1,4 +1,4 @@
From 38f2bc40a08ec811b22e60dd4b71fa11b0f11e61 Mon Sep 17 00:00:00 2001
From 192ab5152fe3d737eb5b3faa14c628b609467dbc 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
@ -21,10 +21,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
4 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/block.c b/block.c
index f2f8ae7..0d32442 100644
index d088ee0..fae98a4 100644
--- a/block.c
+++ b/block.c
@@ -5813,6 +5813,9 @@ void bdrv_img_create(const char *filename, const char *fmt,
@@ -3871,6 +3871,9 @@ void bdrv_img_create(const char *filename, const char *fmt,
if (!quiet) {
printf("Formatting '%s', fmt=%s", filename, fmt);
qemu_opts_print(opts, " ");
@ -35,10 +35,10 @@ index f2f8ae7..0d32442 100644
}
diff --git a/block/vmdk.c b/block/vmdk.c
index 8410a15..2a34dd0 100644
index fbaab67..6029805 100644
--- a/block/vmdk.c
+++ b/block/vmdk.c
@@ -1848,9 +1848,12 @@ static int vmdk_create(const char *filename, QemuOpts *opts, Error **errp)
@@ -1845,9 +1845,12 @@ static int vmdk_create(const char *filename, QemuOpts *opts, Error **errp)
if (qemu_opt_get_bool_del(opts, BLOCK_OPT_ZEROED_GRAIN, false)) {
zeroed_grain = true;
}
@ -52,7 +52,7 @@ index 8410a15..2a34dd0 100644
} else if (strcmp(adapter_type, "ide") &&
strcmp(adapter_type, "buslogic") &&
strcmp(adapter_type, "lsilogic") &&
@@ -2265,6 +2268,11 @@ static QemuOptsList vmdk_create_opts = {
@@ -2262,6 +2265,11 @@ static QemuOptsList vmdk_create_opts = {
.help = "Enable efficient zero writes "
"using the zeroed-grain GTE feature"
},
@ -65,10 +65,10 @@ index 8410a15..2a34dd0 100644
}
};
diff --git a/include/block/block_int.h b/include/block/block_int.h
index dccb092..decca62 100644
index 14ad4c3..6843176 100644
--- a/include/block/block_int.h
+++ b/include/block/block_int.h
@@ -41,10 +41,12 @@
@@ -39,10 +39,12 @@
#define BLOCK_FLAG_ENCRYPT 1
#define BLOCK_FLAG_COMPAT6 4
#define BLOCK_FLAG_LAZY_REFCOUNTS 8
@ -82,10 +82,10 @@ index dccb092..decca62 100644
#define BLOCK_OPT_BACKING_FMT "backing_fmt"
#define BLOCK_OPT_CLUSTER_SIZE "cluster_size"
diff --git a/qemu-img.c b/qemu-img.c
index 9dddfbe..cc8e976 100644
index 75f4ee4..6610617 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -1602,6 +1602,13 @@ static int img_convert(int argc, char **argv)
@@ -1806,6 +1806,13 @@ static int img_convert(int argc, char **argv)
}
}

View File

@ -1,4 +1,4 @@
From 18eb0ea2c1656ebd3bc875ada67f73a4b36e13a1 Mon Sep 17 00:00:00 2001
From aa980fb23aaedc9ead7ef5c2638ba0fea17d3610 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
@ -37,10 +37,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
create mode 100644 linux-user/binfmt.c
diff --git a/Makefile.target b/Makefile.target
index 2262d89..efbd850 100644
index 3e7aafd..8a84d6f 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -34,6 +34,10 @@ endif
@@ -36,6 +36,10 @@ endif
PROGS=$(QEMU_PROG) $(QEMU_PROGW)
STPFILES=
@ -51,7 +51,7 @@ index 2262d89..efbd850 100644
config-target.h: config-target.h-timestamp
config-target.h-timestamp: config-target.mak
@@ -108,6 +112,8 @@ QEMU_CFLAGS+=-I$(SRC_PATH)/linux-user/$(TARGET_ABI_DIR) -I$(SRC_PATH)/linux-user
@@ -110,6 +114,8 @@ QEMU_CFLAGS+=-I$(SRC_PATH)/linux-user/$(TARGET_ABI_DIR) -I$(SRC_PATH)/linux-user
obj-y += linux-user/
obj-y += gdbstub.o thunk.o user-exec.o
@ -60,7 +60,7 @@ index 2262d89..efbd850 100644
endif #CONFIG_LINUX_USER
#########################################################
@@ -156,7 +162,11 @@ endif # CONFIG_SOFTMMU
@@ -158,7 +164,11 @@ endif # CONFIG_SOFTMMU
# Workaround for http://gcc.gnu.org/PR55489, see configure.
%/translate.o: QEMU_CFLAGS += $(TRANSLATE_OPT_CFLAGS)
@ -72,9 +72,9 @@ index 2262d89..efbd850 100644
all-obj-y := $(obj-y)
target-obj-y :=
@@ -181,6 +191,9 @@ $(QEMU_PROG_BUILD): config-devices.mak
$(QEMU_PROG_BUILD): $(all-obj-y) ../libqemuutil.a ../libqemustub.a
$(call LINK, $(filter-out %.mak, $^))
@@ -187,6 +197,9 @@ ifdef CONFIG_DARWIN
$(call quiet-command,SetFile -a C $@," SETFILE $(TARGET_DIR)$@")
endif
+$(QEMU_PROG)-binfmt: $(obj-binfmt-y)
+ $(call LINK,$^)

View File

@ -1,4 +1,4 @@
From 63b90611b240cc52fc311f0f13eff5b8cca0524e Mon Sep 17 00:00:00 2001
From ce85fde5c40ca4bf0d993618358a0ae2536c0ab7 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
@ -13,10 +13,10 @@ KVM guests work there, even if possibly racy in some odd circumstances.
1 file changed, 2 insertions(+)
diff --git a/exec.c b/exec.c
index 874ecfc..0274800 100644
index 7d60e15..fd504b9 100644
--- a/exec.c
+++ b/exec.c
@@ -1134,11 +1134,13 @@ static void *file_ram_alloc(RAMBlock *block,
@@ -1180,11 +1180,13 @@ static void *file_ram_alloc(RAMBlock *block,
goto error;
}

View File

@ -1,4 +1,4 @@
From 58a7f89554d2de5bb2ef05c43f97fccdad8c54e0 Mon Sep 17 00:00:00 2001
From 68431df3d7b9a869979f10c7349f9199f6c75bbd 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
@ -52,10 +52,10 @@ index a72edda..e460e12 100644
+
#endif
diff --git a/user-exec.c b/user-exec.c
index 8f57e8a..f63198a 100644
index ed9a07f..38f7baf 100644
--- a/user-exec.c
+++ b/user-exec.c
@@ -94,6 +94,10 @@ static inline int handle_cpu_signal(uintptr_t pc, unsigned long address,
@@ -95,6 +95,10 @@ static inline int handle_cpu_signal(uintptr_t pc, unsigned long address,
qemu_printf("qemu: SIGSEGV pc=0x%08lx address=%08lx w=%d oldset=0x%08lx\n",
pc, address, is_write, *(unsigned long *)old_set);
#endif

View File

@ -1,4 +1,4 @@
From cb2967f20959e9907669a2332ccd164f40351007 Mon Sep 17 00:00:00 2001
From f798bcb59e1e4c18a207a6a073f532682631fd78 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

View File

@ -1,4 +1,4 @@
From 1b00c1b548b8e05ce687a73d46f0c08f698edc0a Mon Sep 17 00:00:00 2001
From af5a1b3e3506d28f651ed69ab69d878fea8ad112 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,10 +46,10 @@ index 8974caa..810ae61 100644
#endif
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 4f94afb..75ccd66 100644
index 42fad52..8abe4cd 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3838,6 +3838,13 @@ static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp,
@@ -3894,6 +3894,13 @@ static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp,
return get_errno(ioctl(fd, ie->host_cmd, sig));
}

View File

@ -1,4 +1,4 @@
From a2f780a45d6b328e1b2ed383784cd690bd3bb529 Mon Sep 17 00:00:00 2001
From db3ace8acc1f385b04fc38d4c454946b6aad9c3b 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
@ -20,7 +20,7 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
3 files changed, 43 insertions(+), 2 deletions(-)
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
index 34a5615..7ebf953 100644
index 5fd32f1..38f1cdd 100644
--- a/linux-user/mmap.c
+++ b/linux-user/mmap.c
@@ -30,6 +30,7 @@
@ -28,10 +28,10 @@ index 34a5615..7ebf953 100644
#include "qemu.h"
#include "qemu-common.h"
+#include "tcg.h"
#include "translate-all.h"
//#define DEBUG_MMAP
@@ -40,6 +41,7 @@ void mmap_lock(void)
@@ -41,6 +42,7 @@ void mmap_lock(void)
{
if (mmap_lock_count++ == 0) {
pthread_mutex_lock(&mmap_mutex);
@ -39,7 +39,7 @@ index 34a5615..7ebf953 100644
}
}
@@ -47,6 +49,7 @@ void mmap_unlock(void)
@@ -48,6 +50,7 @@ void mmap_unlock(void)
{
if (--mmap_lock_count == 0) {
pthread_mutex_unlock(&mmap_mutex);
@ -48,7 +48,7 @@ index 34a5615..7ebf953 100644
}
diff --git a/tcg/tcg.c b/tcg/tcg.c
index f1558b7..f7a40ba 100644
index 7e088b1..fd4e764 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -39,6 +39,8 @@
@ -100,7 +100,7 @@ index f1558b7..f7a40ba 100644
/* Count total number of arguments and allocate the corresponding
space */
total_args = 0;
@@ -2385,10 +2411,12 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
@@ -2418,10 +2444,12 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
}
#endif
@ -113,7 +113,7 @@ index f1558b7..f7a40ba 100644
return tcg_current_code_size(s);
}
@@ -2400,7 +2428,11 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
@@ -2433,7 +2461,11 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
int tcg_gen_code_search_pc(TCGContext *s, tcg_insn_unit *gen_code_buf,
long offset)
{
@ -127,7 +127,7 @@ index f1558b7..f7a40ba 100644
#ifdef CONFIG_PROFILER
diff --git a/tcg/tcg.h b/tcg/tcg.h
index add7f75..bbd819e 100644
index 231a781..e0806f9 100644
--- a/tcg/tcg.h
+++ b/tcg/tcg.h
@@ -27,6 +27,7 @@
@ -137,8 +137,8 @@ index add7f75..bbd819e 100644
+#include "qemu/thread.h"
#include "tcg-target.h"
/* Default target word size to pointer size. */
@@ -555,6 +556,8 @@ struct TCGContext {
#define CPU_TEMP_BUF_NLONGS 128
@@ -572,6 +573,8 @@ struct TCGContext {
target_ulong gen_opc_pc[OPC_BUF_SIZE];
uint16_t gen_opc_icount[OPC_BUF_SIZE];
uint8_t gen_opc_instr_start[OPC_BUF_SIZE];
@ -147,7 +147,7 @@ index add7f75..bbd819e 100644
};
extern TCGContext tcg_ctx;
@@ -743,6 +746,9 @@ void tcg_gen_callN(TCGContext *s, void *func,
@@ -760,6 +763,9 @@ void tcg_gen_callN(TCGContext *s, void *func,
void tcg_op_remove(TCGContext *s, TCGOp *op);
void tcg_optimize(TCGContext *s);

View File

@ -1,4 +1,4 @@
From 32acfcfbaf593e8d657b5a09b48d05871250d444 Mon Sep 17 00:00:00 2001
From 7a9da3339463b0323685b4cb2b9d84700e1d6bd1 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,10 +19,10 @@ 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 75ccd66..11a1572 100644
index 8abe4cd..72701d4 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -4543,6 +4543,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
@@ -4599,6 +4599,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
if (nptl_flags & CLONE_SETTLS)
cpu_set_tls (new_env, newtls);

View File

@ -1,4 +1,4 @@
From b447299e5493e4a6593e0ddde084e0ee59070199 Mon Sep 17 00:00:00 2001
From e26974aa6d52eed27b4129ba881535bdcf6be9b3 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
@ -14,10 +14,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/translate-all.c b/translate-all.c
index 11763c6..fc6fc71 100644
index 60a3d8b..6de63cd 100644
--- a/translate-all.c
+++ b/translate-all.c
@@ -715,19 +715,23 @@ static TranslationBlock *tb_alloc(target_ulong pc)
@@ -705,19 +705,23 @@ static TranslationBlock *tb_alloc(target_ulong pc)
{
TranslationBlock *tb;
@ -41,7 +41,7 @@ index 11763c6..fc6fc71 100644
/* In practice this is mostly used for single use temporary TB
Ignore the hard cases and just back up if this TB happens to
be the last one generated. */
@@ -736,6 +740,7 @@ void tb_free(TranslationBlock *tb)
@@ -726,6 +730,7 @@ void tb_free(TranslationBlock *tb)
tcg_ctx.code_gen_ptr = tb->tc_ptr;
tcg_ctx.tb_ctx.nb_tbs--;
}
@ -49,7 +49,7 @@ index 11763c6..fc6fc71 100644
}
static inline void invalidate_page_bitmap(PageDesc *p)
@@ -793,6 +798,7 @@ void tb_flush(CPUArchState *env1)
@@ -781,6 +786,7 @@ void tb_flush(CPUState *cpu)
((unsigned long)(tcg_ctx.code_gen_ptr - tcg_ctx.code_gen_buffer)) /
tcg_ctx.tb_ctx.nb_tbs : 0);
#endif
@ -57,7 +57,7 @@ index 11763c6..fc6fc71 100644
if ((unsigned long)(tcg_ctx.code_gen_ptr - tcg_ctx.code_gen_buffer)
> tcg_ctx.code_gen_buffer_size) {
cpu_abort(cpu, "Internal error: code buffer overflow\n");
@@ -810,6 +816,7 @@ void tb_flush(CPUArchState *env1)
@@ -798,6 +804,7 @@ void tb_flush(CPUState *cpu)
/* XXX: flush processor icache at this point if cache flush is
expensive */
tcg_ctx.tb_ctx.tb_flush_count++;
@ -65,7 +65,7 @@ index 11763c6..fc6fc71 100644
}
#ifdef DEBUG_TB_CHECK
@@ -1119,8 +1126,10 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
@@ -1079,8 +1086,10 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
int current_flags = 0;
#endif /* TARGET_HAS_PRECISE_SMC */
@ -75,8 +75,8 @@ index 11763c6..fc6fc71 100644
+ tcg_unlock();
return;
}
if (!p->code_bitmap &&
@@ -1213,6 +1222,7 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
#if defined(TARGET_HAS_PRECISE_SMC)
@@ -1165,6 +1174,7 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
cpu_resume_from_signal(cpu, NULL);
}
#endif
@ -84,7 +84,7 @@ index 11763c6..fc6fc71 100644
}
/* len must be <= 8 and start must be a multiple of len */
@@ -1420,13 +1430,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
@@ -1379,13 +1389,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
{
int m_min, m_max, m;
uintptr_t v;
@ -102,7 +102,7 @@ index 11763c6..fc6fc71 100644
return NULL;
}
/* binary search (cf Knuth) */
@@ -1437,6 +1450,7 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
@@ -1396,6 +1409,7 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
tb = &tcg_ctx.tb_ctx.tbs[m];
v = (uintptr_t)tb->tc_ptr;
if (v == tc_ptr) {
@ -110,7 +110,7 @@ index 11763c6..fc6fc71 100644
return tb;
} else if (tc_ptr < v) {
m_max = m - 1;
@@ -1444,7 +1458,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
@@ -1403,7 +1417,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
m_min = m + 1;
}
}

View File

@ -1,4 +1,4 @@
From 83f8760297c5fac596c82a9e45449895071b90af Mon Sep 17 00:00:00 2001
From 3bb9f549544a34a892fc180f7be0c1b3cdc398f0 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Mon, 23 Jul 2012 10:24:14 +0200
Subject: [PATCH] linux-user: Fake /proc/cpuinfo
@ -22,10 +22,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
1 file changed, 20 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 11a1572..4c72020 100644
index 72701d4..39dd818 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5362,6 +5362,25 @@ static int open_self_stat(void *cpu_env, int fd)
@@ -5420,6 +5420,25 @@ static int open_self_stat(void *cpu_env, int fd)
return 0;
}
@ -51,7 +51,7 @@ index 11a1572..4c72020 100644
static int open_self_auxv(void *cpu_env, int fd)
{
CPUState *cpu = ENV_GET_CPU((CPUArchState *)cpu_env);
@@ -5476,6 +5495,7 @@ static int do_openat(void *cpu_env, int dirfd, const char *pathname, int flags,
@@ -5534,6 +5553,7 @@ static int do_openat(void *cpu_env, int dirfd, const char *pathname, int flags,
#if defined(HOST_WORDS_BIGENDIAN) != defined(TARGET_WORDS_BIGENDIAN)
{ "/proc/net/route", open_net_route, is_proc },
#endif

View File

@ -1,4 +1,4 @@
From a7efb638bab217add93f4199939037730df222ba Mon Sep 17 00:00:00 2001
From 980f4989e1c2d4c3c9ff7098619080bc36c2a789 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

View File

@ -1,4 +1,4 @@
From de8637cc5c349ec197315c9a06ca6163e3ca8dd1 Mon Sep 17 00:00:00 2001
From 3802af307fafff4cd23c6df4795871d016bac824 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

View File

@ -1,4 +1,4 @@
From 5d92384080c5f450560412313661ab0e84c42bd8 Mon Sep 17 00:00:00 2001
From 9f962bf00aef27876ca88af82f5a5ed941e6955b 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,10 +9,10 @@ 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 4c72020..30d6bcd 100644
index 39dd818..5bd6f55 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3333,6 +3333,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
@@ -3389,6 +3389,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
uint32_t outbufsz;
int free_fm = 0;

View File

@ -1,4 +1,4 @@
From 7f2436d3ad31d2fd264f8dd9188abdb9a3bebae6 Mon Sep 17 00:00:00 2001
From 86cf67e43c44ec7ec1203e3728e6af53569aab48 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
@ -12,10 +12,10 @@ TBD (from SUSE Studio team)
4 files changed, 40 insertions(+)
diff --git a/qemu-options.hx b/qemu-options.hx
index 319d971..4b6dd9a 100644
index 7b8efbf..dcf11b1 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -2878,6 +2878,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU
@@ -2916,6 +2916,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU
from a script.
ETEXI
@ -97,10 +97,10 @@ index 7571c5a..0555e18 100644
socket_set_fast_reuse(s);
opt = 1;
diff --git a/vl.c b/vl.c
index 74c2681..51de200 100644
index 5856396..6cd9256 100644
--- a/vl.c
+++ b/vl.c
@@ -163,6 +163,7 @@ int smp_threads = 1;
@@ -165,6 +165,7 @@ int smp_threads = 1;
int acpi_enabled = 1;
int no_hpet = 0;
int fd_bootchk = 1;
@ -108,7 +108,7 @@ index 74c2681..51de200 100644
static int no_reboot;
int no_shutdown = 0;
int cursor_hide = 1;
@@ -3146,6 +3147,14 @@ int main(int argc, char **argv, char **envp)
@@ -3366,6 +3367,14 @@ int main(int argc, char **argv, char **envp)
case QEMU_OPTION_singlestep:
singlestep = 1;
break;

View File

@ -1,4 +1,4 @@
From 1e17a16e5d7ac68f2679407f5468d11b73644f6b Mon Sep 17 00:00:00 2001
From 355664b3485e6a10fbc3ee8d69cabcb234264396 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=
@ -9,10 +9,10 @@ TBD (from SUSE Studio team)
1 file changed, 55 insertions(+)
diff --git a/ui/vnc.c b/ui/vnc.c
index cffb5b7..77c4027 100644
index 1483958..27ddab1 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -51,6 +51,8 @@ static const struct timeval VNC_REFRESH_LOSSY = { 2, 0 };
@@ -54,6 +54,8 @@ static const struct timeval VNC_REFRESH_LOSSY = { 2, 0 };
static QTAILQ_HEAD(, VncDisplay) vnc_displays =
QTAILQ_HEAD_INITIALIZER(vnc_displays);
@ -21,7 +21,7 @@ index cffb5b7..77c4027 100644
static int vnc_cursor_define(VncState *vs);
static void vnc_release_modifiers(VncState *vs);
@@ -1221,6 +1223,7 @@ static void vnc_disconnect_start(VncState *vs)
@@ -1220,6 +1222,7 @@ static void vnc_disconnect_start(VncState *vs)
void vnc_disconnect_finish(VncState *vs)
{
int i;
@ -29,7 +29,7 @@ index cffb5b7..77c4027 100644
vnc_jobs_join(vs); /* Wait encoding jobs */
@@ -1269,6 +1272,13 @@ void vnc_disconnect_finish(VncState *vs)
@@ -1266,6 +1269,13 @@ void vnc_disconnect_finish(VncState *vs)
}
g_free(vs->lossy_rect);
g_free(vs);
@ -43,7 +43,7 @@ index cffb5b7..77c4027 100644
}
int vnc_client_io_error(VncState *vs, int ret, int last_errno)
@@ -3240,6 +3250,39 @@ char *vnc_display_local_addr(const char *id)
@@ -3230,6 +3240,39 @@ char *vnc_display_local_addr(const char *id)
return vnc_socket_local_addr("%s:%s", vs->lsock);
}
@ -83,7 +83,7 @@ index cffb5b7..77c4027 100644
static QemuOptsList qemu_vnc_opts = {
.name = "vnc",
.head = QTAILQ_HEAD_INITIALIZER(qemu_vnc_opts.head),
@@ -3267,6 +3310,9 @@ static QemuOptsList qemu_vnc_opts = {
@@ -3257,6 +3300,9 @@ static QemuOptsList qemu_vnc_opts = {
.name = "connections",
.type = QEMU_OPT_NUMBER,
},{
@ -93,7 +93,7 @@ index cffb5b7..77c4027 100644
.name = "to",
.type = QEMU_OPT_NUMBER,
},{
@@ -3279,6 +3325,9 @@ static QemuOptsList qemu_vnc_opts = {
@@ -3269,6 +3315,9 @@ static QemuOptsList qemu_vnc_opts = {
.name = "password",
.type = QEMU_OPT_BOOL,
},{
@ -103,7 +103,7 @@ index cffb5b7..77c4027 100644
.name = "reverse",
.type = QEMU_OPT_BOOL,
},{
@@ -3443,6 +3492,7 @@ void vnc_display_open(const char *id, Error **errp)
@@ -3433,6 +3482,7 @@ void vnc_display_open(const char *id, Error **errp)
const char *share, *device_id;
QemuConsole *con;
bool password = false;
@ -111,9 +111,9 @@ index cffb5b7..77c4027 100644
bool reverse = false;
const char *vnc;
const char *has_to;
@@ -3516,6 +3566,10 @@ void vnc_display_open(const char *id, Error **errp)
"methods as an alternative");
goto fail;
@@ -3521,6 +3571,10 @@ void vnc_display_open(const char *id, Error **errp)
goto fail;
}
}
+ password_file = qemu_opt_get(opts, "password-file");
+ if (password_file) {
@ -122,7 +122,7 @@ index cffb5b7..77c4027 100644
reverse = qemu_opt_get_bool(opts, "reverse", false);
lock_key_sync = qemu_opt_get_bool(opts, "lock-key-sync", true);
@@ -3569,6 +3623,7 @@ void vnc_display_open(const char *id, Error **errp)
@@ -3574,6 +3628,7 @@ void vnc_display_open(const char *id, Error **errp)
vs->share_policy = VNC_SHARE_POLICY_ALLOW_EXCLUSIVE;
}
vs->connections_limit = qemu_opt_get_number(opts, "connections", 32);

View File

@ -1,4 +1,4 @@
From 58d1cb20e7dbeddef1e12fd2dfac4fe2a9c16cff Mon Sep 17 00:00:00 2001
From 4cc8ddc870c59ef1a92ee725acac5c729c75a879 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

View File

@ -1,4 +1,4 @@
From 4541994ba978226f288028aec1b9868efcc5ea9f Mon Sep 17 00:00:00 2001
From 643279243c15a51070b00dc994306085a97b8eb3 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
@ -36,10 +36,10 @@ index e29c7f3..75b6558 100644
extern THREAD CPUState *thread_cpu;
void cpu_loop(CPUArchState *env);
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 30d6bcd..07c0138 100644
index 5bd6f55..8016256 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5648,10 +5648,10 @@ int syscall_restartable(int syscall_nr)
@@ -5706,10 +5706,10 @@ int syscall_restartable(int syscall_nr)
/* do_syscall() should always have a single exit point at the end so
that actions, such as logging of syscall results, can be performed.
All errnos that do_syscall() returns must be -TARGET_<errcode>. */

View File

@ -1,4 +1,4 @@
From ded0e437f0cc9df0f0508f166db14cc54aaad784 Mon Sep 17 00:00:00 2001
From 6b1bb5b347b1378d5d4d465cf75f32da2618de7a 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
@ -41,10 +41,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
create mode 100644 block/dictzip.c
diff --git a/block/Makefile.objs b/block/Makefile.objs
index db2933e..1c6f9cf 100644
index 58ef2ef..246f167 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
@@ -25,6 +25,7 @@ block-obj-y += write-threshold.o
@@ -26,6 +26,7 @@ block-obj-y += write-threshold.o
common-obj-y += stream.o
common-obj-y += commit.o
common-obj-y += backup.o

View File

@ -1,4 +1,4 @@
From 6b8c3885607cbbbc5eb5a6b6c08e64eeabd639a5 Mon Sep 17 00:00:00 2001
From ffe16e68597abf4426db0c69c29d9307d528dd58 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
@ -42,10 +42,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
create mode 100644 block/tar.c
diff --git a/block/Makefile.objs b/block/Makefile.objs
index 1c6f9cf..c7e2178 100644
index 246f167..a757960 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
@@ -26,6 +26,7 @@ common-obj-y += stream.o
@@ -27,6 +27,7 @@ common-obj-y += stream.o
common-obj-y += commit.o
common-obj-y += backup.o
common-obj-y += dictzip.o

View File

@ -1,4 +1,4 @@
From 36f1cdefb3ffc0b3e96f544ef3280dca57ea2e4c Mon Sep 17 00:00:00 2001
From 52b2f52b9719a840f23723be9377a2cee8bbcc9e 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

View File

@ -1,4 +1,4 @@
From aaa848743a9634205cf4459ae12993673d428cc6 Mon Sep 17 00:00:00 2001
From d0c904c9e8618bbf2cf6c8ea789c3f3788f90913 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
@ -16,10 +16,10 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ui/console.c b/ui/console.c
index b15ca87..a2364e6 100644
index 75fc492..827b91e 100644
--- a/ui/console.c
+++ b/ui/console.c
@@ -853,7 +853,7 @@ static void console_putchar(QemuConsole *s, int ch)
@@ -854,7 +854,7 @@ static void console_putchar(QemuConsole *s, int ch)
} else {
if (s->nb_esc_params < MAX_ESC_PARAMS)
s->nb_esc_params++;

View File

@ -1,4 +1,4 @@
From 373aff92ccca07533a1bac043ccccbe8d1edb322 Mon Sep 17 00:00:00 2001
From 4f4a18839bbd539da47de905b1cd2fc2e9005a56 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
@ -22,10 +22,10 @@ This patch fixes input when using -nographic on s390 for me.
1 file changed, 16 insertions(+)
diff --git a/qemu-char.c b/qemu-char.c
index a405d76..471ccfe 100644
index 617e034..9bc7010 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -403,6 +403,9 @@ typedef struct {
@@ -404,6 +404,9 @@ typedef struct {
IOEventHandler *chr_event[MAX_MUX];
void *ext_opaque[MAX_MUX];
CharDriverState *drv;
@ -35,7 +35,7 @@ index a405d76..471ccfe 100644
int focus;
int mux_cnt;
int term_got_escape;
@@ -562,6 +565,15 @@ static void mux_chr_accept_input(CharDriverState *chr)
@@ -563,6 +566,15 @@ static void mux_chr_accept_input(CharDriverState *chr)
d->chr_read[m](d->ext_opaque[m],
&d->buffer[m][d->cons[m]++ & MUX_BUFFER_MASK], 1);
}
@ -51,7 +51,7 @@ index a405d76..471ccfe 100644
}
static int mux_chr_can_read(void *opaque)
@@ -690,6 +702,10 @@ static CharDriverState *qemu_chr_open_mux(CharDriverState *drv)
@@ -691,6 +703,10 @@ static CharDriverState *qemu_chr_open_mux(CharDriverState *drv)
chr->opaque = d;
d->drv = drv;
d->focus = -1;

View File

@ -1,4 +1,4 @@
From 21c375ae2e6cfc6dc7b6eb0bca58e127cdddfa63 Mon Sep 17 00:00:00 2001
From 8113753d49024ddbdc08960f321c618f4b013d88 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 07c0138..4917e20 100644
index 8016256..7c97105 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5959,9 +5959,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
@@ -6017,9 +6017,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
case TARGET_NR_oldstat:
goto unimplemented;
#endif

View File

@ -1,4 +1,4 @@
From f8d920c04363d2059f43d81569bf68324bf52999 Mon Sep 17 00:00:00 2001
From 913f2b4eadc478f972fd539c866f87a5d9eca380 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
@ -12,7 +12,7 @@ Fixes the build on SLE 11 SP2.
1 file changed, 7 insertions(+)
diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
index a698e2d..bbc6233 100644
index 9097d15..f73de4e 100644
--- a/fsdev/virtfs-proxy-helper.c
+++ b/fsdev/virtfs-proxy-helper.c
@@ -9,6 +9,13 @@

View File

@ -1,4 +1,4 @@
From 0c1e38643a275316ed01c40c085bec3f0d91af3d Mon Sep 17 00:00:00 2001
From 59f74d76bbe712e8f283bd4b940db36e117b7661 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
@ -14,10 +14,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
index 6969f6f..b43b371 100755
index cc0338d..733698f 100755
--- a/configure
+++ b/configure
@@ -1551,7 +1551,7 @@ fi
@@ -1531,7 +1531,7 @@ fi
if test "$pie" = ""; then
case "$cpu-$targetos" in

View File

@ -1,4 +1,4 @@
From 93d5e4be4758d956a6f9751c468432a105cc5084 Mon Sep 17 00:00:00 2001
From c33743b4d896a9f3eba74b55d683304d1e152165 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
@ -14,7 +14,7 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/libqtest.c b/tests/libqtest.c
index 12d65bd..2931773 100644
index e5188e0..e0c5f23 100644
--- a/tests/libqtest.c
+++ b/tests/libqtest.c
@@ -35,7 +35,7 @@

View File

@ -1,4 +1,4 @@
From 93385f479c5d050d6361d6835a2da091555b380a Mon Sep 17 00:00:00 2001
From f55020d6731290ff36d8e1d868141bd8534edb3c 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
@ -21,10 +21,10 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/thread-pool.c b/thread-pool.c
index e2cac8e..87a3ea9 100644
index ac909f4..fc16fc2 100644
--- a/thread-pool.c
+++ b/thread-pool.c
@@ -299,7 +299,12 @@ static void thread_pool_init_one(ThreadPool *pool, AioContext *ctx)
@@ -297,7 +297,12 @@ static void thread_pool_init_one(ThreadPool *pool, AioContext *ctx)
qemu_mutex_init(&pool->lock);
qemu_cond_init(&pool->worker_stopped);
qemu_sem_init(&pool->sem, 0);

View File

@ -1,4 +1,4 @@
From 454fc5a3bc19e8b6a2b5dcb0aa202cd03e313f19 Mon Sep 17 00:00:00 2001
From 52738295076f499e97443ac9f5e45dcced885e4b 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] Revert "Revert seccomp tests that allow it to be used on
@ -18,10 +18,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
index b43b371..7f31e89 100755
index 733698f..492c87b 100755
--- a/configure
+++ b/configure
@@ -1848,14 +1848,19 @@ fi
@@ -1828,14 +1828,19 @@ fi
# libseccomp check
if test "$seccomp" != "no" ; then

View File

@ -1,123 +0,0 @@
From 82465ccc24bd795f29c63e850c539717f1ea8a4f Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Tue, 14 Apr 2015 17:12:29 +0200
Subject: [PATCH] linux-user: Allocate thunk size dynamically
We store all struct types in an array of static size without ever
checking whether we overrun it. Of course some day someone (like me
in another, ancient ALSA enabling patch set) will run into the limit
without realizing it.
So let's make the allocation dynamic. We already know the number of
structs that we want to allocate, so we only need to pass the variable
into the respective piece of code.
Also, to ensure we don't accidently overwrite random memory, add some
asserts to sanity check whether a thunk is actually part of our array.
Signed-off-by: Alexander Graf <agraf@suse.de>
---
v1 -> v2:
- alloc with new0 to copy the bss semantics we had before
---
include/exec/user/thunk.h | 4 +++-
linux-user/syscall.c | 3 +++
thunk.c | 16 ++++++++++++----
3 files changed, 18 insertions(+), 5 deletions(-)
diff --git a/include/exec/user/thunk.h b/include/exec/user/thunk.h
index 6c35e64..f26c7f4 100644
--- a/include/exec/user/thunk.h
+++ b/include/exec/user/thunk.h
@@ -75,7 +75,7 @@ const argtype *thunk_convert(void *dst, const void *src,
const argtype *type_ptr, int to_host);
#ifndef NO_THUNK_TYPE_SIZE
-extern StructEntry struct_entries[];
+extern StructEntry *struct_entries;
int thunk_type_size_array(const argtype *type_ptr, int is_host);
int thunk_type_align_array(const argtype *type_ptr, int is_host);
@@ -189,4 +189,6 @@ unsigned int target_to_host_bitmask(unsigned int x86_mask,
unsigned int host_to_target_bitmask(unsigned int alpha_mask,
const bitmask_transtbl * trans_tbl);
+void thunk_init(unsigned int max_structs);
+
#endif
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 4917e20..49c0659 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3277,6 +3277,7 @@ static abi_long do_ipc(unsigned int call, abi_long first,
#define STRUCT_SPECIAL(name) STRUCT_ ## name,
enum {
#include "syscall_types.h"
+STRUCT_MAX
};
#undef STRUCT
#undef STRUCT_SPECIAL
@@ -4911,6 +4912,8 @@ void syscall_init(void)
int size;
int i;
+ thunk_init(STRUCT_MAX);
+
#define STRUCT(name, ...) thunk_register_struct(STRUCT_ ## name, #name, struct_ ## name ## _def);
#define STRUCT_SPECIAL(name) thunk_register_struct_direct(STRUCT_ ## name, #name, &struct_ ## name ## _def);
#include "syscall_types.h"
diff --git a/thunk.c b/thunk.c
index c6a78ca..b711860 100644
--- a/thunk.c
+++ b/thunk.c
@@ -25,10 +25,8 @@
//#define DEBUG
-#define MAX_STRUCTS 128
-
-/* XXX: make it dynamic */
-StructEntry struct_entries[MAX_STRUCTS];
+static unsigned int max_struct_entries;
+StructEntry *struct_entries;
static const argtype *thunk_type_next_ptr(const argtype *type_ptr);
@@ -71,6 +69,7 @@ void thunk_register_struct(int id, const char *name, const argtype *types)
StructEntry *se;
int nb_fields, offset, max_align, align, size, i, j;
+ assert(id < max_struct_entries);
se = struct_entries + id;
/* first we count the number of fields */
@@ -118,6 +117,8 @@ void thunk_register_struct_direct(int id, const char *name,
const StructEntry *se1)
{
StructEntry *se;
+
+ assert(id < max_struct_entries);
se = struct_entries + id;
*se = *se1;
se->name = name;
@@ -265,6 +266,7 @@ const argtype *thunk_convert(void *dst, const void *src,
const argtype *field_types;
const int *dst_offsets, *src_offsets;
+ assert(*type_ptr < max_struct_entries);
se = struct_entries + *type_ptr++;
if (se->convert[0] != NULL) {
/* specific conversion is needed */
@@ -335,3 +337,9 @@ int thunk_type_align_array(const argtype *type_ptr, int is_host)
return thunk_type_align(type_ptr, is_host);
}
#endif /* ndef NO_THUNK_TYPE_SIZE */
+
+void thunk_init(unsigned int max_structs)
+{
+ max_struct_entries = max_structs;
+ struct_entries = g_new0(StructEntry, max_structs);
+}

View File

@ -1,31 +0,0 @@
From 67098aac3a33ba6bf79088ac4bc4068637637dd9 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Wed, 15 Apr 2015 02:28:05 +0200
Subject: [PATCH] s390x: Fix stoc direction
The store conditional instruction wants to store when the condition
is fulfilled, so we should branch out when it's not true.
The code today branches out when the condition is true, clearly
reversing the logic. Fix it up by negating the condition.
Signed-off-by: Alexander Graf <agraf@suse.de>
---
target-s390x/translate.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/target-s390x/translate.c b/target-s390x/translate.c
index 4f82edd..8ae4912 100644
--- a/target-s390x/translate.c
+++ b/target-s390x/translate.c
@@ -3082,6 +3082,10 @@ static ExitStatus op_soc(DisasContext *s, DisasOps *o)
disas_jcc(s, &c, get_field(s->fields, m3));
+ /* We want to store when the condition is fulfilled, so branch
+ out when it's not */
+ c.cond = tcg_invert_cond(c.cond);
+
lab = gen_new_label();
if (c.is_64) {
tcg_gen_brcond_i64(c.cond, c.u.s64.a, c.u.s64.b, lab);

View File

@ -1,109 +0,0 @@
From 9c5c8b0716f6c5526a5bd5abe13937321d95de26 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Fri, 8 May 2015 03:07:53 +0200
Subject: [PATCH] s390x: Add interlocked access facility 1 instructions
We're currently missing all instructions defined by the "interlocked-access
facility 1" which is part of zEC12. This patch implements all of them except
for LPD and LPDG.
Signed-off-by: Alexander Graf <agraf@suse.de>
---
target-s390x/insn-data.def | 16 ++++++++++++++++
target-s390x/translate.c | 35 +++++++++++++++++++++++++++++++++++
2 files changed, 51 insertions(+)
diff --git a/target-s390x/insn-data.def b/target-s390x/insn-data.def
index 8d8e47e..a36c366 100644
--- a/target-s390x/insn-data.def
+++ b/target-s390x/insn-data.def
@@ -338,6 +338,21 @@
C(0xe371, LAY, RXY_a, LD, 0, a2, 0, r1, mov2, 0)
/* LOAD ADDRESS RELATIVE LONG */
C(0xc000, LARL, RIL_b, Z, 0, ri2, 0, r1, mov2, 0)
+/* LOAD AND ADD */
+ C(0xebf8, LAA, RSY_a, ILA, r3_32s, m2_32s_atomic, new, m2_32_r1_atomic, add, adds32)
+ C(0xebe8, LAAG, RSY_a, ILA, r3, m2_64_atomic, new, m2_64_r1_atomic, add, adds64)
+/* LOAD AND ADD LOGICAL */
+ C(0xebfa, LAAL, RSY_a, ILA, r3_32s, m2_32s_atomic, new, m2_32_r1_atomic, add, addu32)
+ C(0xebea, LAALG, RSY_a, ILA, r3, m2_64_atomic, new, m2_64_r1_atomic, add, addu64)
+/* LOAD AND AND */
+ C(0xebf4, LAN, RSY_a, ILA, r3_32s, m2_32s_atomic, new, m2_32_r1_atomic, and, nz32)
+ C(0xebe4, LANG, RSY_a, ILA, r3, m2_64_atomic, new, m2_64_r1_atomic, and, nz64)
+/* LOAD AND EXCLUSIVE OR */
+ C(0xebf7, LAX, RSY_a, ILA, r3_32s, m2_32s_atomic, new, m2_32_r1_atomic, xor, nz32)
+ C(0xebe7, LAXG, RSY_a, ILA, r3, m2_64_atomic, new, m2_64_r1_atomic, xor, nz64)
+/* LOAD AND OR */
+ C(0xebf6, LAO, RSY_a, ILA, r3_32s, m2_32s_atomic, new, m2_32_r1_atomic, or, nz32)
+ C(0xebe6, LAOG, RSY_a, ILA, r3, m2_64_atomic, new, m2_64_r1_atomic, or, nz64)
/* LOAD AND TEST */
C(0x1200, LTR, RR_a, Z, 0, r2_o, 0, cond_r1r2_32, mov2, s32)
C(0xb902, LTGR, RRE, Z, 0, r2_o, 0, r1, mov2, s64)
@@ -417,6 +432,7 @@
C(0xb9e2, LOCGR, RRF_c, LOC, r1, r2, r1, 0, loc, 0)
C(0xebf2, LOC, RSY_b, LOC, r1, m2_32u, new, r1_32, loc, 0)
C(0xebe2, LOCG, RSY_b, LOC, r1, m2_64, r1, 0, loc, 0)
+/* LOAD PAIR DISJOINT TODO */
/* LOAD POSITIVE */
C(0x1000, LPR, RR_a, Z, 0, r2_32s, new, r1_32, abs, abs32)
C(0xb900, LPGR, RRE, Z, 0, r2, r1, 0, abs, abs64)
diff --git a/target-s390x/translate.c b/target-s390x/translate.c
index 8ae4912..07794fb 100644
--- a/target-s390x/translate.c
+++ b/target-s390x/translate.c
@@ -1118,6 +1118,7 @@ typedef enum DisasFacility {
FAC_PC, /* population count */
FAC_SCF, /* store clock fast */
FAC_SFLE, /* store facility list extended */
+ FAC_ILA, /* interlocked access facility 1 */
} DisasFacility;
struct DisasInsn {
@@ -4065,6 +4066,22 @@ static void wout_m2_32(DisasContext *s, DisasFields *f, DisasOps *o)
}
#define SPEC_wout_m2_32 0
+static void wout_m2_32_r1_atomic(DisasContext *s, DisasFields *f, DisasOps *o)
+{
+ /* XXX release reservation */
+ tcg_gen_qemu_st32(o->out, o->addr1, get_mem_index(s));
+ store_reg32_i64(get_field(f, r1), o->in2);
+}
+#define SPEC_wout_m2_32_r1_atomic 0
+
+static void wout_m2_64_r1_atomic(DisasContext *s, DisasFields *f, DisasOps *o)
+{
+ /* XXX release reservation */
+ tcg_gen_qemu_st64(o->out, o->addr1, get_mem_index(s));
+ store_reg(get_field(f, r1), o->in2);
+}
+#define SPEC_wout_m2_64_r1_atomic 0
+
/* ====================================================================== */
/* The "INput 1" generators. These load the first operand to an insn. */
@@ -4486,6 +4503,24 @@ static void in2_mri2_64(DisasContext *s, DisasFields *f, DisasOps *o)
}
#define SPEC_in2_mri2_64 0
+static void in2_m2_32s_atomic(DisasContext *s, DisasFields *f, DisasOps *o)
+{
+ /* XXX should reserve the address */
+ in1_la2(s, f, o);
+ o->in2 = tcg_temp_new_i64();
+ tcg_gen_qemu_ld32s(o->in2, o->addr1, get_mem_index(s));
+}
+#define SPEC_in2_m2_32s_atomic 0
+
+static void in2_m2_64_atomic(DisasContext *s, DisasFields *f, DisasOps *o)
+{
+ /* XXX should reserve the address */
+ in1_la2(s, f, o);
+ o->in2 = tcg_temp_new_i64();
+ tcg_gen_qemu_ld64(o->in2, o->addr1, get_mem_index(s));
+}
+#define SPEC_in2_m2_64_atomic 0
+
static void in2_i2(DisasContext *s, DisasFields *f, DisasOps *o)
{
o->in2 = tcg_const_i64(get_field(f, i2));

View File

@ -1,88 +0,0 @@
From 8ee1862533a1af5b18387662b262560fc336a08b Mon Sep 17 00:00:00 2001
From: Petr Matousek <pmatouse@redhat.com>
Date: Wed, 6 May 2015 09:48:59 +0200
Subject: [PATCH] fdc: force the fifo access to be in bounds of the allocated
buffer
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
During processing of certain commands such as FD_CMD_READ_ID and
FD_CMD_DRIVE_SPECIFICATION_COMMAND the fifo memory access could
get out of bounds leading to memory corruption with values coming
from the guest.
Fix this by making sure that the index is always bounded by the
allocated memory.
This is CVE-2015-3456.
Signed-off-by: Petr Matousek <pmatouse@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Signed-off-by: John Snow <jsnow@redhat.com>
(cherry picked from commit e907746266721f305d67bc0718795fedee2e824c)
[AF: BOO#929339]
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
hw/block/fdc.c | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/hw/block/fdc.c b/hw/block/fdc.c
index 2bf87c9..a9de4ab 100644
--- a/hw/block/fdc.c
+++ b/hw/block/fdc.c
@@ -1512,7 +1512,7 @@ static uint32_t fdctrl_read_data(FDCtrl *fdctrl)
{
FDrive *cur_drv;
uint32_t retval = 0;
- int pos;
+ uint32_t pos;
cur_drv = get_cur_drv(fdctrl);
fdctrl->dsr &= ~FD_DSR_PWRDOWN;
@@ -1521,8 +1521,8 @@ static uint32_t fdctrl_read_data(FDCtrl *fdctrl)
return 0;
}
pos = fdctrl->data_pos;
+ pos %= FD_SECTOR_LEN;
if (fdctrl->msr & FD_MSR_NONDMA) {
- pos %= FD_SECTOR_LEN;
if (pos == 0) {
if (fdctrl->data_pos != 0)
if (!fdctrl_seek_to_next_sect(fdctrl, cur_drv)) {
@@ -1867,10 +1867,13 @@ static void fdctrl_handle_option(FDCtrl *fdctrl, int direction)
static void fdctrl_handle_drive_specification_command(FDCtrl *fdctrl, int direction)
{
FDrive *cur_drv = get_cur_drv(fdctrl);
+ uint32_t pos;
- if (fdctrl->fifo[fdctrl->data_pos - 1] & 0x80) {
+ pos = fdctrl->data_pos - 1;
+ pos %= FD_SECTOR_LEN;
+ if (fdctrl->fifo[pos] & 0x80) {
/* Command parameters done */
- if (fdctrl->fifo[fdctrl->data_pos - 1] & 0x40) {
+ if (fdctrl->fifo[pos] & 0x40) {
fdctrl->fifo[0] = fdctrl->fifo[1];
fdctrl->fifo[2] = 0;
fdctrl->fifo[3] = 0;
@@ -1970,7 +1973,7 @@ static uint8_t command_to_handler[256];
static void fdctrl_write_data(FDCtrl *fdctrl, uint32_t value)
{
FDrive *cur_drv;
- int pos;
+ uint32_t pos;
/* Reset mode */
if (!(fdctrl->dor & FD_DOR_nRESET)) {
@@ -2019,7 +2022,9 @@ static void fdctrl_write_data(FDCtrl *fdctrl, uint32_t value)
}
FLOPPY_DPRINTF("%s: %02x\n", __func__, value);
- fdctrl->fifo[fdctrl->data_pos++] = value;
+ pos = fdctrl->data_pos++;
+ pos %= FD_SECTOR_LEN;
+ fdctrl->fifo[pos] = value;
if (fdctrl->data_pos == fdctrl->data_len) {
/* We now have all parameters
* and will be able to treat the command

View File

@ -1,52 +0,0 @@
From d65736f0043d2393dc3a4fce25d806f7ff1b406b Mon Sep 17 00:00:00 2001
From: Fam Zheng <famz@redhat.com>
Date: Thu, 7 May 2015 14:55:15 +0800
Subject: [PATCH] rules.mak: Force CFLAGS for all objects in DSO
Because of the trick of process-archive-undefs, all .mo objects, even
with --enable-modules, are dependencies of executables.
This breaks CFLAGS propogation because the compiling of module object
will happen too early before building for DSO.
With GCC 5, the linking would fail because .o doesn't have -fPIC. Also,
BUILD_DSO will be missed. (module-common.o will have it, so the stamp
symbol was still liked in .so).
Fix the problem by forcing the CFLAGS on individual .o-cflags during
unnest-vars.
Reported-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Fam Zheng <famz@redhat.com>
Cc: qemu-stable@nongnu.org # 2.3
Message-Id: <1430981715-31465-1-git-send-email-famz@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit d24697e1824467f3921c84a94f011f43d6466403)
Signed-off-by: Bruce Rogers <brogers@suse.com>
Signed-off-by: Jiri Slaby <jslaby@suse.com>
---
rules.mak | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/rules.mak b/rules.mak
index 3a05627..aec27f8 100644
--- a/rules.mak
+++ b/rules.mak
@@ -102,7 +102,8 @@ endif
%.o: %.dtrace
$(call quiet-command,dtrace -o $@ -G -s $<, " GEN $(TARGET_DIR)$@")
-%$(DSOSUF): CFLAGS += -fPIC -DBUILD_DSO
+DSO_OBJ_CFLAGS := -fPIC -DBUILD_DSO
+module-common.o: CFLAGS += $(DSO_OBJ_CFLAGS)
%$(DSOSUF): LDFLAGS += $(LDFLAGS_SHARED)
%$(DSOSUF): %.mo
$(call LINK,$^)
@@ -351,6 +352,7 @@ define unnest-vars
# For non-module build, add -m to -y
$(if $(CONFIG_MODULES),
$(foreach o,$($v),
+ $(eval $($o-objs): CFLAGS += $(DSO_OBJ_CFLAGS))
$(eval $o: $($o-objs)))
$(eval $(patsubst %-m,%-y,$v) += $($v))
$(eval modules: $($v:%.mo=%$(DSOSUF))),

View File

@ -1,31 +0,0 @@
From 85bd20ed57493f867626fd7d5fa073b4476ae301 Mon Sep 17 00:00:00 2001
From: Max Reitz <mreitz@redhat.com>
Date: Mon, 1 Jun 2015 18:09:17 +0200
Subject: [PATCH] qcow2: Set MIN_L2_CACHE_SIZE to 2
The L2 cache must cover at least two L2 tables, because during COW two
L2 tables are accessed simultaneously.
Reported-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Max Reitz <mreitz@redhat.com>
Tested-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Alberto Garcia <berto@igalia.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
---
block/qcow2.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/block/qcow2.h b/block/qcow2.h
index 422b825..2f20949 100644
--- a/block/qcow2.h
+++ b/block/qcow2.h
@@ -62,7 +62,8 @@
#define MIN_CLUSTER_BITS 9
#define MAX_CLUSTER_BITS 21
-#define MIN_L2_CACHE_SIZE 1 /* cluster */
+/* Must be at least 2 to cover COW */
+#define MIN_L2_CACHE_SIZE 2 /* clusters */
/* Must be at least 4 to cover all cases of refcount table growth */
#define MIN_REFCOUNT_CACHE_SIZE 4 /* clusters */

View File

@ -1,43 +0,0 @@
From 90808c2a055b1e6332db307ca34ab682be60cfbf Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Mon, 13 Jul 2015 17:46:04 +0200
Subject: [PATCH] hw/arm/boot: Increase fdt alignment
The Linux kernel on aarch64 creates a page table entry at early bootup
that spans the 2MB range on memory spanning the fdt start address:
[ ALIGN_DOWN(fdt, 2MB) ... ALIGN_DOWN(fdt, 2MB) + 2MB ]
This means that when our current 4k alignment happens to fall at the end
of the aligned region, Linux tries to access memory that is not mapped.
The easy fix is to instead increase the alignment to 2MB, making Linux's
logic always succeed.
Reported-by: Andreas Schwab <schwab@suse.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
---
hw/arm/boot.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/hw/arm/boot.c b/hw/arm/boot.c
index a48d1b2..52cbd33 100644
--- a/hw/arm/boot.c
+++ b/hw/arm/boot.c
@@ -739,12 +739,12 @@ void arm_load_kernel(ARMCPU *cpu, struct arm_boot_info *info)
* we point to the kernel args.
*/
if (have_dtb(info)) {
- /* Place the DTB after the initrd in memory. Note that some
- * kernels will trash anything in the 4K page the initrd
- * ends in, so make sure the DTB isn't caught up in that.
+ /* Place the DTB after the initrd in memory. Note that the kernel
+ * maps [ ALIGN_DOWN(fdt, 2MB) ... ALGIN_DOWN(fdt, 2MB) + 2MB ]
+ * and thus needs the fdt be preferably in its own 2MB window.
*/
hwaddr dtb_start = QEMU_ALIGN_UP(info->initrd_start + initrd_size,
- 4096);
+ 2 * 1024 * 1024);
if (load_dtb(dtb_start, info, 0) < 0) {
exit(1);
}

View File

@ -1,3 +1,19 @@
-------------------------------------------------------------------
Fri Jul 17 13:36:52 UTC 2015 - afaerber@suse.de
- Update to v2.4.0-rc1: See http://wiki.qemu-project.org/ChangeLog/2.4
* Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
* Patches dropped:
0037-linux-user-Allocate-thunk-size-dyna.patch
0039-s390x-Fix-stoc-direction.patch
0040-s390x-Add-interlocked-access-facili.patch
0041-fdc-force-the-fifo-access-to-be-in-.patch
0042-rules.mak-Force-CFLAGS-for-all-obje.patch
0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
0044-hw-arm-boot-Increase-fdt-alignment.patch
* Patches renamed:
0038-Revert-Revert-seccomp-tests-that-al.patch -> 0037-Revert-Revert-seccomp-tests-that-al.patch
-------------------------------------------------------------------
Mon Jun 1 21:52:44 UTC 2015 - agraf@suse.com

View File

@ -21,9 +21,9 @@ Url: http://www.qemu.org/
Summary: Universal CPU emulator
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
Version: 2.3.0
Version: 2.3.91
Release: 0
Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
Source: http://wiki.qemu.org/download/qemu-2.4.0-rc1.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
@ -61,14 +61,7 @@ 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-linux-user-Allocate-thunk-size-dyna.patch
Patch0038: 0038-Revert-Revert-seccomp-tests-that-al.patch
Patch0039: 0039-s390x-Fix-stoc-direction.patch
Patch0040: 0040-s390x-Add-interlocked-access-facili.patch
Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch
Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
Patch0044: 0044-hw-arm-boot-Increase-fdt-alignment.patch
Patch0037: 0037-Revert-Revert-seccomp-tests-that-al.patch
# Please do not add patches manually here, run update_git.sh.
# this is to make lint happy
Source300: qemu-rpmlintrc
@ -127,7 +120,7 @@ the cards could be pure software constructs.
This sub-package contains development files for the Smartcard library.
%prep
%setup -q -n qemu-2.3.0
%setup -q -n qemu-2.4.0-rc1
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@ -165,13 +158,6 @@ This sub-package contains development files for the Smartcard library.
%patch0035 -p1
%patch0036 -p1
%patch0037 -p1
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
%patch0041 -p1
%patch0042 -p1
%patch0043 -p1
%patch0044 -p1
%build
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \

View File

@ -23,7 +23,7 @@ License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
QEMU_VERSION
Release: 0
Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
Source: http://wiki.qemu.org/download/qemu-2.4.0-rc1.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
PATCH_FILES
# Please do not add patches manually here, run update_git.sh.
@ -84,7 +84,7 @@ the cards could be pure software constructs.
This sub-package contains development files for the Smartcard library.
%prep
%setup -q -n qemu-2.3.0
%setup -q -n qemu-2.4.0-rc1
PATCH_EXEC
%build

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b6bab7f763d5be73e7cb5ee7d4c8365b7a8df2972c52fa5ded18893bd8281588
size 24683085

Binary file not shown.

3
qemu-2.4.0-rc1.tar.bz2 Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c0c6072ed9196ee17b4120f03fa9cdf9f63e893f7cb8008aa12ea1678450a481
size 25052566

BIN
qemu-2.4.0-rc1.tar.bz2.sig Normal file

Binary file not shown.

View File

@ -1,3 +1,19 @@
-------------------------------------------------------------------
Fri Jul 17 13:36:49 UTC 2015 - afaerber@suse.de
- Update to v2.4.0-rc1: See http://wiki.qemu-project.org/ChangeLog/2.4
* Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
* Patches dropped:
0037-linux-user-Allocate-thunk-size-dyna.patch
0039-s390x-Fix-stoc-direction.patch
0040-s390x-Add-interlocked-access-facili.patch
0041-fdc-force-the-fifo-access-to-be-in-.patch
0042-rules.mak-Force-CFLAGS-for-all-obje.patch
0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
0044-hw-arm-boot-Increase-fdt-alignment.patch
* Patches renamed:
0038-Revert-Revert-seccomp-tests-that-al.patch -> 0037-Revert-Revert-seccomp-tests-that-al.patch
-------------------------------------------------------------------
Mon Jun 1 21:52:41 UTC 2015 - agraf@suse.com

View File

@ -21,9 +21,9 @@ Url: http://www.qemu.org/
Summary: Universal CPU emulator
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
Version: 2.3.0
Version: 2.3.91
Release: 0
Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
Source: http://wiki.qemu.org/download/qemu-2.4.0-rc1.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
@ -61,14 +61,7 @@ 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-linux-user-Allocate-thunk-size-dyna.patch
Patch0038: 0038-Revert-Revert-seccomp-tests-that-al.patch
Patch0039: 0039-s390x-Fix-stoc-direction.patch
Patch0040: 0040-s390x-Add-interlocked-access-facili.patch
Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch
Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
Patch0044: 0044-hw-arm-boot-Increase-fdt-alignment.patch
Patch0037: 0037-Revert-Revert-seccomp-tests-that-al.patch
# Please do not add patches manually here, run update_git.sh.
# this is to make lint happy
Source300: qemu-rpmlintrc
@ -121,7 +114,7 @@ emulations. This can be used together with the OBS build script to
run cross-architecture builds.
%prep
%setup -q -n qemu-2.3.0
%setup -q -n qemu-2.4.0-rc1
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@ -159,13 +152,6 @@ run cross-architecture builds.
%patch0035 -p1
%patch0036 -p1
%patch0037 -p1
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
%patch0041 -p1
%patch0042 -p1
%patch0043 -p1
%patch0044 -p1
%build
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \

View File

@ -23,7 +23,7 @@ License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
QEMU_VERSION
Release: 0
Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
Source: http://wiki.qemu.org/download/qemu-2.4.0-rc1.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
PATCH_FILES
# Please do not add patches manually here, run update_git.sh.
@ -78,7 +78,7 @@ emulations. This can be used together with the OBS build script to
run cross-architecture builds.
%prep
%setup -q -n qemu-2.3.0
%setup -q -n qemu-2.4.0-rc1
PATCH_EXEC
%build

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
Fri Jul 17 13:36:45 UTC 2015 - afaerber@suse.de
- Update to v2.4.0-rc1: See http://wiki.qemu-project.org/ChangeLog/2.4
* Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
* Patches dropped:
0037-linux-user-Allocate-thunk-size-dyna.patch
0039-s390x-Fix-stoc-direction.patch
0040-s390x-Add-interlocked-access-facili.patch
0041-fdc-force-the-fifo-access-to-be-in-.patch
0042-rules.mak-Force-CFLAGS-for-all-obje.patch
0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
0044-hw-arm-boot-Increase-fdt-alignment.patch
* Patches renamed:
0038-Revert-Revert-seccomp-tests-that-al.patch -> 0037-Revert-Revert-seccomp-tests-that-al.patch
* Package new vgabios-virtio.bin
* target-x86_64.conf was dropped
* Add qemu-block-dmg module sub-package
* Set QTEST_QEMU_IMG variable for ahci-test
* --enable-quorum and --enable-vnc-ws are no longer available
-------------------------------------------------------------------
Mon Jul 13 16:10:13 UTC 2015 - agraf@suse.com

View File

@ -43,10 +43,10 @@ Url: http://www.qemu.org/
Summary: Universal CPU emulator
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
Version: 2.3.0
Version: 2.3.91
Release: 0
Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
Source99: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2.sig
Source: http://wiki.qemu.org/download/qemu-2.4.0-rc1.tar.bz2
Source99: http://wiki.qemu.org/download/qemu-2.4.0-rc1.tar.bz2.sig
Source1: 80-kvm.rules
Source2: qemu-ifup
Source3: kvm_stat
@ -92,14 +92,7 @@ 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-linux-user-Allocate-thunk-size-dyna.patch
Patch0038: 0038-Revert-Revert-seccomp-tests-that-al.patch
Patch0039: 0039-s390x-Fix-stoc-direction.patch
Patch0040: 0040-s390x-Add-interlocked-access-facili.patch
Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch
Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
Patch0044: 0044-hw-arm-boot-Increase-fdt-alignment.patch
Patch0037: 0037-Revert-Revert-seccomp-tests-that-al.patch
# Please do not add QEMU patches manually here.
# Run update_git.sh to regenerate this queue.
@ -269,9 +262,9 @@ Recommends: qemu-ksm = %{version}
%define built_firmware_files {acpi-dsdt.aml bios.bin bios-256k.bin \
q35-acpi-dsdt.aml sgabios.bin vgabios.bin vgabios-cirrus.bin \
vgabios-stdvga.bin vgabios-vmware.bin vgabios-qxl.bin optionrom/linuxboot.bin \
optionrom/multiboot.bin optionrom/kvmvapic.bin pxe-e1000.rom pxe-pcnet.rom \
pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
%description
QEMU is an extremely well-performing CPU emulator that allows you to
@ -420,6 +413,21 @@ as PC and PowerMac systems.
This sub-package contains a module for accessing network-based image files
over a network connection from qemu-img tool and QEMU system emulation.
%package block-dmg
Summary: Universal CPU emulator -- DMG block support
Group: System/Emulators/PC
%{qemu_module_conflicts}
%description block-dmg
QEMU is an extremely well-performing CPU emulator that allows you to
choose between simulating an entire system and running userspace
binaries for different architectures under your native operating
system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well
as PC and PowerMac systems.
This sub-package contains a module for accessing Mac OS X image files
from qemu-img tool and QEMU system emulation.
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%package block-gluster
Summary: Universal CPU emulator -- GlusterFS block support
@ -490,7 +498,7 @@ This sub-package contains the guest agent.
%package seabios
Summary: X86 BIOS for QEMU
Group: System/Emulators/PC
Version: 1.8.1
Version: 1.8.2
Release: 0
%if 0%{?suse_version} > %{noarch_supported}
BuildArch: noarch
@ -504,7 +512,7 @@ is the default BIOS for QEMU.
%package vgabios
Summary: VGA BIOSes for QEMU
Group: System/Emulators/PC
Version: 1.8.1
Version: 1.8.2
Release: 0
%if 0%{?suse_version} > %{noarch_supported}
BuildArch: noarch
@ -561,7 +569,7 @@ This package provides a service file for starting and stopping KSM.
%endif # !qemu-testsuite
%prep
%setup -q -n qemu-2.3.0
%setup -q -n qemu-2.4.0-rc1
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@ -599,13 +607,6 @@ This package provides a service file for starting and stopping KSM.
%patch0035 -p1
%patch0036 -p1
%patch0037 -p1
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
%patch0041 -p1
%patch0042 -p1
%patch0043 -p1
%patch0044 -p1
%if %{build_x86_fw_from_source}
pushd roms/seabios
@ -695,11 +696,6 @@ popd
%else
--enable-numa \
%endif
%endif
%if 0%{?suse_version} >= 1310
--enable-quorum \
%else
--disable-quorum \
%endif
--disable-rbd \
%if 0%{?suse_version} >= 1315
@ -750,7 +746,6 @@ popd
--enable-vnc-png \
--enable-vnc-sasl \
--enable-vnc-tls \
--enable-vnc-ws \
%ifarch x86_64
--enable-xen \
--enable-xen-pci-passthrough \
@ -782,6 +777,7 @@ done
%check
%if "%{name}" == "qemu-testsuite"
export QTEST_QEMU_IMG=%{_bindir}/qemu-img
%if 0%{?suse_version} >= 1310
make check-report.html V=1
install -D -m 644 check-report.html %{buildroot}%{_datadir}/qemu/check-report.html
@ -815,7 +811,8 @@ rm $RPM_BUILD_ROOT/%_libdir/pkgconfig/libcacard.pc
rm -fr $RPM_BUILD_ROOT/%_prefix/include/cacard
%if ! %{build_x86_fw_from_source}
for f in acpi-dsdt.aml q35-acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-vmware.bin vgabios.bin; do
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
vgabios.bin; do
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
done
%endif
@ -926,7 +923,6 @@ fi
%_datadir/%name/kvmvapic.bin
%_datadir/%name/linuxboot.bin
%_datadir/%name/multiboot.bin
%config %_sysconfdir/%name/target-x86_64.conf
%files ppc
%defattr(-, root, root)
@ -994,6 +990,10 @@ fi
%defattr(-, root, root)
%_libdir/%name/block-curl.so
%files block-dmg
%defattr(-, root, root)
%_libdir/%name/block-dmg.so
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%files block-gluster
%defattr(-, root, root)
@ -1023,6 +1023,7 @@ fi
%_datadir/%name/vgabios-cirrus.bin
%_datadir/%name/vgabios-qxl.bin
%_datadir/%name/vgabios-stdvga.bin
%_datadir/%name/vgabios-virtio.bin
%_datadir/%name/vgabios-vmware.bin
%files sgabios

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
Fri Jul 17 13:36:45 UTC 2015 - afaerber@suse.de
- Update to v2.4.0-rc1: See http://wiki.qemu-project.org/ChangeLog/2.4
* Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.4
* Patches dropped:
0037-linux-user-Allocate-thunk-size-dyna.patch
0039-s390x-Fix-stoc-direction.patch
0040-s390x-Add-interlocked-access-facili.patch
0041-fdc-force-the-fifo-access-to-be-in-.patch
0042-rules.mak-Force-CFLAGS-for-all-obje.patch
0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
0044-hw-arm-boot-Increase-fdt-alignment.patch
* Patches renamed:
0038-Revert-Revert-seccomp-tests-that-al.patch -> 0037-Revert-Revert-seccomp-tests-that-al.patch
* Package new vgabios-virtio.bin
* target-x86_64.conf was dropped
* Add qemu-block-dmg module sub-package
* Set QTEST_QEMU_IMG variable for ahci-test
* --enable-quorum and --enable-vnc-ws are no longer available
-------------------------------------------------------------------
Mon Jul 13 16:10:13 UTC 2015 - agraf@suse.com

View File

@ -43,10 +43,10 @@ Url: http://www.qemu.org/
Summary: Universal CPU emulator
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
Version: 2.3.0
Version: 2.3.91
Release: 0
Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
Source99: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2.sig
Source: http://wiki.qemu.org/download/qemu-2.4.0-rc1.tar.bz2
Source99: http://wiki.qemu.org/download/qemu-2.4.0-rc1.tar.bz2.sig
Source1: 80-kvm.rules
Source2: qemu-ifup
Source3: kvm_stat
@ -92,14 +92,7 @@ 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-linux-user-Allocate-thunk-size-dyna.patch
Patch0038: 0038-Revert-Revert-seccomp-tests-that-al.patch
Patch0039: 0039-s390x-Fix-stoc-direction.patch
Patch0040: 0040-s390x-Add-interlocked-access-facili.patch
Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch
Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch
Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch
Patch0044: 0044-hw-arm-boot-Increase-fdt-alignment.patch
Patch0037: 0037-Revert-Revert-seccomp-tests-that-al.patch
# Please do not add QEMU patches manually here.
# Run update_git.sh to regenerate this queue.
@ -269,9 +262,9 @@ Recommends: qemu-ksm = %{version}
%define built_firmware_files {acpi-dsdt.aml bios.bin bios-256k.bin \
q35-acpi-dsdt.aml sgabios.bin vgabios.bin vgabios-cirrus.bin \
vgabios-stdvga.bin vgabios-vmware.bin vgabios-qxl.bin optionrom/linuxboot.bin \
optionrom/multiboot.bin optionrom/kvmvapic.bin pxe-e1000.rom pxe-pcnet.rom \
pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
%description
QEMU is an extremely well-performing CPU emulator that allows you to
@ -420,6 +413,21 @@ as PC and PowerMac systems.
This sub-package contains a module for accessing network-based image files
over a network connection from qemu-img tool and QEMU system emulation.
%package block-dmg
Summary: Universal CPU emulator -- DMG block support
Group: System/Emulators/PC
%{qemu_module_conflicts}
%description block-dmg
QEMU is an extremely well-performing CPU emulator that allows you to
choose between simulating an entire system and running userspace
binaries for different architectures under your native operating
system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well
as PC and PowerMac systems.
This sub-package contains a module for accessing Mac OS X image files
from qemu-img tool and QEMU system emulation.
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%package block-gluster
Summary: Universal CPU emulator -- GlusterFS block support
@ -490,7 +498,7 @@ This sub-package contains the guest agent.
%package seabios
Summary: X86 BIOS for QEMU
Group: System/Emulators/PC
Version: 1.8.1
Version: 1.8.2
Release: 0
%if 0%{?suse_version} > %{noarch_supported}
BuildArch: noarch
@ -504,7 +512,7 @@ is the default BIOS for QEMU.
%package vgabios
Summary: VGA BIOSes for QEMU
Group: System/Emulators/PC
Version: 1.8.1
Version: 1.8.2
Release: 0
%if 0%{?suse_version} > %{noarch_supported}
BuildArch: noarch
@ -561,7 +569,7 @@ This package provides a service file for starting and stopping KSM.
%endif # !qemu-testsuite
%prep
%setup -q -n qemu-2.3.0
%setup -q -n qemu-2.4.0-rc1
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@ -599,13 +607,6 @@ This package provides a service file for starting and stopping KSM.
%patch0035 -p1
%patch0036 -p1
%patch0037 -p1
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
%patch0041 -p1
%patch0042 -p1
%patch0043 -p1
%patch0044 -p1
%if %{build_x86_fw_from_source}
pushd roms/seabios
@ -695,11 +696,6 @@ popd
%else
--enable-numa \
%endif
%endif
%if 0%{?suse_version} >= 1310
--enable-quorum \
%else
--disable-quorum \
%endif
--disable-rbd \
%if 0%{?suse_version} >= 1315
@ -750,7 +746,6 @@ popd
--enable-vnc-png \
--enable-vnc-sasl \
--enable-vnc-tls \
--enable-vnc-ws \
%ifarch x86_64
--enable-xen \
--enable-xen-pci-passthrough \
@ -782,6 +777,7 @@ done
%check
%if "%{name}" == "qemu-testsuite"
export QTEST_QEMU_IMG=%{_bindir}/qemu-img
%if 0%{?suse_version} >= 1310
make check-report.html V=1
install -D -m 644 check-report.html %{buildroot}%{_datadir}/qemu/check-report.html
@ -815,7 +811,8 @@ rm $RPM_BUILD_ROOT/%_libdir/pkgconfig/libcacard.pc
rm -fr $RPM_BUILD_ROOT/%_prefix/include/cacard
%if ! %{build_x86_fw_from_source}
for f in acpi-dsdt.aml q35-acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-vmware.bin vgabios.bin; do
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
vgabios.bin; do
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
done
%endif
@ -926,7 +923,6 @@ fi
%_datadir/%name/kvmvapic.bin
%_datadir/%name/linuxboot.bin
%_datadir/%name/multiboot.bin
%config %_sysconfdir/%name/target-x86_64.conf
%files ppc
%defattr(-, root, root)
@ -994,6 +990,10 @@ fi
%defattr(-, root, root)
%_libdir/%name/block-curl.so
%files block-dmg
%defattr(-, root, root)
%_libdir/%name/block-dmg.so
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%files block-gluster
%defattr(-, root, root)
@ -1023,6 +1023,7 @@ fi
%_datadir/%name/vgabios-cirrus.bin
%_datadir/%name/vgabios-qxl.bin
%_datadir/%name/vgabios-stdvga.bin
%_datadir/%name/vgabios-virtio.bin
%_datadir/%name/vgabios-vmware.bin
%files sgabios

View File

@ -45,8 +45,8 @@ License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
Group: System/Emulators/PC
QEMU_VERSION
Release: 0
Source: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2
Source99: http://wiki.qemu.org/download/qemu-2.3.0.tar.bz2.sig
Source: http://wiki.qemu.org/download/qemu-2.4.0-rc1.tar.bz2
Source99: http://wiki.qemu.org/download/qemu-2.4.0-rc1.tar.bz2.sig
Source1: 80-kvm.rules
Source2: qemu-ifup
Source3: kvm_stat
@ -226,9 +226,9 @@ Recommends: qemu-ksm = %{version}
%define built_firmware_files {acpi-dsdt.aml bios.bin bios-256k.bin \
q35-acpi-dsdt.aml sgabios.bin vgabios.bin vgabios-cirrus.bin \
vgabios-stdvga.bin vgabios-vmware.bin vgabios-qxl.bin optionrom/linuxboot.bin \
optionrom/multiboot.bin optionrom/kvmvapic.bin pxe-e1000.rom pxe-pcnet.rom \
pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
%description
QEMU is an extremely well-performing CPU emulator that allows you to
@ -377,6 +377,21 @@ as PC and PowerMac systems.
This sub-package contains a module for accessing network-based image files
over a network connection from qemu-img tool and QEMU system emulation.
%package block-dmg
Summary: Universal CPU emulator -- DMG block support
Group: System/Emulators/PC
%{qemu_module_conflicts}
%description block-dmg
QEMU is an extremely well-performing CPU emulator that allows you to
choose between simulating an entire system and running userspace
binaries for different architectures under your native operating
system. It currently emulates x86, ARM, PowerPC and SPARC CPUs as well
as PC and PowerMac systems.
This sub-package contains a module for accessing Mac OS X image files
from qemu-img tool and QEMU system emulation.
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%package block-gluster
Summary: Universal CPU emulator -- GlusterFS block support
@ -518,7 +533,7 @@ This package provides a service file for starting and stopping KSM.
%endif # !qemu-testsuite
%prep
%setup -q -n qemu-2.3.0
%setup -q -n qemu-2.4.0-rc1
PATCH_EXEC
%if %{build_x86_fw_from_source}
@ -609,11 +624,6 @@ popd
%else
--enable-numa \
%endif
%endif
%if 0%{?suse_version} >= 1310
--enable-quorum \
%else
--disable-quorum \
%endif
--disable-rbd \
%if 0%{?suse_version} >= 1315
@ -664,7 +674,6 @@ popd
--enable-vnc-png \
--enable-vnc-sasl \
--enable-vnc-tls \
--enable-vnc-ws \
%ifarch x86_64
--enable-xen \
--enable-xen-pci-passthrough \
@ -696,6 +705,7 @@ done
%check
%if "%{name}" == "qemu-testsuite"
export QTEST_QEMU_IMG=%{_bindir}/qemu-img
%if 0%{?suse_version} >= 1310
make check-report.html V=1
install -D -m 644 check-report.html %{buildroot}%{_datadir}/qemu/check-report.html
@ -729,7 +739,8 @@ rm $RPM_BUILD_ROOT/%_libdir/pkgconfig/libcacard.pc
rm -fr $RPM_BUILD_ROOT/%_prefix/include/cacard
%if ! %{build_x86_fw_from_source}
for f in acpi-dsdt.aml q35-acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-vmware.bin vgabios.bin; do
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
vgabios.bin; do
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
done
%endif
@ -840,7 +851,6 @@ fi
%_datadir/%name/kvmvapic.bin
%_datadir/%name/linuxboot.bin
%_datadir/%name/multiboot.bin
%config %_sysconfdir/%name/target-x86_64.conf
%files ppc
%defattr(-, root, root)
@ -908,6 +918,10 @@ fi
%defattr(-, root, root)
%_libdir/%name/block-curl.so
%files block-dmg
%defattr(-, root, root)
%_libdir/%name/block-dmg.so
%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%files block-gluster
%defattr(-, root, root)
@ -937,6 +951,7 @@ fi
%_datadir/%name/vgabios-cirrus.bin
%_datadir/%name/vgabios-qxl.bin
%_datadir/%name/vgabios-stdvga.bin
%_datadir/%name/vgabios-virtio.bin
%_datadir/%name/vgabios-vmware.bin
%files sgabios

View File

@ -11,8 +11,8 @@
GIT_TREE=git://github.com/openSUSE/qemu.git
GIT_LOCAL_TREE=~/git/qemu-opensuse
GIT_BRANCH=opensuse-2.3
GIT_UPSTREAM_TAG=v2.3.0
GIT_BRANCH=opensuse-2.4
GIT_UPSTREAM_TAG=v2.4.0-rc1
GIT_DIR=/dev/shm/qemu-factory-git-dir
CMP_DIR=/dev/shm/qemu-factory-cmp-dir