Accepting request 209786 from home:bfrogers:branches:Virtualization

Update to v1.7

OBS-URL: https://build.opensuse.org/request/show/209786
OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=169
This commit is contained in:
Bruce Rogers 2013-12-08 05:19:09 +00:00 committed by Git OBS Bridge
parent 51008c7ec8
commit f13ae0bb06
50 changed files with 267 additions and 330 deletions

View File

@ -1,4 +1,4 @@
From 96fdd2e375c9cbc38acf54f3d3c5584c8a8c66d6 Mon Sep 17 00:00:00 2001
From bb7aab5b553678fcd83cd00040aa4fc227d34eec 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 23d65da..c6f9968 100644
index 7751c47..a9874b1 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -395,6 +395,10 @@ static void QEMU_NORETURN force_sig(int target_sig)

View File

@ -1,4 +1,4 @@
From f0ca925132c41f666887b42884f878d37a639e2f Mon Sep 17 00:00:00 2001
From 108b10473e39e9952ccd4e5b647f09b06f0f0a4e 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)
@ -12,10 +12,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 03859bc..aae31c1 100644
index 6b4ab09..f60ad35 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
@@ -801,15 +801,22 @@ void cpu_loop(CPUARMState *env)
@@ -810,15 +810,22 @@ void cpu_loop(CPUARMState *env)
break;
}
} else {
@ -48,10 +48,10 @@ index 03859bc..aae31c1 100644
} else {
goto error;
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
index 4a16e8f..9411c77 100644
index da64e87..8137c46 100644
--- a/linux-user/qemu.h
+++ b/linux-user/qemu.h
@@ -131,6 +131,8 @@ typedef struct TaskState {
@@ -133,6 +133,8 @@ typedef struct TaskState {
struct sigqueue sigqueue_table[MAX_SIGQUEUE_SIZE]; /* siginfo queue */
struct sigqueue *first_free; /* first free siginfo queue entry */
int signal_pending; /* non zero if a signal may be pending */
@ -60,8 +60,8 @@ index 4a16e8f..9411c77 100644
} __attribute__((aligned(16))) TaskState;
extern char *exec_path;
@@ -197,6 +199,7 @@ char *target_strerror(int err);
int get_osversion(void);
@@ -200,6 +202,7 @@ int get_osversion(void);
void init_qemu_uname_release(void);
void fork_start(void);
void fork_end(int child);
+int syscall_restartable(int syscall_nr);
@ -69,7 +69,7 @@ index 4a16e8f..9411c77 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 c6f9968..b52c536 100644
index a9874b1..f85341e 100644
--- a/linux-user/signal.c
+++ b/linux-user/signal.c
@@ -25,6 +25,7 @@
@ -118,10 +118,10 @@ index c6f9968..b52c536 100644
ignore state to avoid getting unexpected interrupted
syscalls */
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index f986548..23954c1 100644
index eaaf00d..6097420 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5085,6 +5085,87 @@ static int do_open(void *cpu_env, const char *pathname, int flags, mode_t mode)
@@ -5273,6 +5273,87 @@ static int do_open(void *cpu_env, const char *pathname, int flags, mode_t mode)
return get_errno(open(path(pathname), flags, mode));
}
@ -209,7 +209,7 @@ index f986548..23954c1 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>. */
@@ -5098,6 +5179,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -5286,6 +5367,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
struct stat st;
struct statfs stfs;
void *p;
@ -222,7 +222,7 @@ index f986548..23954c1 100644
#ifdef DEBUG
gemu_log("syscall %d", num);
@@ -8215,7 +8302,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -8391,7 +8478,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;
@ -231,7 +231,7 @@ index f986548..23954c1 100644
}
switch(arg2) {
@@ -9006,6 +9093,7 @@ fail:
@@ -9210,6 +9297,7 @@ fail:
#endif
if(do_strace)
print_syscall_ret(num, ret);

View File

@ -1,4 +1,4 @@
From ced0aacc41a0bc2a5151679bcb4b7cc8cacd657c Mon Sep 17 00:00:00 2001
From 11250c9b05c613b3de5942819048dec001c54b16 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 991aa8e7bc75ce36b24419297f159381897386e8 Mon Sep 17 00:00:00 2001
From bc43cfe17dfc334bd6b1117b16d1dac49c62dd87 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 25491b2938a02eab0aa52511497c38a23bca59dd Mon Sep 17 00:00:00 2001
From 1aacf4b9312f3580be0e894eee5a4009ffa6d464 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 439c2a9..28dc0b2 100644
index 7381012..1c9d67f 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -314,6 +314,11 @@
@@ -315,6 +315,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,10 +2255,10 @@ index 0000000..e09a30d
+ unsigned char *code;
+};
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 086fbff..a8aba1b 100644
index fe540f6..57ac1ce 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -2476,4 +2476,6 @@ struct target_ucred {
@@ -2526,4 +2526,6 @@ struct target_ucred {
uint32_t gid;
};

View File

@ -1,4 +1,4 @@
From 0520529fd0e7b6140b880c9010a5155bd13015db Mon Sep 17 00:00:00 2001
From b90304c9d4edec824aadc6badbd13c5913d74569 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 09234517892afd6d333bb74e9af2aea639b26eaf Mon Sep 17 00:00:00 2001
From 81e1305e8d87d797689947145823d6926a6f6172 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 23954c1..709c167 100644
index 6097420..aef4fb6 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -6236,6 +6236,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -6411,6 +6411,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 29c0e43999b1a7e21718ff83b15ba53fee7dfe4a Mon Sep 17 00:00:00 2001
From c3cfd1495e3d4862634b2a5b3b77db8d0c2ffbeb 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 709c167..7453ff5 100644
index aef4fb6..c8c9e1a 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3649,7 +3649,12 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
@@ -3755,7 +3755,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 30dbae58808b8c3f0d16486b06b2beec329baab4 Mon Sep 17 00:00:00 2001
From 303d0b0031d6e18a31e95579cb21d712fac5499e 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 7453ff5..18ec182 100644
index c8c9e1a..2b4e263 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3683,6 +3683,11 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
@@ -3789,6 +3789,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 7453ff5..18ec182 100644
case IOC_R:
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
if (!is_error(ret)) {
@@ -3701,6 +3706,7 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
@@ -3807,6 +3812,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 9678a942cfcd5bc8640300527d557715a14fb103 Mon Sep 17 00:00:00 2001
From d45da9e89458d0641e80fac80699f847a18714b5 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
@ -9,6 +9,7 @@ Content-Transfer-Encoding: 8bit
Signed-off-by: Ulrich Hecht <uli@suse.de>
[AF: Changed BLOCK_FLAG_SCSI from 8 to 16 for v1.2]
[AF: Rebased onto upstream VMDK SCSI support]
[AF: Rebased onto skipping of image creation in v1.7]
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
block.c | 6 +++++-
@ -18,10 +19,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
4 files changed, 22 insertions(+), 3 deletions(-)
diff --git a/block.c b/block.c
index 01b66d8..35a07a5 100644
index 382ea71..7c89d4e 100644
--- a/block.c
+++ b/block.c
@@ -4469,7 +4469,7 @@ void bdrv_img_create(const char *filename, const char *fmt,
@@ -4503,7 +4503,7 @@ void bdrv_img_create(const char *filename, const char *fmt,
Error **errp, bool quiet)
{
QEMUOptionParameter *param = NULL, *create_options = NULL;
@ -30,7 +31,7 @@ index 01b66d8..35a07a5 100644
BlockDriverState *bs = NULL;
BlockDriver *drv, *proto_drv;
BlockDriver *backing_drv = NULL;
@@ -4579,6 +4579,10 @@ void bdrv_img_create(const char *filename, const char *fmt,
@@ -4617,6 +4617,10 @@ void bdrv_img_create(const char *filename, const char *fmt,
if (!quiet) {
printf("Formatting '%s', fmt=%s ", filename, fmt);
print_option_parameters(param);
@ -40,12 +41,12 @@ index 01b66d8..35a07a5 100644
+ }
puts("");
}
ret = bdrv_create(drv, filename, param);
ret = bdrv_create(drv, filename, param, &local_err);
diff --git a/block/vmdk.c b/block/vmdk.c
index 346bb5c..c45558c 100644
index a7ebd0f..c047a52 100644
--- a/block/vmdk.c
+++ b/block/vmdk.c
@@ -1588,6 +1588,8 @@ static int vmdk_create(const char *filename, QEMUOptionParameter *options)
@@ -1641,6 +1641,8 @@ static int vmdk_create(const char *filename, QEMUOptionParameter *options,
fmt = options->value.s;
} else if (!strcmp(options->name, BLOCK_OPT_ZEROED_GRAIN)) {
zeroed_grain |= options->value.n;
@ -54,7 +55,7 @@ index 346bb5c..c45558c 100644
}
options++;
}
@@ -1691,7 +1693,7 @@ static int vmdk_create(const char *filename, QEMUOptionParameter *options)
@@ -1748,7 +1750,7 @@ static int vmdk_create(const char *filename, QEMUOptionParameter *options,
ext_desc_lines,
(flags & BLOCK_FLAG_COMPAT6 ? 6 : 4),
total_size / (int64_t)(63 * number_heads * 512), number_heads,
@ -63,7 +64,7 @@ index 346bb5c..c45558c 100644
if (split || flat) {
fd = qemu_open(filename,
O_WRONLY | O_CREAT | O_TRUNC | O_BINARY | O_LARGEFILE,
@@ -1820,6 +1822,11 @@ static QEMUOptionParameter vmdk_create_options[] = {
@@ -1926,6 +1928,11 @@ static QEMUOptionParameter vmdk_create_options[] = {
.type = OPT_FLAG,
.help = "Enable efficient zero writes using the zeroed-grain GTE feature"
},
@ -76,18 +77,15 @@ index 346bb5c..c45558c 100644
};
diff --git a/include/block/block_int.h b/include/block/block_int.h
index e45f2a0..74f71ba 100644
index 1666066..9895b61 100644
--- a/include/block/block_int.h
+++ b/include/block/block_int.h
@@ -38,6 +38,7 @@
@@ -40,10 +40,12 @@
#define BLOCK_FLAG_ENCRYPT 1
#define BLOCK_FLAG_COMPAT6 4
#define BLOCK_FLAG_LAZY_REFCOUNTS 8
+#define BLOCK_FLAG_SCSI 16
#define BLOCK_IO_LIMIT_READ 0
#define BLOCK_IO_LIMIT_WRITE 1
@@ -49,6 +50,7 @@
#define BLOCK_OPT_SIZE "size"
#define BLOCK_OPT_ENCRYPT "encryption"
#define BLOCK_OPT_COMPAT6 "compat6"
@ -96,10 +94,10 @@ index e45f2a0..74f71ba 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 b9a848d..abf345e 100644
index b6b5644..98ee71a 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -1127,7 +1127,7 @@ static int img_convert(int argc, char **argv)
@@ -1133,7 +1133,7 @@ static int img_convert(int argc, char **argv)
const uint8_t *buf1;
BlockDriverInfo bdi;
QEMUOptionParameter *param = NULL, *create_options = NULL;
@ -108,7 +106,7 @@ index b9a848d..abf345e 100644
char *options = NULL;
const char *snapshot_name = NULL;
float local_progress = 0;
@@ -1329,6 +1329,12 @@ static int img_convert(int argc, char **argv)
@@ -1340,6 +1340,12 @@ static int img_convert(int argc, char **argv)
}
}
@ -118,6 +116,6 @@ index b9a848d..abf345e 100644
+ goto out;
+ }
+
/* Create the new image */
ret = bdrv_create(drv, out_filename, param);
if (ret < 0) {
if (!skip_create) {
/* Create the new image */
ret = bdrv_create(drv, out_filename, param, &local_err);

View File

@ -1,4 +1,4 @@
From a223094df8e97baebcc74f94f9406899ac31afe5 Mon Sep 17 00:00:00 2001
From 2f5b7655408db4b0f03795589591d44f64d5f270 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
@ -35,7 +35,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 9a49852..58e7a22 100644
index af6ac7e..ce99364 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -31,6 +31,10 @@ PROGS+=$(QEMU_PROGW)
@ -49,7 +49,7 @@ index 9a49852..58e7a22 100644
config-target.h: config-target.h-timestamp
config-target.h-timestamp: config-target.mak
@@ -96,6 +100,8 @@ QEMU_CFLAGS+=-I$(SRC_PATH)/linux-user/$(TARGET_ABI_DIR) -I$(SRC_PATH)/linux-user
@@ -92,6 +96,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
@ -58,7 +58,7 @@ index 9a49852..58e7a22 100644
endif #CONFIG_LINUX_USER
#########################################################
@@ -144,6 +150,9 @@ endif # CONFIG_SOFTMMU
@@ -140,6 +146,9 @@ endif # CONFIG_SOFTMMU
%/translate.o: QEMU_CFLAGS += $(TRANSLATE_OPT_CFLAGS)
nested-vars += obj-y
@ -68,7 +68,7 @@ index 9a49852..58e7a22 100644
# This resolves all nested paths, so it must come last
include $(SRC_PATH)/Makefile.objs
@@ -166,6 +175,9 @@ $(QEMU_PROG): $(all-obj-y) ../libqemuutil.a ../libqemustub.a
@@ -162,6 +171,9 @@ $(QEMU_PROG): $(all-obj-y) ../libqemuutil.a ../libqemustub.a
$(call LINK,$^)
endif

View File

@ -1,4 +1,4 @@
From d7de533ce03531c6cdf7a3327466a752e25c2ae6 Mon Sep 17 00:00:00 2001
From 5bfa8a31057be27c9e618cb3c11628c8d64f7d0a Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Sun, 11 Dec 2011 01:19:24 +0100
Subject: [PATCH] linux-user: Ignore timer_create syscall
@ -12,10 +12,10 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
1 file changed, 5 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 18ec182..eda4455 100644
index 2b4e263..e423def 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -8690,6 +8690,11 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -8866,6 +8866,11 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
break;
#endif

View File

@ -1,4 +1,4 @@
From 61efbfd053a5a2f460bcc252e12d0d8b360455cb Mon Sep 17 00:00:00 2001
From dc88ad73d02655728ed1be588881c7e2868a5430 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Sun, 11 Dec 2011 01:21:51 +0100
Subject: [PATCH] linux-user: be silent about capget failures
@ -13,10 +13,10 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index eda4455..628fe66 100644
index e423def..d5b3d02 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -7609,7 +7609,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
@@ -7785,7 +7785,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
unlock_user(p, arg1, ret);
break;
case TARGET_NR_capget:

View File

@ -1,4 +1,4 @@
From 50e6d901644bdff9b40ff869ecbd33943a63c4d0 Mon Sep 17 00:00:00 2001
From f4b962121f2af60b6daa1c45b0be9ac271833e61 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 3ca9381..e4d92d7 100644
index 95c4356..58b0647 100644
--- a/exec.c
+++ b/exec.c
@@ -944,10 +944,12 @@ static void *file_ram_alloc(RAMBlock *block,
@@ -927,10 +927,12 @@ static void *file_ram_alloc(RAMBlock *block,
return NULL;
}

View File

@ -1,4 +1,4 @@
From 297477e1a20b77e8505ca493884168b0d6f3d9c4 Mon Sep 17 00:00:00 2001
From f2ba1170c16c7ed49ad3978ad2c6e0d459aef5b5 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 46826e0d29aee2fb8917f495c8e2fb21fa01a745 Mon Sep 17 00:00:00 2001
From d72ea666ac421fe62ce7ab7f8b404a4b5ad4e8e6 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 306a5b84ac706fbb123cbe1aecb09e1d906df0fe Mon Sep 17 00:00:00 2001
From 1f7a819e8553dce0bf9c5ab6280b012483cd7b6d Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Tue, 29 May 2012 15:30:01 +0200
Subject: [PATCH] linux-user: arm: no tb_flush on reset
@ -14,10 +14,10 @@ change to at least get a working build again.
1 file changed, 4 insertions(+)
diff --git a/target-arm/cpu.c b/target-arm/cpu.c
index 5a7566b..40bddc3 100644
index d40f2a7..3113456 100644
--- a/target-arm/cpu.c
+++ b/target-arm/cpu.c
@@ -126,7 +126,11 @@ static void arm_cpu_reset(CPUState *s)
@@ -133,7 +133,11 @@ static void arm_cpu_reset(CPUState *s)
* bake assumptions about into translated code, so we need to
* tb_flush().
*/
@ -28,4 +28,4 @@ index 5a7566b..40bddc3 100644
+#endif
}
static inline void set_feature(CPUARMState *env, int feature)
#ifndef CONFIG_USER_ONLY

View File

@ -1,4 +1,4 @@
From 749d4457bf87a20683387e3535b859e71c3d0a54 Mon Sep 17 00:00:00 2001
From 342a8d782336d637da2e22f378684400d8459604 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
@ -18,10 +18,10 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
4 files changed, 10 insertions(+)
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index 28dc0b2..da4f12c 100644
index 1c9d67f..b743309 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -326,6 +326,7 @@
@@ -327,6 +327,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)
@ -41,10 +41,10 @@ index 8974caa..810ae61 100644
#endif
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 628fe66..38ca7af 100644
index d5b3d02..5113d22 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3626,6 +3626,13 @@ static abi_long do_ioctl_rt(const IOCTLEntry *ie, uint8_t *buf_temp,
@@ -3732,6 +3732,13 @@ static abi_long do_ioctl_rt(const IOCTLEntry *ie, uint8_t *buf_temp,
return ret;
}
@ -59,10 +59,10 @@ index 628fe66..38ca7af 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 a8aba1b..bb83772 100644
index 57ac1ce..763fb30 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -1020,6 +1020,7 @@ struct target_pollfd {
@@ -1032,6 +1032,7 @@ struct target_pollfd {
#define TARGET_LOOP_SET_STATUS64 0x4C04
#define TARGET_LOOP_GET_STATUS64 0x4C05
#define TARGET_LOOP_CHANGE_FD 0x4C06

View File

@ -1,4 +1,4 @@
From f118aa109bd0802221fe25d7b8f077eb79ad969e Mon Sep 17 00:00:00 2001
From 7b37ca7330058615efd4da075e39f482099edb5b 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
@ -47,7 +47,7 @@ index 34a5615..7ebf953 100644
}
diff --git a/tcg/tcg.c b/tcg/tcg.c
index dac8224..914456f 100644
index 66d3f3d..a169e53 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -40,6 +40,8 @@
@ -59,7 +59,7 @@ index dac8224..914456f 100644
/* Note: the long term plan is to reduce the dependancies on the QEMU
CPU definitions. Currently they are used for qemu_ld/st
@@ -114,6 +116,29 @@ const size_t tcg_op_defs_max = ARRAY_SIZE(tcg_op_defs);
@@ -117,6 +119,29 @@ const size_t tcg_op_defs_max = ARRAY_SIZE(tcg_op_defs);
static TCGRegSet tcg_target_available_regs[2];
static TCGRegSet tcg_target_call_clobber_regs;
@ -89,7 +89,7 @@ index dac8224..914456f 100644
static inline void tcg_out8(TCGContext *s, uint8_t v)
{
*s->code_ptr++ = v;
@@ -253,7 +278,8 @@ void tcg_context_init(TCGContext *s)
@@ -295,7 +320,8 @@ void tcg_context_init(TCGContext *s)
memset(s, 0, sizeof(*s));
s->nb_globals = 0;
@ -99,7 +99,7 @@ index dac8224..914456f 100644
/* Count total number of arguments and allocate the corresponding
space */
total_args = 0;
@@ -2379,11 +2405,13 @@ int tcg_gen_code(TCGContext *s, uint8_t *gen_code_buf)
@@ -2599,10 +2625,12 @@ int tcg_gen_code(TCGContext *s, uint8_t *gen_code_buf)
}
#endif
@ -107,13 +107,12 @@ index dac8224..914456f 100644
tcg_gen_code_common(s, gen_code_buf, -1);
/* flush instruction cache */
flush_icache_range((tcg_target_ulong)gen_code_buf,
(tcg_target_ulong)s->code_ptr);
flush_icache_range((uintptr_t)gen_code_buf, (uintptr_t)s->code_ptr);
+ tcg_unlock();
return s->code_ptr - gen_code_buf;
}
@@ -2394,7 +2422,11 @@ int tcg_gen_code(TCGContext *s, uint8_t *gen_code_buf)
@@ -2613,7 +2641,11 @@ int tcg_gen_code(TCGContext *s, uint8_t *gen_code_buf)
Return -1 if not found. */
int tcg_gen_code_search_pc(TCGContext *s, uint8_t *gen_code_buf, long offset)
{
@ -127,27 +126,27 @@ index dac8224..914456f 100644
#ifdef CONFIG_PROFILER
diff --git a/tcg/tcg.h b/tcg/tcg.h
index f3f9889..49ede77 100644
index 0d9bd29..720fdd2 100644
--- a/tcg/tcg.h
+++ b/tcg/tcg.h
@@ -46,6 +46,8 @@ typedef uint64_t tcg_target_ulong;
@@ -54,6 +54,8 @@ typedef uint64_t tcg_target_ulong;
#error unsupported
#endif
+#include "config-host.h"
+#include "qemu/thread.h"
#include "tcg-target.h"
#include "tcg-runtime.h"
@@ -490,6 +492,7 @@ struct TCGContext {
TCGLabelQemuLdst *qemu_ldst_labels;
int nb_qemu_ldst_labels;
#endif
#if TCG_TARGET_NB_REGS <= 32
@@ -526,6 +528,7 @@ struct TCGContext {
/* The TCGBackendData structure is private to tcg-target.c. */
struct TCGBackendData *be;
+ QemuMutex lock;
};
extern TCGContext tcg_ctx;
@@ -670,6 +673,9 @@ void tcg_gen_shifti_i64(TCGv_i64 ret, TCGv_i64 arg1,
@@ -703,6 +706,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);
@ -155,5 +154,5 @@ index f3f9889..49ede77 100644
+extern void tcg_unlock(void);
+
/* only used for debugging purposes */
void tcg_register_helper(void *func, const char *name);
const char *tcg_helper_get_name(TCGContext *s, void *func);
void tcg_dump_ops(TCGContext *s);

View File

@ -1,4 +1,4 @@
From 068bcb7ca7d901d84a9868e8ecc2346956e51388 Mon Sep 17 00:00:00 2001
From 5a24d8e40ae04bbc4cb20472e16c86f5b587d1cb 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 38ca7af..8aef3e8 100644
index 5113d22..7be6873 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -4326,6 +4326,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
@@ -4432,6 +4432,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 f9b22f171b7a6ca44ca37918dd0b2304becbd324 Mon Sep 17 00:00:00 2001
From 8066265b8a179b791443faa55f79533086a7531c 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,7 +14,7 @@ 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 3b5fc7c..165a63e 100644
index aeda54d..6cfba5a 100644
--- a/translate-all.c
+++ b/translate-all.c
@@ -612,19 +612,23 @@ static TranslationBlock *tb_alloc(target_ulong pc)
@ -84,7 +84,7 @@ index 3b5fc7c..165a63e 100644
}
/* len must be <= 8 and start must be a multiple of len */
@@ -1336,13 +1346,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
@@ -1324,13 +1334,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
{
int m_min, m_max, m;
uintptr_t v;
@ -102,7 +102,7 @@ index 3b5fc7c..165a63e 100644
return NULL;
}
/* binary search (cf Knuth) */
@@ -1353,6 +1366,7 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
@@ -1341,6 +1354,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 3b5fc7c..165a63e 100644
return tb;
} else if (tc_ptr < v) {
m_max = m - 1;
@@ -1360,7 +1374,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
@@ -1348,7 +1362,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
m_min = m + 1;
}
}

View File

@ -1,4 +1,4 @@
From a15d5879a156f448bdcf33f3ab9b1d45d4ceb7b0 Mon Sep 17 00:00:00 2001
From c34029edc401e149283f86f6a14c41cc5d24d737 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
@ -15,17 +15,17 @@ on the selected CPU. Please do not submit this patch upstream until this
has happened.
Signed-off-by: Alexander Graf <agraf@suse.de>
[AF: Rebased for v1.6]
[AF: Rebased for v1.6 and v1.7]
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
linux-user/syscall.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 8aef3e8..429ab3a 100644
index 7be6873..e678f9b 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5011,6 +5011,25 @@ static int open_self_stat(void *cpu_env, int fd)
@@ -5151,6 +5151,25 @@ static int open_self_stat(void *cpu_env, int fd)
return 0;
}
@ -51,11 +51,11 @@ index 8aef3e8..429ab3a 100644
static int open_self_auxv(void *cpu_env, int fd)
{
TaskState *ts = ((CPUArchState *)cpu_env)->opaque;
@@ -5075,6 +5094,7 @@ static int do_open(void *cpu_env, const char *pathname, int flags, mode_t mode)
{ "maps", open_self_maps },
{ "stat", open_self_stat },
{ "auxv", open_self_auxv },
+ { "cpuinfo", open_cpuinfo },
{ NULL, NULL }
@@ -5263,6 +5282,7 @@ static int do_open(void *cpu_env, const char *pathname, int flags, mode_t mode)
#if defined(HOST_WORDS_BIGENDIAN) != defined(TARGET_WORDS_BIGENDIAN)
{ "/proc/net/route", open_net_route, is_proc },
#endif
+ { "cpuinfo", open_cpuinfo, is_proc_myself },
{ NULL, NULL, NULL }
};

View File

@ -1,4 +1,4 @@
From 9834aedad699d489cf3a4da2a0f9c7762f52ac81 Mon Sep 17 00:00:00 2001
From e5a126a039903adc1be28c3860378d21cd1e69ec 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 da4f12c..17b67af 100644
index b743309..f273ccb 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -86,6 +86,7 @@
@@ -87,6 +87,7 @@
IOCTL_SPECIAL(FS_IOC_FIEMAP, IOC_W | IOC_R, do_ioctl_fs_ioc_fiemap,
MK_PTR(MK_STRUCT(STRUCT_fiemap)))
#endif
@ -28,10 +28,10 @@ index da4f12c..17b67af 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 bb83772..7a08123 100644
index 763fb30..9ddec49 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -2391,6 +2391,8 @@ struct target_eabi_flock64 {
@@ -2441,6 +2441,8 @@ struct target_eabi_flock64 {
#define TARGET_MTIOCGET TARGET_IOR('m', 2, struct mtget)
#define TARGET_MTIOCPOS TARGET_IOR('m', 3, struct mtpos)

View File

@ -1,4 +1,4 @@
From 03739a1757adb64bcd5a4892eb7b5a01d55039c0 Mon Sep 17 00:00:00 2001
From 15305b991f0b484b1fef9fcdb0859bb784fc8d94 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 17b67af..a77b72c 100644
index f273ccb..a5f3514 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -87,6 +87,7 @@
@@ -88,6 +88,7 @@
MK_PTR(MK_STRUCT(STRUCT_fiemap)))
#endif
IOCTL(FS_IOC_GETFLAGS, IOC_R, MK_PTR(TYPE_LONG))
@ -28,10 +28,10 @@ index 17b67af..a77b72c 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 7a08123..bbcdec2 100644
index 9ddec49..4ab3a61 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -2392,6 +2392,7 @@ struct target_eabi_flock64 {
@@ -2442,6 +2442,7 @@ struct target_eabi_flock64 {
#define TARGET_MTIOCPOS TARGET_IOR('m', 3, struct mtpos)
#define TARGET_FS_IOC_GETFLAGS TARGET_IORU('f', 1)

View File

@ -1,4 +1,4 @@
From 497b59964cc331b71ca5f9faa8e79384b56c3dba Mon Sep 17 00:00:00 2001
From e903c77c77f6c01a73de3f0df4668c692ad409a1 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 429ab3a..5c42bc9 100644
index e678f9b..7fc61fe 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -3183,6 +3183,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
@@ -3289,6 +3289,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 75fab73abdedf67a016fd49767a321ae796a374a Mon Sep 17 00:00:00 2001
From 34064f187f0bf84ae3388cda80e5a693023e5746 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 d15338e..e8097ac 100644
index 8b94264..179cf72 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -2574,6 +2574,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU
@@ -2578,6 +2578,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU
from a script.
ETEXI
@ -33,7 +33,7 @@ index d15338e..e8097ac 100644
"-singlestep always run in singlestep mode\n", QEMU_ARCH_ALL)
STEXI
diff --git a/slirp/socket.c b/slirp/socket.c
index 8e8819c..57a45dc 100644
index 37ac5cf..b64baff 100644
--- a/slirp/socket.c
+++ b/slirp/socket.c
@@ -532,6 +532,8 @@ sorecvfrom(struct socket *so)
@ -59,7 +59,7 @@ index 8e8819c..57a45dc 100644
ret = sendto(so->s, m->m_data, m->m_len, 0,
(struct sockaddr *)&addr, sizeof (struct sockaddr));
diff --git a/slirp/tcp_subr.c b/slirp/tcp_subr.c
index 043f28f..76b6525 100644
index 7571c5a..0555e18 100644
--- a/slirp/tcp_subr.c
+++ b/slirp/tcp_subr.c
@@ -324,6 +324,9 @@ tcp_sockclosed(struct tcpcb *tp)
@ -84,7 +84,7 @@ index 043f28f..76b6525 100644
if( (ret = so->s = qemu_socket(AF_INET,SOCK_STREAM,0)) >= 0) {
int opt, s=so->s;
struct sockaddr_in addr;
@@ -425,6 +433,11 @@ void tcp_connect(struct socket *inso)
@@ -424,6 +432,11 @@ void tcp_connect(struct socket *inso)
tcp_close(sototcpcb(so)); /* This will sofree() as well */
return;
}
@ -94,10 +94,10 @@ index 043f28f..76b6525 100644
+ return;
+ }
qemu_set_nonblock(s);
socket_set_fast_reuse(s);
opt = 1;
qemu_setsockopt(s, SOL_SOCKET, SO_REUSEADDR, &opt, sizeof(int));
diff --git a/vl.c b/vl.c
index f422a1c..b041911 100644
index 8d5d874..c95e9e6 100644
--- a/vl.c
+++ b/vl.c
@@ -217,6 +217,7 @@ const char *vnc_display;
@ -108,7 +108,7 @@ index f422a1c..b041911 100644
static int no_reboot;
int no_shutdown = 0;
int cursor_hide = 1;
@@ -3307,6 +3308,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 6c83da90ce0fc7b27960c0d2233c8c519a0d4bf3 Mon Sep 17 00:00:00 2001
From f364cea24a3cbacd003ea048a20e6e6aea639221 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=

View File

@ -1,4 +1,4 @@
From 75a4b3cab3c942e611a254e519ca327e6ca25a7c Mon Sep 17 00:00:00 2001
From bb1e4498e57e320011c87f203fab45e01be84b99 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,10 +13,10 @@ 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 a77b72c..4c6d2ee 100644
index a5f3514..a96a419 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -71,6 +71,24 @@
@@ -72,6 +72,24 @@
#ifdef BLKGETSIZE64
IOCTL(BLKGETSIZE64, IOC_R, MK_PTR(TYPE_ULONGLONG))
#endif
@ -42,10 +42,10 @@ index a77b72c..4c6d2ee 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 bbcdec2..5aeb3dd 100644
index 4ab3a61..2d41202 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -889,6 +889,12 @@ struct target_pollfd {
@@ -901,6 +901,12 @@ struct target_pollfd {
#define TARGET_BLKGETSIZE64 TARGET_IOR(0x12,114,abi_ulong)
/* return device size in bytes
(u64 *arg) */

View File

@ -1,4 +1,4 @@
From 8c47c74320ada483abce527ab144c414f8c6a17e Mon Sep 17 00:00:00 2001
From 29aa5e72e8344cb0357a07c92f9603eeebfe3fb6 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Tue, 9 Oct 2012 09:06:49 +0200
Subject: [PATCH] linux-user: use target_ulong
@ -17,10 +17,10 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
index 9411c77..26c51a6 100644
index 8137c46..710ded7 100644
--- a/linux-user/qemu.h
+++ b/linux-user/qemu.h
@@ -188,10 +188,10 @@ abi_long memcpy_to_target(abi_ulong dest, const void *src,
@@ -190,10 +190,10 @@ abi_long memcpy_to_target(abi_ulong dest, const void *src,
void target_set_brk(abi_ulong new_brk);
abi_long do_brk(abi_ulong new_brk);
void syscall_init(void);
@ -36,10 +36,10 @@ index 9411c77..26c51a6 100644
extern THREAD CPUState *thread_cpu;
void cpu_loop(CPUArchState *env);
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 5c42bc9..ab30b58 100644
index 7fc61fe..b794666 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5221,10 +5221,10 @@ int syscall_restartable(int syscall_nr)
@@ -5409,10 +5409,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,7 +1,7 @@
From f78e195390bcae1cc3de7d401a52dd2a0113017b Mon Sep 17 00:00:00 2001
From 59e80cf171a9fc9d381af5d94c9db38612486a05 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Wed, 5 Aug 2009 09:49:37 +0200
Subject: [PATCH] Add support for DictZip enabled gzip files
Subject: [PATCH] block: Add support for DictZip enabled gzip files
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@ -25,6 +25,7 @@ Signed-off-by: Bruce Rogers <brogers@novell.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
[TH: Use bdrv_open options instead of filename]
Signed-off-by: Tim Hardeck <thardeck@suse.de>
[AF: Error **errp added for bdrv_file_open, bdrv_delete -> bdrv_unref]
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
block/Makefile.objs | 1 +
@ -33,7 +34,7 @@ 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 4cf9aa4..2b1c535 100644
index f43ecbc..581581f 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
@@ -22,5 +22,6 @@ common-obj-y += stream.o
@ -45,7 +46,7 @@ index 4cf9aa4..2b1c535 100644
$(obj)/curl.o: QEMU_CFLAGS+=$(CURL_CFLAGS)
diff --git a/block/dictzip.c b/block/dictzip.c
new file mode 100644
index 0000000..0ef327b
index 0000000..8916cfa
--- /dev/null
+++ b/block/dictzip.c
@@ -0,0 +1,596 @@
@ -208,7 +209,7 @@ index 0000000..0ef327b
+ },
+};
+
+static int dictzip_open(BlockDriverState *bs, QDict *options, int flags)
+static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error **errp)
+{
+ BDRVDictZipState *s = bs->opaque;
+ const char *err = "Unknown (read error?)";
@ -232,8 +233,7 @@ index 0000000..0ef327b
+ opts = qemu_opts_create_nofail(&runtime_opts);
+ qemu_opts_absorb_qdict(opts, options, &local_err);
+ if (error_is_set(&local_err)) {
+ qerror_report_err(local_err);
+ error_free(local_err);
+ error_propagate(errp, local_err);
+ ret = -EINVAL;
+ goto fail;
+ }
@ -245,8 +245,9 @@ index 0000000..0ef327b
+ else if (!strncmp(filename, "dzip:", 5))
+ filename += 5;
+
+ ret = bdrv_file_open(&s->hd, filename, NULL, flags);
+ ret = bdrv_file_open(&s->hd, filename, NULL, flags, &local_err);
+ if (ret < 0) {
+ error_propagate(errp, local_err);
+ qemu_opts_del(opts);
+ return ret;
+ }
@ -414,7 +415,7 @@ index 0000000..0ef327b
+
+fail:
+ fprintf(stderr, "DictZip: Error opening file: %s\n", err);
+ bdrv_delete(s->hd);
+ bdrv_unref(s->hd);
+ if (s->chunks)
+ g_free(s->chunks);
+ qemu_opts_del(opts);

View File

@ -1,7 +1,7 @@
From cd0d68057632b737fed37ab82e559a57ad6d473d Mon Sep 17 00:00:00 2001
From 87eb7dec88d00f4196fabbc5162cebb1ff6c4278 Mon Sep 17 00:00:00 2001
From: Alexander Graf <agraf@suse.de>
Date: Wed, 5 Aug 2009 17:28:38 +0200
Subject: [PATCH] Add tar container format
Subject: [PATCH] block: Add tar container format
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@ -26,6 +26,7 @@ Signed-off-by: Bruce Rogers <brogers@novell.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
[TH: Use bdrv_open options instead of filename]
Signed-off-by: Tim Hardeck <thardeck@suse.de>
[AF: bdrv_file_open got an Error **errp argument, bdrv_delete -> brd_unref]
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
block/Makefile.objs | 1 +
@ -34,7 +35,7 @@ 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 2b1c535..5b0d3ef 100644
index 581581f..d4f31ee 100644
--- a/block/Makefile.objs
+++ b/block/Makefile.objs
@@ -23,5 +23,6 @@ common-obj-y += commit.o
@ -46,7 +47,7 @@ index 2b1c535..5b0d3ef 100644
$(obj)/curl.o: QEMU_CFLAGS+=$(CURL_CFLAGS)
diff --git a/block/tar.c b/block/tar.c
new file mode 100644
index 0000000..87bf552
index 0000000..24ed37b
--- /dev/null
+++ b/block/tar.c
@@ -0,0 +1,386 @@
@ -216,7 +217,7 @@ index 0000000..87bf552
+ },
+};
+
+static int tar_open(BlockDriverState *bs, QDict *options, int flags)
+static int tar_open(BlockDriverState *bs, QDict *options, int flags, Error **errp)
+{
+ BDRVTarState *s = bs->opaque;
+ char header[SECTOR_SIZE];
@ -231,8 +232,7 @@ index 0000000..87bf552
+ opts = qemu_opts_create_nofail(&runtime_opts);
+ qemu_opts_absorb_qdict(opts, options, &local_err);
+ if (error_is_set(&local_err)) {
+ qerror_report_err(local_err);
+ error_free(local_err);
+ error_propagate(errp, local_err);
+ ret = -EINVAL;
+ goto fail;
+ }
@ -244,8 +244,9 @@ index 0000000..87bf552
+ else if (!strncmp(filename, "tar:", 4))
+ filename += 4;
+
+ ret = bdrv_file_open(&s->hd, filename, NULL, flags);
+ ret = bdrv_file_open(&s->hd, filename, NULL, flags, &local_err);
+ if (ret < 0) {
+ error_propagate(errp, local_err);
+ qemu_opts_del(opts);
+ return ret;
+ }
@ -318,7 +319,7 @@ index 0000000..87bf552
+
+fail:
+ fprintf(stderr, "Tar: Error opening file\n");
+ bdrv_delete(s->hd);
+ bdrv_unref(s->hd);
+ qemu_opts_del(opts);
+ return -EINVAL;
+}

View File

@ -1,4 +1,4 @@
From 4a44e0ec2e8c8db76a952979817f27c84883afd9 Mon Sep 17 00:00:00 2001
From 07c245de0ee18627f5ba0bd91f53e581868a09fa 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 87bf552..bf24c98 100644
index 24ed37b..c324240 100644
--- a/block/tar.c
+++ b/block/tar.c
@@ -83,7 +83,8 @@ static int str_ends(char *str, const char *end)
@ -39,7 +39,7 @@ index 87bf552..bf24c98 100644
return retval;
}
@@ -229,12 +237,13 @@ static int tar_open(BlockDriverState *bs, QDict *options, int flags)
@@ -229,12 +237,13 @@ static int tar_open(BlockDriverState *bs, QDict *options, int flags, Error **err
bdrv_pread(s->hd, header_offs - s->file_len, s->longfile,
sizeof(s->longfile));
s->longfile[sizeof(s->longfile)-1] = '\0';

View File

@ -1,4 +1,4 @@
From 111d3238b56181b57b210d34f787a8a4edb3c771 Mon Sep 17 00:00:00 2001
From 8e742d4b086acbff8285675935ba439b598de5a8 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 c0d61bf..adc389f 100644
index 0a88e68..0716a72 100644
--- a/net/net.c
+++ b/net/net.c
@@ -139,6 +139,27 @@ void qemu_format_nic_info_str(NetClientState *nc, uint8_t macaddr[6])
@@ -141,6 +141,27 @@ void qemu_format_nic_info_str(NetClientState *nc, uint8_t macaddr[6])
macaddr[3], macaddr[4], macaddr[5]);
}
@ -39,7 +39,7 @@ index c0d61bf..adc389f 100644
void qemu_macaddr_default_if_unset(MACAddr *macaddr)
{
static int index = 0;
@@ -1179,6 +1200,7 @@ int net_init_clients(void)
@@ -1185,6 +1206,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 d07f6959fd23555f651e5d8d7c04a8ba344a9b7d Mon Sep 17 00:00:00 2001
From 1c20cbb2976e61d615682fe28dd8de87b573fab5 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 e3e8297..8784cd0 100644
index 199ba69..f7894f8 100644
--- a/ui/console.c
+++ b/ui/console.c
@@ -897,7 +897,7 @@ static void console_putchar(QemuConsole *s, int ch)
@@ -864,7 +864,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 6e8d1f52bcc65003f128e6e78add927415d19cc8 Mon Sep 17 00:00:00 2001
From c9c835120d3b24d813374a58bd0aaa4ce0dc398b 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 1be1cf6..ad7c8fd 100644
index e00f84c..60faa71 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -249,6 +249,9 @@ typedef struct {
@@ -252,6 +252,9 @@ typedef struct {
IOEventHandler *chr_event[MAX_MUX];
void *ext_opaque[MAX_MUX];
CharDriverState *drv;
@ -35,7 +35,7 @@ index 1be1cf6..ad7c8fd 100644
int focus;
int mux_cnt;
int term_got_escape;
@@ -405,6 +408,15 @@ static void mux_chr_accept_input(CharDriverState *chr)
@@ -408,6 +411,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 1be1cf6..ad7c8fd 100644
}
static int mux_chr_can_read(void *opaque)
@@ -527,6 +539,10 @@ static CharDriverState *qemu_chr_open_mux(CharDriverState *drv)
@@ -530,6 +542,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 8b6c3923497e577546cb1a388decfa1e63496d10 Mon Sep 17 00:00:00 2001
From 2a97fe64cb1a621b99dcb4f5f37f30264e63bbbd 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 ab30b58..4136873 100644
index b794666..4f7327a 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -5548,9 +5548,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
@@ -5723,9 +5723,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 1f06ce5f93f5eecbf739e39c08cf1ad12d9def2b Mon Sep 17 00:00:00 2001
From d56b7f021794a2c7ea33506b089152e6bd98e19c 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,96 +0,0 @@
From f53729fe3c617028aad57b8d7d01f34d1740c20c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
Date: Mon, 12 Aug 2013 18:09:47 +0200
Subject: [PATCH] gdbstub: Fix gdb_register_coprocessor() register counting
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Commit a0e372f0c49ac01faeaeb73a6e8f50e8ac615f34 reorganized the register
counting for GDB. While it seems correct not to let the total number of
registers skyrocket in an SMP scenario through a static variable, the
distinction between total register count and 'g' packet register count
(last_reg vs. num_g_regs) got lost among the way.
Fix this by introducing CPUState::gdb_num_g_regs and using that in
gdb_handle_packet().
Reported-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Cc: qemu-stable@nongnu.org (stable-1.6)
Tested-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Tested-by: Max Filippov <jcmvbkbc@gmail.com>
Tested-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Andreas Färber <afaerber@suse.de>
(cherry-picked from commit 35143f0164e6933a85c7c2b8a89a040d881a9151)
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
gdbstub.c | 6 ++++--
include/qom/cpu.h | 2 ++
qom/cpu.c | 2 +-
3 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/gdbstub.c b/gdbstub.c
index 1af25a6..9d067d6 100644
--- a/gdbstub.c
+++ b/gdbstub.c
@@ -621,6 +621,8 @@ void gdb_register_coprocessor(CPUState *cpu,
if (g_pos != s->base_reg) {
fprintf(stderr, "Error: Bad gdb register numbering for '%s'\n"
"Expected %d got %d\n", xml, g_pos, s->base_reg);
+ } else {
+ cpu->gdb_num_g_regs = cpu->gdb_num_regs;
}
}
}
@@ -902,7 +904,7 @@ static int gdb_handle_packet(GDBState *s, const char *line_buf)
case 'g':
cpu_synchronize_state(s->g_cpu);
len = 0;
- for (addr = 0; addr < s->g_cpu->gdb_num_regs; addr++) {
+ for (addr = 0; addr < s->g_cpu->gdb_num_g_regs; addr++) {
reg_size = gdb_read_register(s->g_cpu, mem_buf + len, addr);
len += reg_size;
}
@@ -914,7 +916,7 @@ static int gdb_handle_packet(GDBState *s, const char *line_buf)
registers = mem_buf;
len = strlen(p) / 2;
hextomem((uint8_t *)registers, p, len);
- for (addr = 0; addr < s->g_cpu->gdb_num_regs && len > 0; addr++) {
+ for (addr = 0; addr < s->g_cpu->gdb_num_g_regs && len > 0; addr++) {
reg_size = gdb_write_register(s->g_cpu, registers, addr);
len -= reg_size;
registers += reg_size;
diff --git a/include/qom/cpu.h b/include/qom/cpu.h
index 0d6e95c..3e49936 100644
--- a/include/qom/cpu.h
+++ b/include/qom/cpu.h
@@ -152,6 +152,7 @@ struct kvm_run;
* @current_tb: Currently executing TB.
* @gdb_regs: Additional GDB registers.
* @gdb_num_regs: Number of total registers accessible to GDB.
+ * @gdb_num_g_regs: Number of registers in GDB 'g' packets.
* @next_cpu: Next CPU sharing TB cache.
* @kvm_fd: vCPU file descriptor for KVM.
*
@@ -188,6 +189,7 @@ struct CPUState {
struct TranslationBlock *current_tb;
struct GDBRegisterState *gdb_regs;
int gdb_num_regs;
+ int gdb_num_g_regs;
CPUState *next_cpu;
int kvm_fd;
diff --git a/qom/cpu.c b/qom/cpu.c
index aa95108..e71e57b 100644
--- a/qom/cpu.c
+++ b/qom/cpu.c
@@ -240,7 +240,7 @@ static void cpu_common_initfn(Object *obj)
CPUState *cpu = CPU(obj);
CPUClass *cc = CPU_GET_CLASS(obj);
- cpu->gdb_num_regs = cc->gdb_num_core_regs;
+ cpu->gdb_num_regs = cpu->gdb_num_g_regs = cc->gdb_num_core_regs;
}
static int64_t cpu_common_get_arch_id(CPUState *cpu)

View File

@ -1,4 +1,4 @@
From 2bf9e17dc9b16ed6094ba923479b5dc38f549141 Mon Sep 17 00:00:00 2001
From 752e7f8fd399dd18f0eb59e63588cdf877c76d42 Mon Sep 17 00:00:00 2001
From: Bruce Rogers <brogers@suse.com>
Date: Wed, 2 Oct 2013 17:51:46 +0200
Subject: [PATCH] roms: Build vgabios.bin
@ -8,15 +8,15 @@ Subject: [PATCH] roms: Build vgabios.bin
1 file changed, 2 insertions(+)
diff --git a/roms/Makefile b/roms/Makefile
index 7a228ae..bbf21a9 100644
index 10d5a65..3bb1f48 100644
--- a/roms/Makefile
+++ b/roms/Makefile
@@ -50,6 +50,8 @@ seavgabios-%: config.vga.%
cp seabios/out/vgabios.bin ../pc-bios/vgabios-$*.bin
@@ -80,6 +80,8 @@ build-seabios-config-%: config.%
lgplvgabios: $(patsubst %,lgplvgabios-%,$(vgabios_variants))
+ make -C vgabios vgabios.bin
+ cp vgabios/VGABIOS-lgpl-latest.bin ../pc-bios/vgabios.bin
lgplvgabios-%:
make -C vgabios vgabios-$*.bin
lgplvgabios-isavga: build-lgplvgabios
cp vgabios/VGABIOS-lgpl-latest.bin ../pc-bios/vgabios.bin

View File

@ -1,4 +1,4 @@
From 0f48ef2d13e261e7dbb05e8ac74d719ce9158f5a Mon Sep 17 00:00:00 2001
From 26cd29bf6bce044ae2eb852e4ac135f5930f6ce8 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
@ -7,21 +7,22 @@ Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Dinar Valeev <dvaleev@suse.com>
[AF: Rebased for v1.7]
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
index 18fa608..0a4b22e 100755
index 0666228..d508d50 100755
--- a/configure
+++ b/configure
@@ -1251,7 +1251,7 @@ fi
@@ -1320,7 +1320,7 @@ fi
if test "$pie" = ""; then
case "$cpu-$targetos" in
- i386-Linux|x86_64-Linux|i386-OpenBSD|x86_64-OpenBSD)
+ i386-Linux|x86_64-Linux|ppc*-Linux|i386-OpenBSD|x86_64-OpenBSD)
- i386-Linux|x86_64-Linux|x32-Linux|i386-OpenBSD|x86_64-OpenBSD)
+ i386-Linux|x86_64-Linux|x32-Linux|ppc*-Linux|i386-OpenBSD|x86_64-OpenBSD)
;;
*)
pie="no"

15
iasl_workaround.patch Normal file
View File

@ -0,0 +1,15 @@
--- qemu-1.7.0/roms/seabios/Makefile
+++ qemu-1.7.0/roms/seabios/Makefile
@@ -219,7 +219,11 @@ $(OUT)%.hex: src/%.dsl ./tools/acpi_extr
@echo " Compiling IASL $@"
$(Q)$(CPP) $(CPPFLAGS) $< -o $(OUT)$*.dsl.i.orig
$(Q)$(PYTHON) ./tools/acpi_extract_preprocess.py $(OUT)$*.dsl.i.orig > $(OUT)$*.dsl.i
- $(Q)$(IASL) $(call iasl-option,$(IASL),-Pn,) -vs -l -tc -p $(OUT)$* $(OUT)$*.dsl.i
+ $(Q)rm -rf /tmp/iasl_workaround
+ $(Q)mkdir /tmp/iasl_workaround
+ $(Q)$(IASL) $(call iasl-option,$(IASL),-Pn,) -vs -l -tc -p /tmp/iasl_workaround/$* $(OUT)$*.dsl.i
+ $(Q)mv /tmp/iasl_workaround/* $(OUT)
+ $(Q)rmdir /tmp/iasl_workaround
$(Q)$(PYTHON) ./tools/acpi_extract.py $(OUT)$*.lst > $(OUT)$*.off
$(Q)cat $(OUT)$*.off > $@

View File

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

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

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

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Fri Dec 6 22:21:50 UTC 2013 - afaerber@suse.de
- Update to v1.7.0: See http://wiki.qemu-project.org/ChangeLog/1.7
* Adapted update_git.sh accordingly
-------------------------------------------------------------------
Sat Aug 17 12:12:57 UTC 2013 - afaerber@suse.de

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: 1.6.0
Version: 1.7.0
Release: 0
Source: qemu-1.6.0.tar.bz2
Source: qemu-1.7.0.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patc.patch
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
@ -54,17 +54,16 @@ Patch0026: 0026-slirp-nooutgoing.patch.patch
Patch0027: 0027-vnc-password-file-and-incoming-conn.patch
Patch0028: 0028-linux-user-add-more-blk-ioctls.patc.patch
Patch0029: 0029-linux-user-use-target_ulong.patch.patch
Patch0030: 0030-Add-support-for-DictZip-enabled-gzi.patch
Patch0031: 0031-Add-tar-container-format.patch.patch
Patch0030: 0030-block-Add-support-for-DictZip-enabl.patch
Patch0031: 0031-block-Add-tar-container-format.patc.patch
Patch0032: 0032-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
Patch0033: 0033-Legacy-Patch-kvm-qemu-preXX-report-.patch
Patch0034: 0034-console-add-question-mark-escape-op.patch
Patch0035: 0035-Make-char-muxer-more-robust-wrt-sma.patch
Patch0036: 0036-linux-user-lseek-explicitly-cast-no.patch
Patch0037: 0037-virtfs-proxy-helper-Provide-__u64-f.patch
Patch0038: 0038-gdbstub-Fix-gdb_register_coprocesso.patch
Patch0039: 0039-roms-Build-vgabios.bin.patch.patch
Patch0040: 0040-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0038: 0038-roms-Build-vgabios.bin.patch.patch
Patch0039: 0039-configure-Enable-PIE-for-ppc-and-pp.patch
# Please do not add patches manually here, run update_git.sh.
# this is to make lint happy
Source300: rpmlintrc
@ -116,7 +115,7 @@ emulations. This can be used together with the OBS build script to
run cross-architecture builds.
%prep
%setup -q -n qemu-1.6.0
%setup -q -n qemu-1.7.0
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@ -156,7 +155,6 @@ run cross-architecture builds.
%patch0037 -p1
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
%build
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \

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: 1.6.0
Version: 1.7.0
Release: 0
Source: qemu-1.6.0.tar.bz2
Source: qemu-1.7.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.
@ -77,7 +77,7 @@ emulations. This can be used together with the OBS build script to
run cross-architecture builds.
%prep
%setup -q -n qemu-1.6.0
%setup -q -n qemu-1.7.0
PATCH_EXEC
%build

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Fri Dec 6 22:21:50 UTC 2013 - afaerber@suse.de
- Update to v1.7.0: See http://wiki.qemu-project.org/ChangeLog/1.7
* Adapted update_git.sh accordingly
* Dropped --enable-mixemu (no longer available)
* Added a work around patch for an iasl bug
-------------------------------------------------------------------
Wed Oct 9 16:23:56 UTC 2013 - dmueller@suse.com

View File

@ -28,9 +28,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: 1.6.0
Version: 1.7.0
Release: 0
Source: %name-1.6.0.tar.bz2
Source: %name-1.7.0.tar.bz2
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patc.patch
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
@ -61,23 +61,23 @@ Patch0026: 0026-slirp-nooutgoing.patch.patch
Patch0027: 0027-vnc-password-file-and-incoming-conn.patch
Patch0028: 0028-linux-user-add-more-blk-ioctls.patc.patch
Patch0029: 0029-linux-user-use-target_ulong.patch.patch
Patch0030: 0030-Add-support-for-DictZip-enabled-gzi.patch
Patch0031: 0031-Add-tar-container-format.patch.patch
Patch0030: 0030-block-Add-support-for-DictZip-enabl.patch
Patch0031: 0031-block-Add-tar-container-format.patc.patch
Patch0032: 0032-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
Patch0033: 0033-Legacy-Patch-kvm-qemu-preXX-report-.patch
Patch0034: 0034-console-add-question-mark-escape-op.patch
Patch0035: 0035-Make-char-muxer-more-robust-wrt-sma.patch
Patch0036: 0036-linux-user-lseek-explicitly-cast-no.patch
Patch0037: 0037-virtfs-proxy-helper-Provide-__u64-f.patch
Patch0038: 0038-gdbstub-Fix-gdb_register_coprocesso.patch
Patch0039: 0039-roms-Build-vgabios.bin.patch.patch
Patch0040: 0040-configure-Enable-PIE-for-ppc-and-pp.patch
Patch0038: 0038-roms-Build-vgabios.bin.patch.patch
Patch0039: 0039-configure-Enable-PIE-for-ppc-and-pp.patch
# Please do not add patches manually here, run update_git.sh.
# roms/ipxe patches
Patch1000: ipxe-build-Work-around-bug-in-gcc-4.8.patch
Patch1001: ipxe-zbin-Fix-size-used-for-memset-in-al.patch
Patch1002: ipxe-build-Avoid-strict-aliasing-warning.patch
Patch1003: iasl_workaround.patch
# end roms/ipxe patches
# this is to make lint happy
@ -260,7 +260,7 @@ as PC and PowerMac systems.
This sub-package contains the guest agent.
%prep
%setup -q #-n %name-1.6.0-rc3
%setup -q #-n %name-1.7.0-rc2
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
@ -300,11 +300,11 @@ This sub-package contains the guest agent.
%patch0037 -p1
%patch0038 -p1
%patch0039 -p1
%patch0040 -p1
%patch1000 -p1
%patch1001 -p1
%patch1002 -p1
%patch1003 -p1
%if %{build_x86_fw_from_source}
# as a safeguard, delete the firmware files that we intend to build
@ -323,7 +323,7 @@ done
--enable-tools --enable-guest-agent \
--enable-pie \
--enable-docs \
--audio-drv-list="pa alsa sdl oss" --enable-mixemu \
--audio-drv-list="pa alsa sdl oss" \
%if 0%{?suse_version} >= 1130
--enable-brlapi \
%endif
@ -362,9 +362,11 @@ make %{?_smp_mflags} V=1
# Firmware
%if %{build_x86_fw_from_source}
make -C roms bios
make -C roms lgplvgabios
make -C roms pxerom
cd roms
make bios
make lgplvgabios
make pxerom
cd ..
make -C roms/sgabios
cp roms/sgabios/sgabios.bin pc-bios/sgabios.bin
%endif

View File

@ -28,9 +28,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: 1.6.0
Version: 1.7.0
Release: 0
Source: %name-1.6.0.tar.bz2
Source: %name-1.7.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.
@ -39,6 +39,7 @@ PATCH_FILES
Patch1000: ipxe-build-Work-around-bug-in-gcc-4.8.patch
Patch1001: ipxe-zbin-Fix-size-used-for-memset-in-al.patch
Patch1002: ipxe-build-Avoid-strict-aliasing-warning.patch
Patch1003: iasl_workaround.patch
# end roms/ipxe patches
# this is to make lint happy
@ -221,12 +222,13 @@ as PC and PowerMac systems.
This sub-package contains the guest agent.
%prep
%setup -q #-n %name-1.6.0-rc3
%setup -q #-n %name-1.7.0-rc2
PATCH_EXEC
%patch1000 -p1
%patch1001 -p1
%patch1002 -p1
%patch1003 -p1
%if %{build_x86_fw_from_source}
# as a safeguard, delete the firmware files that we intend to build
@ -245,7 +247,7 @@ done
--enable-tools --enable-guest-agent \
--enable-pie \
--enable-docs \
--audio-drv-list="pa alsa sdl oss" --enable-mixemu \
--audio-drv-list="pa alsa sdl oss" \
%if 0%{?suse_version} >= 1130
--enable-brlapi \
%endif
@ -284,9 +286,11 @@ make %{?_smp_mflags} V=1
# Firmware
%if %{build_x86_fw_from_source}
make -C roms bios
make -C roms lgplvgabios
make -C roms pxerom
cd roms
make bios
make lgplvgabios
make pxerom
cd ..
make -C roms/sgabios
cp roms/sgabios/sgabios.bin pc-bios/sgabios.bin
%endif

View File

@ -12,8 +12,8 @@
GIT_TREE=git://github.com/openSUSE/qemu.git
GIT_LOCAL_TREE=/home/andreas/QEMU/qemu-opensuse
GIT_BRANCH=opensuse-1.6
GIT_UPSTREAM_TAG=v1.6.0
GIT_BRANCH=opensuse-1.7
GIT_UPSTREAM_TAG=v1.7.0
QEMU_TMP=/dev/shm/qemu-tmp
# clean up