Accepting request 285739 from Virtualization

Update to QEMU v2.2.0

OBS-URL: https://build.opensuse.org/request/show/285739
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/qemu?expand=0&rev=105
This commit is contained in:
Dominique Leuenberger 2015-02-14 12:53:00 +00:00 committed by Git OBS Bridge
commit b39cbb1cb9
55 changed files with 469 additions and 611 deletions

View File

@ -1,4 +1,4 @@
From cd92cadeac41448d9da05993dc36837fb18774d0 Mon Sep 17 00:00:00 2001
From a7cec19ab72bbe4172f010a2c56664ca3495034a 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 1141054..b7a88f4 100644
index e11b208..48b6513 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 251831808a392ee0c9dbe4fc0930c8a776a00eb0 Mon Sep 17 00:00:00 2001
From 9fa4ad4feafe57010a39fcc1e02e482989fc07d1 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 b453a39..9df92da 100644
index 5c14c1e..46a4366 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -816,15 +816,22 @@ void cpu_loop(CPUARMState *env)
@@ -815,15 +815,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 b7a88f4..5982a88 100644
index 48b6513..92ba798 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -25,6 +25,7 @@
@ -93,7 +93,7 @@ index b7a88f4..5982a88 100644
return 1; /* indicates that the signal was queued */
}
}
@@ -707,8 +713,24 @@ int do_sigaction(int sig, const struct target_sigaction *act,
@@ -717,8 +723,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;
@ -119,11 +119,11 @@ index b7a88f4..5982a88 100644
ignore state to avoid getting unexpected interrupted
syscalls */
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index a50229d..4673f28 100644
index aaac6a2..4a2bdcb 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5337,6 +5337,87 @@ static int do_open(void *cpu_env, const char *pathname, int flags, mode_t mode)
return get_errno(open(path(pathname), flags, mode));
@@ -5494,6 +5494,87 @@ static target_timer_t get_timer_id(abi_long arg)
return timerid;
}
+int syscall_restartable(int syscall_nr)
@ -210,7 +210,7 @@ index a50229d..4673f28 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>. */
@@ -5350,6 +5431,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -5507,6 +5588,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 a50229d..4673f28 100644
#ifdef DEBUG
gemu_log("syscall %d", num);
@@ -8601,7 +8688,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -8776,7 +8863,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 a50229d..4673f28 100644
}
switch(arg2) {
@@ -9539,6 +9626,7 @@ fail:
@@ -9792,6 +9879,7 @@ fail:
#endif
if(do_strace)
print_syscall_ret(num, ret);

View File

@ -1,4 +1,4 @@
From 9def5a721b4ba27bff7ae6acebf01a1e12a2d5d3 Mon Sep 17 00:00:00 2001
From bb576464efb0640bbdd813fe6c31cbb4a9051cf0 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 c82f7e1ea51d8b07c0b4d3b911dde45bcbd02560 Mon Sep 17 00:00:00 2001
From e5705a68df89fa4d2cd865ee2dbdddac6eaba9e7 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

View File

@ -1,4 +1,4 @@
From a3e7d59e61520032f4426310195915e71622631c Mon Sep 17 00:00:00 2001
From 4d22a2c7752412d78e22bca9c564fff305ae61d1 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
@ -20,10 +20,10 @@ Signed-off-by: Ulrich Hecht <uli@suse.de>
create mode 100644 linux-user/syscall_types_alsa.h
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 609b27c..d2b7a50 100644
index e672655..921d482 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -318,6 +318,11 @@
@@ -319,6 +319,11 @@
IOCTL(VFAT_IOCTL_READDIR_BOTH, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
IOCTL(VFAT_IOCTL_READDIR_SHORT, IOC_R, MK_PTR(MK_ARRAY(MK_STRUCT(STRUCT_dirent), 2)))
@ -2255,7 +2255,7 @@ index 0000000..e09a30d
+ unsigned char *code;
+};
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index c9e6323..e4ae769 100644
index ebb3be1..3a55989 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -2562,6 +2562,8 @@ struct target_ucred {
@ -2266,9 +2266,9 @@ index c9e6323..e4ae769 100644
+
#endif
typedef int32_t target_timer_t;
diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
index 9d0c92d..193bee1 100644
index 1fd4ee0..e5331b4 100644
--- a/linux-user/syscall_types.h
+++ b/linux-user/syscall_types.h
@@ -83,6 +83,11 @@ STRUCT(buffmem_desc,

View File

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

View File

@ -1,4 +1,4 @@
From 5b7a59579eb7851d28eae98a3b621fc06ff2e091 Mon Sep 17 00:00:00 2001
From e69459c8896b205aadb0d3a773a4ba91d121144b 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 4673f28..9575346 100644
index 4a2bdcb..0ea86cb 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -6512,6 +6512,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -6666,6 +6666,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 0cfec315dbe8f6c8350315c22ddc83f705b65407 Mon Sep 17 00:00:00 2001
From 3db8a988406437231e54a84c59450da30988ffb5 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 9575346..82a794f 100644
index 0ea86cb..ea8e4dd 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3745,7 +3745,12 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
@@ -3844,7 +3844,12 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
ie = ioctl_entries;
for(;;) {
if (ie->target_cmd == 0) {

View File

@ -1,4 +1,4 @@
From 7e3bec5f8e91e36623521aef6a2952d1a0079c3f Mon Sep 17 00:00:00 2001
From d3903e53cc2b7163fcc66bd6c642bf6fcc433135 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 82a794f..701809e 100644
index ea8e4dd..f6187ce 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3779,6 +3779,11 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
@@ -3878,6 +3878,11 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
arg_type++;
target_size = thunk_type_size(arg_type, 0);
switch(ie->access) {
@ -30,7 +30,7 @@ index 82a794f..701809e 100644
case IOC_R:
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
if (!is_error(ret)) {
@@ -3797,6 +3802,7 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
@@ -3896,6 +3901,7 @@ static abi_long do_ioctl(int fd, abi_long 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 b990b06fedf9acb38da0e8a5921b203e1572859e Mon Sep 17 00:00:00 2001
From 7cdc20646d413b3c1e31ff1dd85a7ef67147d56d 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 8cf519b..0e23958 100644
index a612594..74af007 100644
--- a/block.c
+++ b/block.c
@@ -5624,6 +5624,9 @@ void bdrv_img_create(const char *filename, const char *fmt,
@@ -5630,6 +5630,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 8cf519b..0e23958 100644
}
diff --git a/block/vmdk.c b/block/vmdk.c
index 0517bba..3eeb7bd 100644
index 2cbfd3e..caefe19 100644
--- a/block/vmdk.c
+++ b/block/vmdk.c
@@ -1752,9 +1752,12 @@ static int vmdk_create(const char *filename, QemuOpts *opts, Error **errp)
@@ -1818,9 +1818,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 0517bba..3eeb7bd 100644
} else if (strcmp(adapter_type, "ide") &&
strcmp(adapter_type, "buslogic") &&
strcmp(adapter_type, "lsilogic") &&
@@ -2151,6 +2154,11 @@ static QemuOptsList vmdk_create_opts = {
@@ -2223,6 +2226,11 @@ static QemuOptsList vmdk_create_opts = {
.help = "Enable efficient zero writes "
"using the zeroed-grain GTE feature"
},
@ -65,10 +65,10 @@ index 0517bba..3eeb7bd 100644
}
};
diff --git a/include/block/block_int.h b/include/block/block_int.h
index 7b541a0..a4e1a97 100644
index a1c17b9..9d03953 100644
--- a/include/block/block_int.h
+++ b/include/block/block_int.h
@@ -40,10 +40,12 @@
@@ -41,10 +41,12 @@
#define BLOCK_FLAG_ENCRYPT 1
#define BLOCK_FLAG_COMPAT6 4
#define BLOCK_FLAG_LAZY_REFCOUNTS 8
@ -82,10 +82,10 @@ index 7b541a0..a4e1a97 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 d4518e7..629cd80 100644
index a42335c..21c3bae 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -1430,6 +1430,13 @@ static int img_convert(int argc, char **argv)
@@ -1583,6 +1583,13 @@ static int img_convert(int argc, char **argv)
}
}

View File

@ -1,4 +1,4 @@
From fe047f7a640629933a20b35c742172d60b198738 Mon Sep 17 00:00:00 2001
From 6a0fa7200207763976f8393156318e77a12e0625 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,7 +37,7 @@ 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 137d0b0..57181a4 100644
index e9ff1ee..8372b29 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -34,6 +34,10 @@ endif
@ -51,7 +51,7 @@ index 137d0b0..57181a4 100644
config-target.h: config-target.h-timestamp
config-target.h-timestamp: config-target.mak
@@ -101,6 +105,8 @@ QEMU_CFLAGS+=-I$(SRC_PATH)/linux-user/$(TARGET_ABI_DIR) -I$(SRC_PATH)/linux-user
@@ -108,6 +112,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 137d0b0..57181a4 100644
endif #CONFIG_LINUX_USER
#########################################################
@@ -149,7 +155,11 @@ endif # CONFIG_SOFTMMU
@@ -156,7 +162,11 @@ endif # CONFIG_SOFTMMU
# Workaround for http://gcc.gnu.org/PR55489, see configure.
%/translate.o: QEMU_CFLAGS += $(TRANSLATE_OPT_CFLAGS)
@ -71,8 +71,8 @@ index 137d0b0..57181a4 100644
+endif
all-obj-y := $(obj-y)
block-obj-y :=
@@ -167,6 +177,9 @@ all-obj-$(CONFIG_SOFTMMU) += $(block-obj-y)
target-obj-y :=
@@ -179,6 +189,9 @@ all-obj-$(CONFIG_SOFTMMU) += $(block-obj-y)
$(QEMU_PROG_BUILD): $(all-obj-y) ../libqemuutil.a ../libqemustub.a
$(call LINK,$^)

View File

@ -1,4 +1,4 @@
From 00558f88ef659515a59debcbd19e304d8a884a5f Mon Sep 17 00:00:00 2001
From 5fb70dbaac4a3508890ff482446276e9fc2f3cc8 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,11 +13,11 @@ 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 765bd94..33818c1 100644
index 71ac104..6d31d8f 100644
--- a/exec.c
+++ b/exec.c
@@ -1037,11 +1037,13 @@ static void *file_ram_alloc(RAMBlock *block,
return NULL;
@@ -1108,11 +1108,13 @@ static void *file_ram_alloc(RAMBlock *block,
goto error;
}
+#ifndef TARGET_PPC
@ -29,4 +29,4 @@ index 765bd94..33818c1 100644
+#endif
/* Make name safe to use with mkstemp by replacing '/' with '_'. */
sanitized_name = g_strdup(block->mr->name);
sanitized_name = g_strdup(memory_region_name(block->mr));

View File

@ -1,4 +1,4 @@
From 222ee94ba6e46ef89a6cc0de6f03b25310af02a7 Mon Sep 17 00:00:00 2001
From 55e52ca388a49f49a186deb9404de2f97905af3e 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

View File

@ -1,4 +1,4 @@
From 5d5c84486c1a16916376b8d0b757eab4a2c45ddd Mon Sep 17 00:00:00 2001
From 2a1484963a8861e054abdfc178aadd48132730b3 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 01b4a4a0570ebb8808233a33fb1e19b247e1bef5 Mon Sep 17 00:00:00 2001
From 74eb0ee82d3d7550e4cd77a06ee2550edef437ab 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
@ -23,10 +23,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
4 files changed, 10 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index d2b7a50..0680dc4 100644
index 921d482..c180faf 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -330,6 +330,7 @@
@@ -331,6 +331,7 @@
IOCTL(LOOP_SET_STATUS64, IOC_W, MK_PTR(MK_STRUCT(STRUCT_loop_info64)))
IOCTL(LOOP_GET_STATUS64, IOC_W, MK_PTR(MK_STRUCT(STRUCT_loop_info64)))
IOCTL(LOOP_CHANGE_FD, 0, TYPE_INT)
@ -46,10 +46,10 @@ index 8974caa..810ae61 100644
#endif
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 701809e..4ce7b84 100644
index f6187ce..84621cc 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3722,6 +3722,13 @@ static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp,
@@ -3821,6 +3821,13 @@ static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp,
return get_errno(ioctl(fd, ie->host_cmd, sig));
}
@ -64,7 +64,7 @@ index 701809e..4ce7b84 100644
#define IOCTL(cmd, access, ...) \
{ TARGET_ ## cmd, cmd, #cmd, access, 0, { __VA_ARGS__ } },
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index e4ae769..a6aa6b5 100644
index 3a55989..d6ccacc 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -1061,6 +1061,7 @@ struct target_pollfd {

View File

@ -1,33 +0,0 @@
From cbdee3c89ee3a9eb92e4950331a4467ef3b631f7 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Tue, 29 May 2012 15:30:01 +0200
Subject: [PATCH] target-arm: linux-user: no tb_flush on reset
When running automoc4 as linux-user guest program, it segfaults right after
it creates a thread. Bisecting pointed to commit a84fac1426 which introduces
tb_flush on reset.
So something in our thread creation is broken. But for now, let's revert the
change to at least get a working build again.
[AF: Rebased, fixed typo]
---
target-arm/cpu.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/target-arm/cpu.c b/target-arm/cpu.c
index 05e52e0..96f8cca 100644
--- a/target-arm/cpu.c
+++ b/target-arm/cpu.c
@@ -165,7 +165,11 @@ static void arm_cpu_reset(CPUState *s)
* bake assumptions about into translated code, so we need to
* tb_flush().
*/
+#if !defined(CONFIG_USER_ONLY)
+ /* XXX hack alert! automoc4 segfaults after spawning a new thread with
+ * this flush enabled */
tb_flush(env);
+#endif
#ifndef CONFIG_USER_ONLY
if (kvm_enabled()) {

View File

@ -1,4 +1,4 @@
From 097619e159ed8c4c0209aacf93e9a3a64f853aef Mon Sep 17 00:00:00 2001
From b78fc9fe9c68f6c5b1a647a83d203eb7a41f587f 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
@ -48,7 +48,7 @@ index 34a5615..7ebf953 100644
}
diff --git a/tcg/tcg.c b/tcg/tcg.c
index c068990..e404655 100644
index 7a84b87..7f582f7 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -39,6 +39,8 @@
@ -100,7 +100,7 @@ index c068990..e404655 100644
/* Count total number of arguments and allocate the corresponding
space */
total_args = 0;
@@ -2560,10 +2586,12 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
@@ -2558,10 +2584,12 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
}
#endif
@ -113,7 +113,7 @@ index c068990..e404655 100644
return tcg_current_code_size(s);
}
@@ -2575,7 +2603,11 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
@@ -2573,7 +2601,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 c068990..e404655 100644
#ifdef CONFIG_PROFILER
diff --git a/tcg/tcg.h b/tcg/tcg.h
index 997a704..1815965 100644
index 7285f71..ea7ef8d 100644
--- a/tcg/tcg.h
+++ b/tcg/tcg.h
@@ -27,6 +27,7 @@
@ -138,7 +138,7 @@ index 997a704..1815965 100644
#include "tcg-target.h"
/* Default target word size to pointer size. */
@@ -554,6 +555,7 @@ struct TCGContext {
@@ -533,6 +534,7 @@ struct TCGContext {
/* The TCGBackendData structure is private to tcg-target.c. */
struct TCGBackendData *be;
@ -146,7 +146,7 @@ index 997a704..1815965 100644
};
extern TCGContext tcg_ctx;
@@ -732,6 +734,9 @@ void tcg_gen_shifti_i64(TCGv_i64 ret, TCGv_i64 arg1,
@@ -711,6 +713,9 @@ void tcg_gen_shifti_i64(TCGv_i64 ret, TCGv_i64 arg1,
TCGArg *tcg_optimize(TCGContext *s, uint16_t *tcg_opc_ptr, TCGArg *args,
TCGOpDef *tcg_op_def);

View File

@ -1,4 +1,4 @@
From d708c8ddc376dab7cf20421553d2f066ff0e4c67 Mon Sep 17 00:00:00 2001
From e8e669d084f6317fb739c38077bf4f26bbf5ef95 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 4ce7b84..9218392 100644
index 84621cc..6fc55b4 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -4427,6 +4427,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
@@ -4526,6 +4526,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 5c92fd785687b31d2af90d9a67dfac7763f58ed0 Mon Sep 17 00:00:00 2001
From dce867750093888070a7875de37111af6a0d2b58 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 8f7e11b..9b46934 100644
index ba5c840..17f4260 100644
--- a/translate-all.c
+++ b/translate-all.c
@@ -706,19 +706,23 @@ static TranslationBlock *tb_alloc(target_ulong pc)
@@ -709,19 +709,23 @@ static TranslationBlock *tb_alloc(target_ulong pc)
{
TranslationBlock *tb;
@ -41,7 +41,7 @@ index 8f7e11b..9b46934 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. */
@@ -727,6 +731,7 @@ void tb_free(TranslationBlock *tb)
@@ -730,6 +734,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 8f7e11b..9b46934 100644
}
static inline void invalidate_page_bitmap(PageDesc *p)
@@ -784,6 +789,7 @@ void tb_flush(CPUArchState *env1)
@@ -787,6 +792,7 @@ void tb_flush(CPUArchState *env1)
((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 8f7e11b..9b46934 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");
@@ -801,6 +807,7 @@ void tb_flush(CPUArchState *env1)
@@ -804,6 +810,7 @@ void tb_flush(CPUArchState *env1)
/* XXX: flush processor icache at this point if cache flush is
expensive */
tcg_ctx.tb_ctx.tb_flush_count++;
@ -65,7 +65,7 @@ index 8f7e11b..9b46934 100644
}
#ifdef DEBUG_TB_CHECK
@@ -1107,8 +1114,10 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
@@ -1110,8 +1117,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 */
@ -76,7 +76,7 @@ index 8f7e11b..9b46934 100644
return;
}
if (!p->code_bitmap &&
@@ -1201,6 +1210,7 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
@@ -1204,6 +1213,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 8f7e11b..9b46934 100644
}
/* len must be <= 8 and start must be a multiple of len */
@@ -1412,13 +1422,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
@@ -1415,13 +1425,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
{
int m_min, m_max, m;
uintptr_t v;
@ -102,7 +102,7 @@ index 8f7e11b..9b46934 100644
return NULL;
}
/* binary search (cf Knuth) */
@@ -1429,6 +1442,7 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
@@ -1432,6 +1445,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 8f7e11b..9b46934 100644
return tb;
} else if (tc_ptr < v) {
m_max = m - 1;
@@ -1436,7 +1450,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
@@ -1439,7 +1453,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
m_min = m + 1;
}
}

View File

@ -1,4 +1,4 @@
From 99d290456ff1103918e341ceac7535bc3b4b6f49 Mon Sep 17 00:00:00 2001
From f8efdf93368a0f98d8608c44590e2c9f1ed44397 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 9218392..ce1054c 100644
index 6fc55b4..de930eb 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5208,6 +5208,25 @@ static int open_self_stat(void *cpu_env, int fd)
@@ -5344,6 +5344,25 @@ static int open_self_stat(void *cpu_env, int fd)
return 0;
}
@ -51,7 +51,7 @@ index 9218392..ce1054c 100644
static int open_self_auxv(void *cpu_env, int fd)
{
CPUState *cpu = ENV_GET_CPU((CPUArchState *)cpu_env);
@@ -5322,6 +5341,7 @@ static int do_open(void *cpu_env, const char *pathname, int flags, mode_t mode)
@@ -5458,6 +5477,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 cc0c9cec3fd3bcf86f7ddca8d6ba6a292c127cef Mon Sep 17 00:00:00 2001
From d905cad0394b79353ae9bbcaea0d44228182a45c 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
@ -16,10 +16,10 @@ v1 -> v2:
2 files changed, 3 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 0680dc4..4db9651 100644
index c180faf..8650a70 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -89,6 +89,7 @@
@@ -90,6 +90,7 @@
IOCTL_SPECIAL(FS_IOC_FIEMAP, IOC_W | IOC_R, do_ioctl_fs_ioc_fiemap,
MK_PTR(MK_STRUCT(STRUCT_fiemap)))
#endif
@ -28,7 +28,7 @@ index 0680dc4..4db9651 100644
IOCTL(SIOCATMARK, 0, TYPE_NULL)
IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(TYPE_INT))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index a6aa6b5..863cfb4 100644
index d6ccacc..be03d90 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -2477,6 +2477,8 @@ struct target_f_owner_ex {

View File

@ -1,4 +1,4 @@
From e822cfa8fea3cddc331664ce2e7df20ed630d37b Mon Sep 17 00:00:00 2001
From 4eec12072f7b5deb36f6e84a44acfdc979a16901 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
@ -16,10 +16,10 @@ v1 -> v2
2 files changed, 2 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 4db9651..46bad50 100644
index 8650a70..f9f7c83 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -90,6 +90,7 @@
@@ -91,6 +91,7 @@
MK_PTR(MK_STRUCT(STRUCT_fiemap)))
#endif
IOCTL(FS_IOC_GETFLAGS, IOC_R, MK_PTR(TYPE_LONG))
@ -28,7 +28,7 @@ index 4db9651..46bad50 100644
IOCTL(SIOCATMARK, 0, TYPE_NULL)
IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(TYPE_INT))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 863cfb4..14023c9 100644
index be03d90..f750d4c 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -2478,6 +2478,7 @@ struct target_f_owner_ex {

View File

@ -1,4 +1,4 @@
From 691935bb8dcfdbb9c64af96d8ba7421000b7d648 Mon Sep 17 00:00:00 2001
From 579bfaa3dd897fd3c0dc33072e46051c8f01c182 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 ce1054c..f00b082 100644
index de930eb..199084f 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3272,6 +3272,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
@@ -3318,6 +3318,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 c4a739a0fdfae2c61b78ccfc3893298dc79e4f6d Mon Sep 17 00:00:00 2001
From 0f3c54d2f0ba8e3b607b98eae7987226c73fdd93 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 1549625..c0f9022 100644
index 64af16d..4424eab 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -2795,6 +2795,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU
@@ -2821,6 +2821,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 fe451aa..988a1fd 100644
index eb89d62..1c96f7f 100644
--- a/vl.c
+++ b/vl.c
@@ -163,6 +163,7 @@ const char *vnc_display;
@@ -164,6 +164,7 @@ const char *vnc_display;
int acpi_enabled = 1;
int no_hpet = 0;
int fd_bootchk = 1;
@ -108,7 +108,7 @@ index fe451aa..988a1fd 100644
static int no_reboot;
int no_shutdown = 0;
int cursor_hide = 1;
@@ -3402,6 +3403,14 @@ int main(int argc, char **argv, char **envp)
@@ -3234,6 +3235,14 @@ int main(int argc, char **argv, char **envp)
case QEMU_OPTION_singlestep:
singlestep = 1;
break;

View File

@ -1,4 +1,4 @@
From d9fd5bb9acd60d2dd7f46eecf49899ae196bb199 Mon Sep 17 00:00:00 2001
From a1b57e540db8c75278ae1208ea22425f27723396 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,7 +9,7 @@ TBD (from SUSE Studio team)
1 file changed, 71 insertions(+)
diff --git a/ui/vnc.c b/ui/vnc.c
index f8d9b7d..48e6591 100644
index 5707015..f42340b 100644
--- a/ui/vnc.c
+++ b/ui/vnc.c
@@ -47,6 +47,7 @@ static const struct timeval VNC_REFRESH_LOSSY = { 2, 0 };
@ -42,7 +42,7 @@ index f8d9b7d..48e6591 100644
}
int vnc_client_io_error(VncState *vs, int ret, int last_errno)
@@ -3039,6 +3048,39 @@ char *vnc_display_local_addr(DisplayState *ds)
@@ -3050,6 +3059,39 @@ char *vnc_display_local_addr(DisplayState *ds)
return vnc_socket_local_addr("%s:%s", vs->lsock);
}
@ -82,7 +82,7 @@ index f8d9b7d..48e6591 100644
void vnc_display_open(DisplayState *ds, const char *display, Error **errp)
{
VncDisplay *vs = vnc_display;
@@ -3072,6 +3114,9 @@ void vnc_display_open(DisplayState *ds, const char *display, Error **errp)
@@ -3083,6 +3125,9 @@ void vnc_display_open(DisplayState *ds, const char *display, Error **errp)
while ((options = strchr(options, ','))) {
options++;
if (strncmp(options, "password", 8) == 0) {
@ -92,7 +92,7 @@ index f8d9b7d..48e6591 100644
if (fips_get_state()) {
error_setg(errp,
"VNC password auth disabled due to FIPS mode, "
@@ -3080,6 +3125,32 @@ void vnc_display_open(DisplayState *ds, const char *display, Error **errp)
@@ -3091,6 +3136,32 @@ void vnc_display_open(DisplayState *ds, const char *display, Error **errp)
goto fail;
}
password = 1; /* Require password auth */

View File

@ -1,4 +1,4 @@
From 45ebd4980cc8f842caa9d4e68ced2b4f134caaac Mon Sep 17 00:00:00 2001
From 62b202fd44cd3e5148c950bfdf2ee40f47b4e9a5 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
@ -13,7 +13,7 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
3 files changed, 27 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 46bad50..9b6cacb 100644
index f9f7c83..8eb4446 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -73,6 +73,24 @@
@ -42,7 +42,7 @@ index 46bad50..9b6cacb 100644
IOCTL(BLKRASET, 0, TYPE_INT)
IOCTL(BLKRAGET, IOC_R, MK_PTR(TYPE_LONG))
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 14023c9..e48481e 100644
index f750d4c..15fe242 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -930,6 +930,12 @@ struct target_pollfd {
@ -59,7 +59,7 @@ index 14023c9..e48481e 100644
#define TARGET_FIGETBSZ TARGET_IO(0x00,2) /* get the block size used for bmap */
#define TARGET_FS_IOC_FIEMAP TARGET_IOWR('f',11,struct fiemap)
diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
index 193bee1..56e344c 100644
index e5331b4..a730c87 100644
--- a/linux-user/syscall_types.h
+++ b/linux-user/syscall_types.h
@@ -71,6 +71,9 @@ STRUCT(kbentry,

View File

@ -1,4 +1,4 @@
From 1529d998a6e9858db8548628d16cff3ddbe2a080 Mon Sep 17 00:00:00 2001
From 3108d4f03c8124927f6462967a9d80f2049fae19 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 f00b082..08df03f 100644
index 199084f..02599ce 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5473,10 +5473,10 @@ int syscall_restartable(int syscall_nr)
@@ -5630,10 +5630,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 0a3476a6138ce132a75f84c994c1b6ffdcc87354 Mon Sep 17 00:00:00 2001
From 6cba6c6438b0ca67aa0e2b869e109f31d4a889a3 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
@ -29,20 +29,24 @@ Signed-off-by: Tim Hardeck <thardeck@suse.de>
[AF: qemu_opts_create_nofail() -> qemu_opts_create(),
bdrv_file_open() -> bdrv_open(), based on work by brogers]
[AF: error_is_set() dropped for v2.1.0-rc0]
[AF: BlockDriverAIOCB -> BlockAIOCB,
BlockDriverCompletionFunc -> BlockCompletionFunc,
qemu_aio_release() -> qemu_aio_unref(),
drop dictzip_aio_cancel()]
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
block/Makefile.objs | 1 +
block/dictzip.c | 596 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 597 insertions(+)
block/dictzip.c | 591 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 592 insertions(+)
create mode 100644 block/dictzip.c
diff --git a/block/Makefile.objs b/block/Makefile.objs
index fd88c03..cbdddc0 100644
index 04b0e43..080fd26 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
@@ -24,6 +24,7 @@ common-obj-y += stream.o
@@ -24,6 +24,7 @@ block-obj-y += accounting.o
common-obj-y += stream.o
common-obj-y += commit.o
common-obj-y += mirror.o
common-obj-y += backup.o
+common-obj-y += dictzip.o
@ -50,10 +54,10 @@ index fd88c03..cbdddc0 100644
iscsi.o-libs := $(LIBISCSI_LIBS)
diff --git a/block/dictzip.c b/block/dictzip.c
new file mode 100644
index 0000000..36f1df0
index 0000000..8e6855a
--- /dev/null
+++ b/block/dictzip.c
@@ -0,0 +1,596 @@
@@ -0,0 +1,591 @@
+/*
+ * DictZip Block driver for dictzip enabled gzip files
+ *
@ -138,7 +142,7 @@ index 0000000..36f1df0
+struct BDRVDictZipState;
+
+typedef struct DictZipAIOCB {
+ BlockDriverAIOCB common;
+ BlockAIOCB common;
+ struct BDRVDictZipState *s;
+ QEMUIOVector *qiov; /* QIOV of the original request */
+ QEMUIOVector *qiov_gz; /* QIOV of the gz subrequest */
@ -434,7 +438,7 @@ index 0000000..36f1df0
+ qemu_iovec_from_buf(acb->qiov, 0, acb->buf, acb->len);
+ acb->common.cb(acb->common.opaque, 0);
+ qemu_bh_delete(acb->bh);
+ qemu_aio_release(acb);
+ qemu_aio_unref(acb);
+}
+
+/* This callback gets invoked by the underlying block reader when we have
@ -484,22 +488,17 @@ index 0000000..36f1df0
+
+ /* free occupied ressources */
+ g_free(acb->qiov_gz);
+ qemu_aio_release(acb);
+}
+
+static void dictzip_aio_cancel(BlockDriverAIOCB *blockacb)
+{
+ qemu_aio_unref(acb);
+}
+
+static const AIOCBInfo dictzip_aiocb_info = {
+ .aiocb_size = sizeof(DictZipAIOCB),
+ .cancel = dictzip_aio_cancel,
+};
+
+/* This is where we get a request from a caller to read something */
+static BlockDriverAIOCB *dictzip_aio_readv(BlockDriverState *bs,
+static BlockAIOCB *dictzip_aio_readv(BlockDriverState *bs,
+ int64_t sector_num, QEMUIOVector *qiov, int nb_sectors,
+ BlockDriverCompletionFunc *cb, void *opaque)
+ BlockCompletionFunc *cb, void *opaque)
+{
+ BDRVDictZipState *s = bs->opaque;
+ DictZipAIOCB *acb;

View File

@ -1,4 +1,4 @@
From 0fdc9a7f05acb99c3c21f747a4d25419f03c80dd Mon Sep 17 00:00:00 2001
From 91448986f22a2b293d79ef101680ce6a681163c3 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
@ -30,19 +30,23 @@ Signed-off-by: Tim Hardeck <thardeck@suse.de>
[AF: qemu_opts_create_nofail() -> qemu_opts_create(),
bdrv_file_open() -> bdrv_open(), based on work by brogers]
[AF: error_is_set() dropped for v2.1.0-rc0]
[AF: BlockDriverAIOCB -> BlockAIOCB,
BlockDriverCompletionFunc -> BlockCompletionFunc,
qemu_aio_release() -> qemu_aio_unref(),
drop tar_aio_cancel()]
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
block/Makefile.objs | 1 +
block/tar.c | 386 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 387 insertions(+)
block/tar.c | 381 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 382 insertions(+)
create mode 100644 block/tar.c
diff --git a/block/Makefile.objs b/block/Makefile.objs
index cbdddc0..e5b0326 100644
index 080fd26..0790d19 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
@@ -25,6 +25,7 @@ common-obj-y += commit.o
common-obj-y += mirror.o
@@ -25,6 +25,7 @@ common-obj-y += stream.o
common-obj-y += commit.o
common-obj-y += backup.o
common-obj-y += dictzip.o
+common-obj-y += tar.o
@ -51,10 +55,10 @@ index cbdddc0..e5b0326 100644
iscsi.o-libs := $(LIBISCSI_LIBS)
diff --git a/block/tar.c b/block/tar.c
new file mode 100644
index 0000000..c2ab5fa
index 0000000..d8218a3
--- /dev/null
+++ b/block/tar.c
@@ -0,0 +1,386 @@
@@ -0,0 +1,381 @@
+/*
+ * Tar block driver
+ *
@ -329,7 +333,7 @@ index 0000000..c2ab5fa
+}
+
+typedef struct TarAIOCB {
+ BlockDriverAIOCB common;
+ BlockAIOCB common;
+ QEMUBH *bh;
+} TarAIOCB;
+
@ -340,22 +344,17 @@ index 0000000..c2ab5fa
+
+ acb->common.cb(acb->common.opaque, 0);
+ qemu_bh_delete(acb->bh);
+ qemu_aio_release(acb);
+}
+
+static void tar_aio_cancel(BlockDriverAIOCB *blockacb)
+{
+ qemu_aio_unref(acb);
+}
+
+static AIOCBInfo tar_aiocb_info = {
+ .aiocb_size = sizeof(TarAIOCB),
+ .cancel = tar_aio_cancel,
+};
+
+/* This is where we get a request from a caller to read something */
+static BlockDriverAIOCB *tar_aio_readv(BlockDriverState *bs,
+static BlockAIOCB *tar_aio_readv(BlockDriverState *bs,
+ int64_t sector_num, QEMUIOVector *qiov, int nb_sectors,
+ BlockDriverCompletionFunc *cb, void *opaque)
+ BlockCompletionFunc *cb, void *opaque)
+{
+ BDRVTarState *s = bs->opaque;
+ SparseCache *sparse;

View File

@ -1,4 +1,4 @@
From eee446e6a362ab72bc97c90225ba6123f6d0ab3c Mon Sep 17 00:00:00 2001
From d0549750c5d361cf6e766c539c7b6f1fb913cd27 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
@ -8,7 +8,7 @@ Subject: [PATCH] Legacy Patch kvm-qemu-preXX-dictzip3.patch
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/block/tar.c b/block/tar.c
index c2ab5fa..ea2075d 100644
index d8218a3..522ddd3 100644
--- a/block/tar.c
+++ b/block/tar.c
@@ -83,7 +83,8 @@ static int str_ends(char *str, const char *end)

View File

@ -1,4 +1,4 @@
From c20addda112a82af598960724a0968904c1735fb Mon Sep 17 00:00:00 2001
From 400e598989d5f6d2a6ae101793bcd24934658a57 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Wed, 12 Dec 2012 19:11:31 +0100
Subject: [PATCH] Legacy Patch kvm-qemu-preXX-report-default-mac-used.patch
@ -8,10 +8,10 @@ Subject: [PATCH] Legacy Patch kvm-qemu-preXX-report-default-mac-used.patch
1 file changed, 22 insertions(+)
diff --git a/net/net.c b/net/net.c
index 6d930ea..9656f3e 100644
index 7acc162..1c7ff12 100644
--- a/net/net.c
+++ b/net/net.c
@@ -158,6 +158,27 @@ void qemu_format_nic_info_str(NetClientState *nc, uint8_t macaddr[6])
@@ -160,6 +160,27 @@ void qemu_format_nic_info_str(NetClientState *nc, uint8_t macaddr[6])
macaddr[3], macaddr[4], macaddr[5]);
}
@ -39,7 +39,7 @@ index 6d930ea..9656f3e 100644
void qemu_macaddr_default_if_unset(MACAddr *macaddr)
{
static int index = 0;
@@ -1276,6 +1297,7 @@ int net_init_clients(void)
@@ -1314,6 +1335,7 @@ int net_init_clients(void)
if (qemu_opts_foreach(net, net_init_client, NULL, 1) == -1) {
return -1;
}

View File

@ -1,4 +1,4 @@
From e54695d614849c8760f8ccb0ed467a74fca7f741 Mon Sep 17 00:00:00 2001
From 7e990dfe340a04dda4fa87deea9057dfbd7932e6 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 ab84549..5d1f074 100644
index 258af5d..59b5077 100644
--- a/ui/console.c
+++ b/ui/console.c
@@ -852,7 +852,7 @@ static void console_putchar(QemuConsole *s, int ch)
@@ -853,7 +853,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 fae838b94d08af3b2230d2cafcacbc3d2ac780e5 Mon Sep 17 00:00:00 2001
From 5dd9c864211748f66cfcb24f1b623c935e88d13c 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 956be49..d578c23 100644
index a8b01da..2780d14 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -311,6 +311,9 @@ typedef struct {
@@ -403,6 +403,9 @@ typedef struct {
IOEventHandler *chr_event[MAX_MUX];
void *ext_opaque[MAX_MUX];
CharDriverState *drv;
@ -35,7 +35,7 @@ index 956be49..d578c23 100644
int focus;
int mux_cnt;
int term_got_escape;
@@ -470,6 +473,15 @@ static void mux_chr_accept_input(CharDriverState *chr)
@@ -562,6 +565,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 956be49..d578c23 100644
}
static int mux_chr_can_read(void *opaque)
@@ -598,6 +610,10 @@ static CharDriverState *qemu_chr_open_mux(CharDriverState *drv)
@@ -690,6 +702,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 cc47aef37004096cfe5788ce51d930543f614bbf Mon Sep 17 00:00:00 2001
From 9cf331fd06886bcec7a50c92f4385ca82317bf3a 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 08df03f..0b4668d 100644
index 02599ce..a41dd43 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5787,9 +5787,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
@@ -5941,9 +5941,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 ce5ea9682c42819ea21be30172208718ad890969 Mon Sep 17 00:00:00 2001
From e5d1f2561996297157d72b0af5442d71936c491f 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

View File

@ -1,4 +1,4 @@
From 2ad523fe3a4a65ef306e1f4ebbcd8d23bab9f75e Mon Sep 17 00:00:00 2001
From e54a63d9b564342f7b9c777a0a225d888fdf7716 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 f7685b5..7c07772 100755
index 47048f0..35fbdb5 100755
--- a/configure
+++ b/configure
@@ -1538,7 +1538,7 @@ fi
@@ -1544,7 +1544,7 @@ fi
if test "$pie" = ""; then
case "$cpu-$targetos" in

View File

@ -1,4 +1,4 @@
From d3c34d8f618b8914920e0f7d3979912c335f5fff Mon Sep 17 00:00:00 2001
From 2d6b36cbf59e2f8e84889c2d52815191992bf421 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 98e8f4b..393e99e 100644
index 9a92aa7..81ade4e 100644
--- a/tests/libqtest.c
+++ b/tests/libqtest.c
@@ -35,7 +35,7 @@

View File

@ -0,0 +1,40 @@
From c464e8e38da71cbc136ea2cf6fbf5bddfc25e7d5 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
On hosts with limited virtual address space (32bit pointers), we can very
easily run out of virtual memory with big thread pools.
Instead, we should limit ourselves to small pools to keep memory footprint
low on those systems.
This patch fixes random VM stalls like
(process:25114): GLib-ERROR **: gmem.c:103: failed to allocate 1048576 bytes
on 32bit ARM systems for me.
Signed-off-by: Alexander Graf <agraf@suse.de>
---
thread-pool.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/thread-pool.c b/thread-pool.c
index e2cac8e..87a3ea9 100644
--- a/thread-pool.c
+++ b/thread-pool.c
@@ -299,7 +299,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);
- pool->max_threads = 64;
+ if (sizeof(pool) == 4) {
+ /* 32bit systems run out of virtual memory quickly */
+ pool->max_threads = 4;
+ } else {
+ pool->max_threads = 64;
+ }
pool->new_thread_bh = aio_bh_new(ctx, spawn_thread_bh_fn, pool);
QLIST_INIT(&pool->head);

View File

@ -1,35 +0,0 @@
From 3d053835529bbdbdc9e05f9f4d6d6de87238f4e4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
Date: Mon, 7 Apr 2014 16:03:08 +0200
Subject: [PATCH] tests: Don't run qom-test twice
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Commit 3687d5325 accidentally resulted in running qom-test twice
for x86_64, once directly via the wildcard, and once because x86_64
includes all the i386 qtests (which includes qom-test).
Filter out x86_64 as well as microblazeel and xtensaeb to fix this.
Cc: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
tests/Makefile | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/tests/Makefile b/tests/Makefile
index 4b2e1bb..db6cbc1 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -186,7 +186,9 @@ check-qtest-microblazeel-y = $(check-qtest-microblaze-y)
check-qtest-xtensaeb-y = $(check-qtest-xtensa-y)
# qom-test works for all sysemu architectures:
-$(foreach target,$(SYSEMU_TARGET_LIST), \
+QTEST_SYSEMU_TARGET_LIST=$(filter-out x86_64 microblazeel xtensaeb, \
+ $(SYSEMU_TARGET_LIST))
+$(foreach target,$(QTEST_SYSEMU_TARGET_LIST), \
$(eval check-qtest-$(target)-y += tests/qom-test$(EXESUF)))
check-qapi-schema-y := $(addprefix tests/qapi-schema/, \

View File

@ -1,58 +0,0 @@
From d9fc1799803a3783e0f764b0c9b7a336c8d3b893 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Fri, 22 Aug 2014 11:28:52 +0200
Subject: [PATCH] linux-user: Cast validity checks on g_posix_timers range
We check whether the passed in counter value is negative on all calls
that involve g_posix_timers. However, we also check check for negativity
of that value after casting it - at which point it couldn't possibly be
negative anymore.
Cast the check to int16_t. Maybe this is correct. Maybe the check should
get removed completely.
Signed-off-by: Alexander Graf <agraf@suse.de>
---
linux-user/syscall.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 0b4668d..660095b 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -9602,7 +9602,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
/* args: timer_t timerid, int flags, const struct itimerspec *new_value,
* struct itimerspec * old_value */
arg1 &= 0xffff;
- if (arg3 == 0 || arg1 < 0 || arg1 >= ARRAY_SIZE(g_posix_timers)) {
+ if (arg3 == 0 || (int16_t)arg1 < 0 || arg1 >= ARRAY_SIZE(g_posix_timers)) {
ret = -TARGET_EINVAL;
} else {
timer_t htimer = g_posix_timers[arg1];
@@ -9624,7 +9624,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
arg1 &= 0xffff;
if (!arg2) {
return -TARGET_EFAULT;
- } else if (arg1 < 0 || arg1 >= ARRAY_SIZE(g_posix_timers)) {
+ } else if ((int16_t)arg1 < 0 || arg1 >= ARRAY_SIZE(g_posix_timers)) {
ret = -TARGET_EINVAL;
} else {
timer_t htimer = g_posix_timers[arg1];
@@ -9644,7 +9644,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
{
/* args: timer_t timerid */
arg1 &= 0xffff;
- if (arg1 < 0 || arg1 >= ARRAY_SIZE(g_posix_timers)) {
+ if ((int16_t)arg1 < 0 || arg1 >= ARRAY_SIZE(g_posix_timers)) {
ret = -TARGET_EINVAL;
} else {
timer_t htimer = g_posix_timers[arg1];
@@ -9659,7 +9659,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
{
/* args: timer_t timerid */
arg1 &= 0xffff;
- if (arg1 < 0 || arg1 >= ARRAY_SIZE(g_posix_timers)) {
+ if ((int16_t)arg1 < 0 || arg1 >= ARRAY_SIZE(g_posix_timers)) {
ret = -TARGET_EINVAL;
} else {
timer_t htimer = g_posix_timers[arg1];

View File

@ -1,109 +0,0 @@
From 4b0131e7b071bb06802a99fcf9a3717215b2362b Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Fri, 22 Aug 2014 12:22:28 +0200
Subject: [PATCH] linux-user: Convert blkpg to use a special subop handler
The blkpg ioctl can take different payloads depending on the opcode in
its payload structure. Create a new special ioctl handler that can only
deal with partition style ones for now.
Signed-off-by: Alexander Graf <agraf@suse.de>
---
Andreas, if you like feel free to squash this into your patch and submit
it upstream.
---
linux-user/ioctls.h | 3 ++-
linux-user/syscall.c | 53 ++++++++++++++++++++++++++++++++++++++++++++++
linux-user/syscall_types.h | 2 +-
3 files changed, 56 insertions(+), 2 deletions(-)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 9b6cacb..8eb4446 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -96,7 +96,8 @@
IOCTL(BLKRAGET, IOC_R, MK_PTR(TYPE_LONG))
IOCTL(BLKSSZGET, IOC_R, MK_PTR(TYPE_LONG))
IOCTL(BLKBSZGET, IOC_R, MK_PTR(TYPE_INT))
- IOCTL(BLKPG, IOC_W, MK_PTR(MK_STRUCT(STRUCT_blkpg_ioctl_arg)))
+ IOCTL_SPECIAL(BLKPG, IOC_W, do_ioctl_blkpg,
+ MK_PTR(MK_STRUCT(STRUCT_blkpg_ioctl_arg)))
#ifdef FIBMAP
IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
#endif
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 660095b..04b5119 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3657,6 +3657,59 @@ out:
return ret;
}
+static abi_long do_ioctl_blkpg(const IOCTLEntry *ie, uint8_t *buf_temp, int fd,
+ abi_long cmd, abi_long arg)
+{
+ void *argptr;
+ int target_size;
+ const argtype *arg_type = ie->arg_type;
+ const argtype part_arg_type[] = { MK_STRUCT(STRUCT_blkpg_partition) };
+ abi_long ret;
+
+ struct blkpg_ioctl_arg *host_blkpg = (void*)buf_temp;
+ struct blkpg_partition host_part;
+
+ /* Read and convert blkpg */
+ arg_type++;
+ target_size = thunk_type_size(arg_type, 0);
+ argptr = lock_user(VERIFY_READ, arg, target_size, 1);
+ if (!argptr) {
+ ret = -TARGET_EFAULT;
+ goto out;
+ }
+ thunk_convert(buf_temp, argptr, arg_type, THUNK_HOST);
+ unlock_user(argptr, arg, 0);
+
+ switch (host_blkpg->op) {
+ case BLKPG_ADD_PARTITION:
+ case BLKPG_DEL_PARTITION:
+ /* payload is struct blkpg_partition */
+ break;
+ default:
+ /* Unknown opcode */
+ ret = -TARGET_EINVAL;
+ goto out;
+ }
+
+ /* Read and convert blkpg->data */
+ arg = (abi_long)(uintptr_t)host_blkpg->data;
+ target_size = thunk_type_size(part_arg_type, 0);
+ argptr = lock_user(VERIFY_READ, arg, target_size, 1);
+ if (!argptr) {
+ ret = -TARGET_EFAULT;
+ goto out;
+ }
+ thunk_convert(&host_part, argptr, part_arg_type, THUNK_HOST);
+ unlock_user(argptr, arg, 0);
+
+ /* Swizzle the data pointer to our local copy and call! */
+ host_blkpg->data = &host_part;
+ ret = get_errno(ioctl(fd, ie->host_cmd, host_blkpg));
+
+out:
+ return ret;
+}
+
static abi_long do_ioctl_rt(const IOCTLEntry *ie, uint8_t *buf_temp,
int fd, abi_long cmd, abi_long arg)
{
diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
index 56e344c..a730c87 100644
--- a/linux-user/syscall_types.h
+++ b/linux-user/syscall_types.h
@@ -260,4 +260,4 @@ STRUCT(blkpg_ioctl_arg,
TYPE_INT, /* op */
TYPE_INT, /* flags */
TYPE_INT, /* datalen */
- MK_PTR(MK_STRUCT(STRUCT_blkpg_partition))) /* data */
+ TYPE_PTRVOID) /* data */

View File

@ -1,3 +1,44 @@
-------------------------------------------------------------------
Wed Jan 14 00:38:44 UTC 2015 - agraf@suse.com
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.2
* Patches added:
0037-AIO-Reduce-number-of-threads-for-32.patch
-------------------------------------------------------------------
Mon Jan 12 14:32:14 UTC 2015 - afaerber@suse.de
- Update to v2.2.0: See http://wiki.qemu-project.org/ChangeLog/2.2
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.2
* Patches dropped:
0015-target-arm-linux-user-no-tb_flush-o.patch (tb_flush() not called)
0037-tests-Don-t-run-qom-test-twice.patch (superseded)
0039-linux-user-Cast-validity-checks-on-.patch (helper function introduced)
0040-linux-user-Convert-blkpg-to-use-a-s.patch (upstreamed)
* Patched renumbered:
0016-linux-user-Ignore-broken-loop-ioctl.patch -> 0015-linux-user-Ignore-broken-loop-ioctl.patch
0017-linux-user-lock-tcg.patch -> 0016-linux-user-lock-tcg.patch
0018-linux-user-Run-multi-threaded-code-.patch -> 0017-linux-user-Run-multi-threaded-code-.patch
0019-linux-user-lock-tb-flushing-too.patch -> 0018-linux-user-lock-tb-flushing-too.patch
0020-linux-user-Fake-proc-cpuinfo.patch -> 0019-linux-user-Fake-proc-cpuinfo.patch
0021-linux-user-implement-FS_IOC_GETFLAG.patch -> 0020-linux-user-implement-FS_IOC_GETFLAG.patch
0022-linux-user-implement-FS_IOC_SETFLAG.patch -> 0021-linux-user-implement-FS_IOC_SETFLAG.patch
0023-linux-user-XXX-disable-fiemap.patch -> 0022-linux-user-XXX-disable-fiemap.patch
0024-slirp-nooutgoing.patch -> 0023-slirp-nooutgoing.patch
0025-vnc-password-file-and-incoming-conn.patch -> 0024-vnc-password-file-and-incoming-conn.patch
0026-linux-user-add-more-blk-ioctls.patch -> 0025-linux-user-add-more-blk-ioctls.patch
0027-linux-user-use-target_ulong.patch -> 0026-linux-user-use-target_ulong.patch
0028-block-Add-support-for-DictZip-enabl.patch -> 0027-block-Add-support-for-DictZip-enabl.patch
0029-block-Add-tar-container-format.patch -> 0028-block-Add-tar-container-format.patch
0030-Legacy-Patch-kvm-qemu-preXX-dictzip.patch -> 0029-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
0031-Legacy-Patch-kvm-qemu-preXX-report-.patch -> 0030-Legacy-Patch-kvm-qemu-preXX-report-.patch
0032-console-add-question-mark-escape-op.patch -> 0031-console-add-question-mark-escape-op.patch
0033-Make-char-muxer-more-robust-wrt-sma.patch -> 0032-Make-char-muxer-more-robust-wrt-sma.patch
0034-linux-user-lseek-explicitly-cast-no.patch -> 0033-linux-user-lseek-explicitly-cast-no.patch
0035-virtfs-proxy-helper-Provide-__u64-f.patch -> 0034-virtfs-proxy-helper-Provide-__u64-f.patch
0036-configure-Enable-PIE-for-ppc-and-pp.patch -> 0035-configure-Enable-PIE-for-ppc-and-pp.patch
0038-qtest-Increase-socket-timeout.patch -> 0036-qtest-Increase-socket-timeout.patch
-------------------------------------------------------------------
Fri Aug 22 10:37:23 UTC 2014 - agraf@suse.com

View File

@ -1,7 +1,7 @@
#
# spec file for package libcacard
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -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.1.0
Version: 2.2.0
Release: 0
Source: http://wiki.qemu.org/download/qemu-2.1.0.tar.bz2
Source: http://wiki.qemu.org/download/qemu-2.2.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
@ -39,32 +39,29 @@ 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-target-arm-linux-user-no-tb_flush-o.patch
Patch0016: 0016-linux-user-Ignore-broken-loop-ioctl.patch
Patch0017: 0017-linux-user-lock-tcg.patch
Patch0018: 0018-linux-user-Run-multi-threaded-code-.patch
Patch0019: 0019-linux-user-lock-tb-flushing-too.patch
Patch0020: 0020-linux-user-Fake-proc-cpuinfo.patch
Patch0021: 0021-linux-user-implement-FS_IOC_GETFLAG.patch
Patch0022: 0022-linux-user-implement-FS_IOC_SETFLAG.patch
Patch0023: 0023-linux-user-XXX-disable-fiemap.patch
Patch0024: 0024-slirp-nooutgoing.patch
Patch0025: 0025-vnc-password-file-and-incoming-conn.patch
Patch0026: 0026-linux-user-add-more-blk-ioctls.patch
Patch0027: 0027-linux-user-use-target_ulong.patch
Patch0028: 0028-block-Add-support-for-DictZip-enabl.patch
Patch0029: 0029-block-Add-tar-container-format.patch
Patch0030: 0030-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
Patch0031: 0031-Legacy-Patch-kvm-qemu-preXX-report-.patch
Patch0032: 0032-console-add-question-mark-escape-op.patch
Patch0033: 0033-Make-char-muxer-more-robust-wrt-sma.patch
Patch0034: 0034-linux-user-lseek-explicitly-cast-no.patch
Patch0035: 0035-virtfs-proxy-helper-Provide-__u64-f.patch
Patch0036: 0036-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0037: 0037-tests-Don-t-run-qom-test-twice.patch
Patch0038: 0038-qtest-Increase-socket-timeout.patch
Patch0039: 0039-linux-user-Cast-validity-checks-on-.patch
Patch0040: 0040-linux-user-Convert-blkpg-to-use-a-s.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-Legacy-Patch-kvm-qemu-preXX-report-.patch
Patch0031: 0031-console-add-question-mark-escape-op.patch
Patch0032: 0032-Make-char-muxer-more-robust-wrt-sma.patch
Patch0033: 0033-linux-user-lseek-explicitly-cast-no.patch
Patch0034: 0034-virtfs-proxy-helper-Provide-__u64-f.patch
Patch0035: 0035-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0036: 0036-qtest-Increase-socket-timeout.patch
Patch0037: 0037-AIO-Reduce-number-of-threads-for-32.patch
# Please do not add patches manually here, run update_git.sh.
# this is to make lint happy
Source300: qemu-rpmlintrc
@ -161,9 +158,6 @@ This sub-package contains development files for the Smartcard library.
%patch0035 -p1
%patch0036 -p1
%patch0037 -p1
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
%build
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \

View File

@ -1,7 +1,7 @@
#
# spec file for package libcacard
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -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.1.0.tar.bz2
Source: http://wiki.qemu.org/download/qemu-2.2.0.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
PATCH_FILES
# Please do not add patches manually here, run update_git.sh.

View File

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

Binary file not shown.

3
qemu-2.2.0.tar.bz2 Normal file
View File

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

BIN
qemu-2.2.0.tar.bz2.sig Normal file

Binary file not shown.

View File

@ -1,3 +1,45 @@
-------------------------------------------------------------------
Wed Jan 14 00:38:41 UTC 2015 - agraf@suse.com
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.2
* Patches added:
0037-AIO-Reduce-number-of-threads-for-32.patch
-------------------------------------------------------------------
Mon Jan 12 14:32:10 UTC 2015 - afaerber@suse.de
- Update to v2.2.0: See http://wiki.qemu-project.org/ChangeLog/2.2
* Don't re-package trace-events
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.2
* Patches dropped:
0015-target-arm-linux-user-no-tb_flush-o.patch (tb_flush() not called)
0037-tests-Don-t-run-qom-test-twice.patch (superseded)
0039-linux-user-Cast-validity-checks-on-.patch (helper function introduced)
0040-linux-user-Convert-blkpg-to-use-a-s.patch (upstreamed)
* Patched renumbered:
0016-linux-user-Ignore-broken-loop-ioctl.patch -> 0015-linux-user-Ignore-broken-loop-ioctl.patch
0017-linux-user-lock-tcg.patch -> 0016-linux-user-lock-tcg.patch
0018-linux-user-Run-multi-threaded-code-.patch -> 0017-linux-user-Run-multi-threaded-code-.patch
0019-linux-user-lock-tb-flushing-too.patch -> 0018-linux-user-lock-tb-flushing-too.patch
0020-linux-user-Fake-proc-cpuinfo.patch -> 0019-linux-user-Fake-proc-cpuinfo.patch
0021-linux-user-implement-FS_IOC_GETFLAG.patch -> 0020-linux-user-implement-FS_IOC_GETFLAG.patch
0022-linux-user-implement-FS_IOC_SETFLAG.patch -> 0021-linux-user-implement-FS_IOC_SETFLAG.patch
0023-linux-user-XXX-disable-fiemap.patch -> 0022-linux-user-XXX-disable-fiemap.patch
0024-slirp-nooutgoing.patch -> 0023-slirp-nooutgoing.patch
0025-vnc-password-file-and-incoming-conn.patch -> 0024-vnc-password-file-and-incoming-conn.patch
0026-linux-user-add-more-blk-ioctls.patch -> 0025-linux-user-add-more-blk-ioctls.patch
0027-linux-user-use-target_ulong.patch -> 0026-linux-user-use-target_ulong.patch
0028-block-Add-support-for-DictZip-enabl.patch -> 0027-block-Add-support-for-DictZip-enabl.patch
0029-block-Add-tar-container-format.patch -> 0028-block-Add-tar-container-format.patch
0030-Legacy-Patch-kvm-qemu-preXX-dictzip.patch -> 0029-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
0031-Legacy-Patch-kvm-qemu-preXX-report-.patch -> 0030-Legacy-Patch-kvm-qemu-preXX-report-.patch
0032-console-add-question-mark-escape-op.patch -> 0031-console-add-question-mark-escape-op.patch
0033-Make-char-muxer-more-robust-wrt-sma.patch -> 0032-Make-char-muxer-more-robust-wrt-sma.patch
0034-linux-user-lseek-explicitly-cast-no.patch -> 0033-linux-user-lseek-explicitly-cast-no.patch
0035-virtfs-proxy-helper-Provide-__u64-f.patch -> 0034-virtfs-proxy-helper-Provide-__u64-f.patch
0036-configure-Enable-PIE-for-ppc-and-pp.patch -> 0035-configure-Enable-PIE-for-ppc-and-pp.patch
0038-qtest-Increase-socket-timeout.patch -> 0036-qtest-Increase-socket-timeout.patch
-------------------------------------------------------------------
Fri Aug 22 10:37:03 UTC 2014 - agraf@suse.com

View File

@ -1,7 +1,7 @@
#
# spec file for package qemu-linux-user
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -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.1.0
Version: 2.2.0
Release: 0
Source: http://wiki.qemu.org/download/qemu-2.1.0.tar.bz2
Source: http://wiki.qemu.org/download/qemu-2.2.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
@ -39,32 +39,29 @@ 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-target-arm-linux-user-no-tb_flush-o.patch
Patch0016: 0016-linux-user-Ignore-broken-loop-ioctl.patch
Patch0017: 0017-linux-user-lock-tcg.patch
Patch0018: 0018-linux-user-Run-multi-threaded-code-.patch
Patch0019: 0019-linux-user-lock-tb-flushing-too.patch
Patch0020: 0020-linux-user-Fake-proc-cpuinfo.patch
Patch0021: 0021-linux-user-implement-FS_IOC_GETFLAG.patch
Patch0022: 0022-linux-user-implement-FS_IOC_SETFLAG.patch
Patch0023: 0023-linux-user-XXX-disable-fiemap.patch
Patch0024: 0024-slirp-nooutgoing.patch
Patch0025: 0025-vnc-password-file-and-incoming-conn.patch
Patch0026: 0026-linux-user-add-more-blk-ioctls.patch
Patch0027: 0027-linux-user-use-target_ulong.patch
Patch0028: 0028-block-Add-support-for-DictZip-enabl.patch
Patch0029: 0029-block-Add-tar-container-format.patch
Patch0030: 0030-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
Patch0031: 0031-Legacy-Patch-kvm-qemu-preXX-report-.patch
Patch0032: 0032-console-add-question-mark-escape-op.patch
Patch0033: 0033-Make-char-muxer-more-robust-wrt-sma.patch
Patch0034: 0034-linux-user-lseek-explicitly-cast-no.patch
Patch0035: 0035-virtfs-proxy-helper-Provide-__u64-f.patch
Patch0036: 0036-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0037: 0037-tests-Don-t-run-qom-test-twice.patch
Patch0038: 0038-qtest-Increase-socket-timeout.patch
Patch0039: 0039-linux-user-Cast-validity-checks-on-.patch
Patch0040: 0040-linux-user-Convert-blkpg-to-use-a-s.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-Legacy-Patch-kvm-qemu-preXX-report-.patch
Patch0031: 0031-console-add-question-mark-escape-op.patch
Patch0032: 0032-Make-char-muxer-more-robust-wrt-sma.patch
Patch0033: 0033-linux-user-lseek-explicitly-cast-no.patch
Patch0034: 0034-virtfs-proxy-helper-Provide-__u64-f.patch
Patch0035: 0035-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0036: 0036-qtest-Increase-socket-timeout.patch
Patch0037: 0037-AIO-Reduce-number-of-threads-for-32.patch
# Please do not add patches manually here, run update_git.sh.
# this is to make lint happy
Source300: qemu-rpmlintrc
@ -117,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.1.0
%setup -q -n qemu-2.2.0
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@ -155,9 +152,6 @@ run cross-architecture builds.
%patch0035 -p1
%patch0036 -p1
%patch0037 -p1
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
%build
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
@ -185,6 +179,7 @@ rm -rf $RPM_BUILD_ROOT/%_mandir/man1/qemu.1
rm -rf $RPM_BUILD_ROOT/%_mandir/man1/qemu-img.1
rm -rf $RPM_BUILD_ROOT/%_mandir/man8/qemu-nbd.8
rm -rf $RPM_BUILD_ROOT/%_datadir/qemu/keymaps
rm -rf $RPM_BUILD_ROOT/%_datadir/qemu/trace-events
rm -rf $RPM_BUILD_ROOT/%_sysconfdir/qemu/target-x86_64.conf
rm -rf $RPM_BUILD_ROOT/%_libexecdir/qemu-bridge-helper
install -d -m 755 $RPM_BUILD_ROOT/%_sbindir

View File

@ -1,7 +1,7 @@
#
# spec file for package qemu-linux-user
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -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.1.0.tar.bz2
Source: http://wiki.qemu.org/download/qemu-2.2.0.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
PATCH_FILES
# Please do not add patches manually here, run update_git.sh.
@ -78,7 +78,7 @@ emulations. This can be used together with the OBS build script to
run cross-architecture builds.
%prep
%setup -q -n qemu-2.1.0
%setup -q -n qemu-2.2.0
PATCH_EXEC
%build
@ -107,6 +107,7 @@ rm -rf $RPM_BUILD_ROOT/%_mandir/man1/qemu.1
rm -rf $RPM_BUILD_ROOT/%_mandir/man1/qemu-img.1
rm -rf $RPM_BUILD_ROOT/%_mandir/man8/qemu-nbd.8
rm -rf $RPM_BUILD_ROOT/%_datadir/qemu/keymaps
rm -rf $RPM_BUILD_ROOT/%_datadir/qemu/trace-events
rm -rf $RPM_BUILD_ROOT/%_sysconfdir/qemu/target-x86_64.conf
rm -rf $RPM_BUILD_ROOT/%_libexecdir/qemu-bridge-helper
install -d -m 755 $RPM_BUILD_ROOT/%_sbindir

View File

@ -1,3 +1,51 @@
-------------------------------------------------------------------
Wed Feb 11 17:56:26 UTC 2015 - afaerber@suse.de
- Fix packaging of e500 U-Boot
- Don't rely on wildcard with explicit excludes
-------------------------------------------------------------------
Wed Jan 14 00:38:38 UTC 2015 - agraf@suse.com
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.2
* Patches added:
0037-AIO-Reduce-number-of-threads-for-32.patch
-------------------------------------------------------------------
Mon Jan 12 14:32:06 UTC 2015 - afaerber@suse.de
- Update to v2.2.0: See http://wiki.qemu-project.org/ChangeLog/2.2
* Updated DictZip and Tar block backends accordingly
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.2
* Patches dropped:
0015-target-arm-linux-user-no-tb_flush-o.patch (tb_flush() not called)
0037-tests-Don-t-run-qom-test-twice.patch (superseded)
0039-linux-user-Cast-validity-checks-on-.patch (helper function introduced)
0040-linux-user-Convert-blkpg-to-use-a-s.patch (upstreamed)
* Patched renumbered:
0016-linux-user-Ignore-broken-loop-ioctl.patch -> 0015-linux-user-Ignore-broken-loop-ioctl.patch
0017-linux-user-lock-tcg.patch -> 0016-linux-user-lock-tcg.patch
0018-linux-user-Run-multi-threaded-code-.patch -> 0017-linux-user-Run-multi-threaded-code-.patch
0019-linux-user-lock-tb-flushing-too.patch -> 0018-linux-user-lock-tb-flushing-too.patch
0020-linux-user-Fake-proc-cpuinfo.patch -> 0019-linux-user-Fake-proc-cpuinfo.patch
0021-linux-user-implement-FS_IOC_GETFLAG.patch -> 0020-linux-user-implement-FS_IOC_GETFLAG.patch
0022-linux-user-implement-FS_IOC_SETFLAG.patch -> 0021-linux-user-implement-FS_IOC_SETFLAG.patch
0023-linux-user-XXX-disable-fiemap.patch -> 0022-linux-user-XXX-disable-fiemap.patch
0024-slirp-nooutgoing.patch -> 0023-slirp-nooutgoing.patch
0025-vnc-password-file-and-incoming-conn.patch -> 0024-vnc-password-file-and-incoming-conn.patch
0026-linux-user-add-more-blk-ioctls.patch -> 0025-linux-user-add-more-blk-ioctls.patch
0027-linux-user-use-target_ulong.patch -> 0026-linux-user-use-target_ulong.patch
0028-block-Add-support-for-DictZip-enabl.patch -> 0027-block-Add-support-for-DictZip-enabl.patch
0029-block-Add-tar-container-format.patch -> 0028-block-Add-tar-container-format.patch
0030-Legacy-Patch-kvm-qemu-preXX-dictzip.patch -> 0029-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
0031-Legacy-Patch-kvm-qemu-preXX-report-.patch -> 0030-Legacy-Patch-kvm-qemu-preXX-report-.patch
0032-console-add-question-mark-escape-op.patch -> 0031-console-add-question-mark-escape-op.patch
0033-Make-char-muxer-more-robust-wrt-sma.patch -> 0032-Make-char-muxer-more-robust-wrt-sma.patch
0034-linux-user-lseek-explicitly-cast-no.patch -> 0033-linux-user-lseek-explicitly-cast-no.patch
0035-virtfs-proxy-helper-Provide-__u64-f.patch -> 0034-virtfs-proxy-helper-Provide-__u64-f.patch
0036-configure-Enable-PIE-for-ppc-and-pp.patch -> 0035-configure-Enable-PIE-for-ppc-and-pp.patch
0038-qtest-Increase-socket-timeout.patch -> 0036-qtest-Increase-socket-timeout.patch
-------------------------------------------------------------------
Mon Sep 1 16:10:38 UTC 2014 - afaerber@suse.de

124
qemu.spec
View File

@ -1,7 +1,7 @@
#
# spec file for package qemu
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -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.1.0
Version: 2.2.0
Release: 0
Source: http://wiki.qemu.org/download/%name-2.1.0.tar.bz2
Source99: http://wiki.qemu.org/download/%name-2.1.0.tar.bz2.sig
Source: http://wiki.qemu.org/download/%name-2.2.0.tar.bz2
Source99: http://wiki.qemu.org/download/%name-2.2.0.tar.bz2.sig
Source1: 80-kvm.rules
Source2: qemu-ifup
Source3: kvm_stat
@ -69,32 +69,29 @@ 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-target-arm-linux-user-no-tb_flush-o.patch
Patch0016: 0016-linux-user-Ignore-broken-loop-ioctl.patch
Patch0017: 0017-linux-user-lock-tcg.patch
Patch0018: 0018-linux-user-Run-multi-threaded-code-.patch
Patch0019: 0019-linux-user-lock-tb-flushing-too.patch
Patch0020: 0020-linux-user-Fake-proc-cpuinfo.patch
Patch0021: 0021-linux-user-implement-FS_IOC_GETFLAG.patch
Patch0022: 0022-linux-user-implement-FS_IOC_SETFLAG.patch
Patch0023: 0023-linux-user-XXX-disable-fiemap.patch
Patch0024: 0024-slirp-nooutgoing.patch
Patch0025: 0025-vnc-password-file-and-incoming-conn.patch
Patch0026: 0026-linux-user-add-more-blk-ioctls.patch
Patch0027: 0027-linux-user-use-target_ulong.patch
Patch0028: 0028-block-Add-support-for-DictZip-enabl.patch
Patch0029: 0029-block-Add-tar-container-format.patch
Patch0030: 0030-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
Patch0031: 0031-Legacy-Patch-kvm-qemu-preXX-report-.patch
Patch0032: 0032-console-add-question-mark-escape-op.patch
Patch0033: 0033-Make-char-muxer-more-robust-wrt-sma.patch
Patch0034: 0034-linux-user-lseek-explicitly-cast-no.patch
Patch0035: 0035-virtfs-proxy-helper-Provide-__u64-f.patch
Patch0036: 0036-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0037: 0037-tests-Don-t-run-qom-test-twice.patch
Patch0038: 0038-qtest-Increase-socket-timeout.patch
Patch0039: 0039-linux-user-Cast-validity-checks-on-.patch
Patch0040: 0040-linux-user-Convert-blkpg-to-use-a-s.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-Legacy-Patch-kvm-qemu-preXX-report-.patch
Patch0031: 0031-console-add-question-mark-escape-op.patch
Patch0032: 0032-Make-char-muxer-more-robust-wrt-sma.patch
Patch0033: 0033-linux-user-lseek-explicitly-cast-no.patch
Patch0034: 0034-virtfs-proxy-helper-Provide-__u64-f.patch
Patch0035: 0035-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0036: 0036-qtest-Increase-socket-timeout.patch
Patch0037: 0037-AIO-Reduce-number-of-threads-for-32.patch
# Please do not add patches manually here, run update_git.sh.
# this is to make lint happy
@ -395,7 +392,7 @@ This sub-package contains the guest agent.
%package seabios
Summary: X86 BIOS for QEMU
Group: System/Emulators/PC
Version: 1.7.5
Version: 1.7.5.1
Release: 0
%if 0%{?suse_version} > %{noarch_supported}
BuildArch: noarch
@ -409,7 +406,7 @@ is the default BIOS for QEMU.
%package vgabios
Summary: VGA BIOSes for QEMU
Group: System/Emulators/PC
Version: 1.7.5
Version: 1.7.5.1
Release: 0
%if 0%{?suse_version} > %{noarch_supported}
BuildArch: noarch
@ -464,7 +461,7 @@ This package provides a service file for starting and stopping KSM.
%endif
%prep
%setup -q -n %name-2.1.0
%setup -q -n %name-2.2.0
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@ -502,9 +499,6 @@ This package provides a service file for starting and stopping KSM.
%patch0035 -p1
%patch0036 -p1
%patch0037 -p1
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
%if %{build_x86_fw_from_source}
# as a safeguard, delete the firmware files that we intend to build
@ -596,6 +590,12 @@ rm -fr $RPM_BUILD_ROOT/%_datadir/doc
rm $RPM_BUILD_ROOT/%_libdir/libcacard*
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
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
done
%endif
install -D -m 644 %{SOURCE302} $RPM_BUILD_ROOT/%{_sysconfdir}/qemu/bridge.conf
%find_lang %name
%if %{legacy_qemu_kvm}
@ -669,49 +669,11 @@ fi
%dir %_libdir/%name
%doc COPYING COPYING.LIB Changelog README VERSION qemu-doc.html qemu-tech.html
%doc %_mandir/man1/qemu.1.gz
%_datadir/%name
%exclude %_datadir/%name/bios.bin
%exclude %_datadir/%name/bios-256k.bin
%exclude %_datadir/%name/acpi-dsdt.aml
%exclude %_datadir/%name/q35-acpi-dsdt.aml
%exclude %_datadir/%name/vgabios.bin
%exclude %_datadir/%name/vgabios-cirrus.bin
%exclude %_datadir/%name/vgabios-qxl.bin
%exclude %_datadir/%name/vgabios-stdvga.bin
%exclude %_datadir/%name/vgabios-vmware.bin
%exclude %_datadir/%name/sgabios.bin
%exclude %_datadir/%name/pxe-e1000.rom
%exclude %_datadir/%name/pxe-eepro100.rom
%exclude %_datadir/%name/pxe-pcnet.rom
%exclude %_datadir/%name/pxe-ne2k_pci.rom
%exclude %_datadir/%name/pxe-rtl8139.rom
%exclude %_datadir/%name/pxe-virtio.rom
%exclude %_datadir/%name/efi-e1000.rom
%exclude %_datadir/%name/efi-eepro100.rom
%exclude %_datadir/%name/efi-pcnet.rom
%exclude %_datadir/%name/efi-ne2k_pci.rom
%exclude %_datadir/%name/efi-rtl8139.rom
%exclude %_datadir/%name/efi-virtio.rom
%exclude %_datadir/%name/kvmvapic.bin
%exclude %_datadir/%name/linuxboot.bin
%exclude %_datadir/%name/multiboot.bin
%exclude %_datadir/%name/ppc_rom.bin
%exclude %_datadir/%name/openbios-ppc
%exclude %_datadir/%name/slof.bin
%exclude %_datadir/%name/spapr-rtas.bin
%exclude %_datadir/%name/bamboo.dtb
%exclude %_datadir/%name/petalogix-ml605.dtb
%exclude %_datadir/%name/s390-zipl.rom
%exclude %_datadir/%name/s390-ccw.img
%exclude %_datadir/%name/palcode-clipper
%exclude %_datadir/%name/openbios-sparc32
%exclude %_datadir/%name/openbios-sparc64
%exclude %_datadir/%name/petalogix-s3adsp1800.dtb
%exclude %_datadir/%name/QEMU,cgthree.bin
%exclude %_datadir/%name/QEMU,tcx.bin
%ifarch %ix86 x86_64 s390x
%exclude %_datadir/%name/qemu-ifup
%endif
%dir %_datadir/%name
%_datadir/%name/keymaps
%_datadir/%name/trace-events
%_datadir/%name/qemu-icon.bmp
%_datadir/%name/qemu_logo_no_text.svg
%dir %_sysconfdir/%name
%if %{kvm_available}
%if 0%{?suse_version} >= 1230
@ -739,6 +701,7 @@ fi
%_datadir/%name/openbios-ppc
%_datadir/%name/slof.bin
%_datadir/%name/spapr-rtas.bin
%_datadir/%name/u-boot.e500
%_datadir/%name/bamboo.dtb
%_datadir/%name/petalogix-ml605.dtb
@ -771,6 +734,7 @@ fi
%_bindir/qemu-system-sh4eb
%_bindir/qemu-system-sparc
%_bindir/qemu-system-sparc64
%_bindir/qemu-system-tricore
%_bindir/qemu-system-unicore32
%_bindir/qemu-system-xtensa
%_bindir/qemu-system-xtensaeb
@ -798,7 +762,7 @@ fi
%files lang -f %name.lang
%defattr(-, root, root)
%ifarch %ix86 x86_64
%if %{build_x86_fw_from_source}
%files seabios
%defattr(-, root, root)
%_datadir/%name/bios.bin

View File

@ -1,7 +1,7 @@
#
# spec file for package qemu
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -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/%name-2.1.0.tar.bz2
Source99: http://wiki.qemu.org/download/%name-2.1.0.tar.bz2.sig
Source: http://wiki.qemu.org/download/%name-2.2.0.tar.bz2
Source99: http://wiki.qemu.org/download/%name-2.2.0.tar.bz2.sig
Source1: 80-kvm.rules
Source2: qemu-ifup
Source3: kvm_stat
@ -425,7 +425,7 @@ This package provides a service file for starting and stopping KSM.
%endif
%prep
%setup -q -n %name-2.1.0
%setup -q -n %name-2.2.0
PATCH_EXEC
%if %{build_x86_fw_from_source}
@ -518,6 +518,12 @@ rm -fr $RPM_BUILD_ROOT/%_datadir/doc
rm $RPM_BUILD_ROOT/%_libdir/libcacard*
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
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
done
%endif
install -D -m 644 %{SOURCE302} $RPM_BUILD_ROOT/%{_sysconfdir}/qemu/bridge.conf
%find_lang %name
%if %{legacy_qemu_kvm}
@ -591,49 +597,11 @@ fi
%dir %_libdir/%name
%doc COPYING COPYING.LIB Changelog README VERSION qemu-doc.html qemu-tech.html
%doc %_mandir/man1/qemu.1.gz
%_datadir/%name
%exclude %_datadir/%name/bios.bin
%exclude %_datadir/%name/bios-256k.bin
%exclude %_datadir/%name/acpi-dsdt.aml
%exclude %_datadir/%name/q35-acpi-dsdt.aml
%exclude %_datadir/%name/vgabios.bin
%exclude %_datadir/%name/vgabios-cirrus.bin
%exclude %_datadir/%name/vgabios-qxl.bin
%exclude %_datadir/%name/vgabios-stdvga.bin
%exclude %_datadir/%name/vgabios-vmware.bin
%exclude %_datadir/%name/sgabios.bin
%exclude %_datadir/%name/pxe-e1000.rom
%exclude %_datadir/%name/pxe-eepro100.rom
%exclude %_datadir/%name/pxe-pcnet.rom
%exclude %_datadir/%name/pxe-ne2k_pci.rom
%exclude %_datadir/%name/pxe-rtl8139.rom
%exclude %_datadir/%name/pxe-virtio.rom
%exclude %_datadir/%name/efi-e1000.rom
%exclude %_datadir/%name/efi-eepro100.rom
%exclude %_datadir/%name/efi-pcnet.rom
%exclude %_datadir/%name/efi-ne2k_pci.rom
%exclude %_datadir/%name/efi-rtl8139.rom
%exclude %_datadir/%name/efi-virtio.rom
%exclude %_datadir/%name/kvmvapic.bin
%exclude %_datadir/%name/linuxboot.bin
%exclude %_datadir/%name/multiboot.bin
%exclude %_datadir/%name/ppc_rom.bin
%exclude %_datadir/%name/openbios-ppc
%exclude %_datadir/%name/slof.bin
%exclude %_datadir/%name/spapr-rtas.bin
%exclude %_datadir/%name/bamboo.dtb
%exclude %_datadir/%name/petalogix-ml605.dtb
%exclude %_datadir/%name/s390-zipl.rom
%exclude %_datadir/%name/s390-ccw.img
%exclude %_datadir/%name/palcode-clipper
%exclude %_datadir/%name/openbios-sparc32
%exclude %_datadir/%name/openbios-sparc64
%exclude %_datadir/%name/petalogix-s3adsp1800.dtb
%exclude %_datadir/%name/QEMU,cgthree.bin
%exclude %_datadir/%name/QEMU,tcx.bin
%ifarch %ix86 x86_64 s390x
%exclude %_datadir/%name/qemu-ifup
%endif
%dir %_datadir/%name
%_datadir/%name/keymaps
%_datadir/%name/trace-events
%_datadir/%name/qemu-icon.bmp
%_datadir/%name/qemu_logo_no_text.svg
%dir %_sysconfdir/%name
%if %{kvm_available}
%if 0%{?suse_version} >= 1230
@ -661,6 +629,7 @@ fi
%_datadir/%name/openbios-ppc
%_datadir/%name/slof.bin
%_datadir/%name/spapr-rtas.bin
%_datadir/%name/u-boot.e500
%_datadir/%name/bamboo.dtb
%_datadir/%name/petalogix-ml605.dtb
@ -693,6 +662,7 @@ fi
%_bindir/qemu-system-sh4eb
%_bindir/qemu-system-sparc
%_bindir/qemu-system-sparc64
%_bindir/qemu-system-tricore
%_bindir/qemu-system-unicore32
%_bindir/qemu-system-xtensa
%_bindir/qemu-system-xtensaeb
@ -720,7 +690,7 @@ fi
%files lang -f %name.lang
%defattr(-, root, root)
%ifarch %ix86 x86_64
%if %{build_x86_fw_from_source}
%files seabios
%defattr(-, root, root)
%_datadir/%name/bios.bin

View File

@ -11,8 +11,8 @@
GIT_TREE=git://github.com/openSUSE/qemu.git
GIT_LOCAL_TREE=~/git/qemu-opensuse
GIT_BRANCH=opensuse-2.1
GIT_UPSTREAM_TAG=v2.1.0
GIT_BRANCH=opensuse-2.2
GIT_UPSTREAM_TAG=v2.2.0
GIT_DIR=/dev/shm/qemu-factory-git-dir
CMP_DIR=/dev/shm/qemu-factory-cmp-dir