Accepting request 226783 from home:a_faerber:branches:Virtualization
Update to v2.0.0-rc0 OBS-URL: https://build.opensuse.org/request/show/226783 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=192
This commit is contained in:
parent
66412a9327
commit
bda5e43bf5
@ -1,4 +1,4 @@
|
||||
From bb7aab5b553678fcd83cd00040aa4fc227d34eec Mon Sep 17 00:00:00 2001
|
||||
From c405d94cadd2702967b7640c292dba4235be31bc 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,10 +8,10 @@ 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 7751c47..a9874b1 100644
|
||||
index 24c91f3..847fa7c 100644
|
||||
--- a/linux-user/signal.c
|
||||
+++ b/linux-user/signal.c
|
||||
@@ -395,6 +395,10 @@ static void QEMU_NORETURN force_sig(int target_sig)
|
||||
@@ -399,6 +399,10 @@ static void QEMU_NORETURN force_sig(int target_sig)
|
||||
host_sig = target_to_host_signal(target_sig);
|
||||
gdb_signalled(env, target_sig);
|
||||
|
||||
@ -22,7 +22,7 @@ index 7751c47..a9874b1 100644
|
||||
/* dump core if supported by target binary format */
|
||||
if (core_dump_signal(target_sig) && (ts->bprm->core_dump != NULL)) {
|
||||
stop_all_tasks();
|
||||
@@ -412,6 +416,8 @@ static void QEMU_NORETURN force_sig(int target_sig)
|
||||
@@ -416,6 +420,8 @@ static void QEMU_NORETURN force_sig(int target_sig)
|
||||
target_sig, strsignal(host_sig), "core dumped" );
|
||||
}
|
||||
|
||||
|
@ -1,9 +1,10 @@
|
||||
From 108b10473e39e9952ccd4e5b647f09b06f0f0a4e Mon Sep 17 00:00:00 2001
|
||||
From cd46303ab0b8bfe23f73bb14880d8e6c57e66080 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Thu, 1 Dec 2011 19:00:01 +0100
|
||||
Subject: [PATCH] XXX work around SA_RESTART race with boehm-gc (ARM only)
|
||||
|
||||
[AF: CPUState -> CPUArchState, adapt to reindentation]
|
||||
[AF: CPUArchState::opaque -> CPUState::opaque]
|
||||
---
|
||||
linux-user/main.c | 25 +++++++++------
|
||||
linux-user/qemu.h | 3 ++
|
||||
@ -12,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 6b4ab09..f60ad35 100644
|
||||
index af924dc..c7423e6 100644
|
||||
--- a/linux-user/main.c
|
||||
+++ b/linux-user/main.c
|
||||
@@ -810,15 +810,22 @@ void cpu_loop(CPUARMState *env)
|
||||
@@ -814,15 +814,22 @@ void cpu_loop(CPUARMState *env)
|
||||
break;
|
||||
}
|
||||
} else {
|
||||
@ -28,7 +29,7 @@ index 6b4ab09..f60ad35 100644
|
||||
- env->regs[4],
|
||||
- env->regs[5],
|
||||
- 0, 0);
|
||||
+ TaskState *ts = ((CPUArchState*)env)->opaque;
|
||||
+ TaskState *ts = cs->opaque;
|
||||
+ target_ulong r;
|
||||
+ r = do_syscall(env, n, env->regs[0], env->regs[1],
|
||||
+ env->regs[2], env->regs[3], env->regs[4],
|
||||
@ -48,7 +49,7 @@ index 6b4ab09..f60ad35 100644
|
||||
} else {
|
||||
goto error;
|
||||
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
|
||||
index da64e87..8137c46 100644
|
||||
index c2f74f3..c6366c2 100644
|
||||
--- a/linux-user/qemu.h
|
||||
+++ b/linux-user/qemu.h
|
||||
@@ -133,6 +133,8 @@ typedef struct TaskState {
|
||||
@ -60,7 +61,7 @@ index da64e87..8137c46 100644
|
||||
} __attribute__((aligned(16))) TaskState;
|
||||
|
||||
extern char *exec_path;
|
||||
@@ -200,6 +202,7 @@ int get_osversion(void);
|
||||
@@ -198,6 +200,7 @@ int get_osversion(void);
|
||||
void init_qemu_uname_release(void);
|
||||
void fork_start(void);
|
||||
void fork_end(int child);
|
||||
@ -69,7 +70,7 @@ index da64e87..8137c46 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 a9874b1..f85341e 100644
|
||||
index 847fa7c..fef10bc 100644
|
||||
--- a/linux-user/signal.c
|
||||
+++ b/linux-user/signal.c
|
||||
@@ -25,6 +25,7 @@
|
||||
@ -80,7 +81,7 @@ index a9874b1..f85341e 100644
|
||||
|
||||
#include "qemu.h"
|
||||
#include "qemu-common.h"
|
||||
@@ -503,6 +504,11 @@ int queue_signal(CPUArchState *env, int sig, target_siginfo_t *info)
|
||||
@@ -509,6 +510,11 @@ int queue_signal(CPUArchState *env, int sig, target_siginfo_t *info)
|
||||
k->pending = 1;
|
||||
/* signal that a new signal is pending */
|
||||
ts->signal_pending = 1;
|
||||
@ -92,7 +93,7 @@ index a9874b1..f85341e 100644
|
||||
return 1; /* indicates that the signal was queued */
|
||||
}
|
||||
}
|
||||
@@ -638,8 +644,24 @@ int do_sigaction(int sig, const struct target_sigaction *act,
|
||||
@@ -644,8 +650,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;
|
||||
@ -118,10 +119,10 @@ index a9874b1..f85341e 100644
|
||||
ignore state to avoid getting unexpected interrupted
|
||||
syscalls */
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index eaaf00d..6097420 100644
|
||||
index ffc11de..c193397 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -5273,6 +5273,87 @@ static int do_open(void *cpu_env, const char *pathname, int flags, mode_t mode)
|
||||
@@ -5215,6 +5215,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,11 +210,11 @@ index eaaf00d..6097420 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>. */
|
||||
@@ -5286,6 +5367,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
@@ -5228,6 +5309,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
struct stat st;
|
||||
struct statfs stfs;
|
||||
void *p;
|
||||
+ TaskState *ts = ((CPUArchState*)cpu_env)->opaque;
|
||||
+ TaskState *ts = cpu->opaque;
|
||||
+
|
||||
+ if (!ts->signal_restart) {
|
||||
+ /* remember syscall info for restart */
|
||||
@ -222,7 +223,7 @@ index eaaf00d..6097420 100644
|
||||
|
||||
#ifdef DEBUG
|
||||
gemu_log("syscall %d", num);
|
||||
@@ -8391,7 +8478,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
@@ -8347,7 +8434,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 +232,7 @@ index eaaf00d..6097420 100644
|
||||
}
|
||||
|
||||
switch(arg2) {
|
||||
@@ -9210,6 +9297,7 @@ fail:
|
||||
@@ -9284,6 +9371,7 @@ fail:
|
||||
#endif
|
||||
if(do_strace)
|
||||
print_syscall_ret(num, ret);
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 11250c9b05c613b3de5942819048dec001c54b16 Mon Sep 17 00:00:00 2001
|
||||
From 357a1297e68bd36fc75d1c7d0cdd0f7293bba4e0 Mon Sep 17 00:00:00 2001
|
||||
From: Ulrich Hecht <uli@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:18:44 +0200
|
||||
Subject: [PATCH] qemu-0.9.0.cvs-binfmt
|
||||
|
@ -1,4 +1,4 @@
|
||||
From bc43cfe17dfc334bd6b1117b16d1dac49c62dd87 Mon Sep 17 00:00:00 2001
|
||||
From eae7841334a0a53ff4b4b485f13ca6f7c830ae02 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:20:50 +0200
|
||||
Subject: [PATCH] qemu-cvs-alsa_bitfield
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 1aacf4b9312f3580be0e894eee5a4009ffa6d464 Mon Sep 17 00:00:00 2001
|
||||
From bcfb81675b318fa9a83d49be6e194894d2bb1131 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 7381012..1c9d67f 100644
|
||||
index 309fb21..d35f072 100644
|
||||
--- a/linux-user/ioctls.h
|
||||
+++ b/linux-user/ioctls.h
|
||||
@@ -315,6 +315,11 @@
|
||||
@@ -316,6 +316,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,18 +2255,20 @@ index 0000000..e09a30d
|
||||
+ unsigned char *code;
|
||||
+};
|
||||
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
||||
index fe540f6..57ac1ce 100644
|
||||
index 732c9e3..84094ab 100644
|
||||
--- a/linux-user/syscall_defs.h
|
||||
+++ b/linux-user/syscall_defs.h
|
||||
@@ -2526,4 +2526,6 @@ struct target_ucred {
|
||||
@@ -2538,6 +2538,8 @@ struct target_ucred {
|
||||
uint32_t gid;
|
||||
};
|
||||
|
||||
+#include "ioctls_alsa_structs.h"
|
||||
+
|
||||
#endif
|
||||
|
||||
|
||||
diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
|
||||
index 44b6a58..7897e37 100644
|
||||
index 9d0c92d..193bee1 100644
|
||||
--- a/linux-user/syscall_types.h
|
||||
+++ b/linux-user/syscall_types.h
|
||||
@@ -83,6 +83,11 @@ STRUCT(buffmem_desc,
|
||||
|
@ -1,4 +1,4 @@
|
||||
From b90304c9d4edec824aadc6badbd13c5913d74569 Mon Sep 17 00:00:00 2001
|
||||
From 6767f4a5d5336071a032e7aeec1b07d4dc412225 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Tue, 14 Apr 2009 16:24:15 +0200
|
||||
Subject: [PATCH] qemu-cvs-alsa_mmap
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 81e1305e8d87d797689947145823d6926a6f6172 Mon Sep 17 00:00:00 2001
|
||||
From 2ab8ba594caa75e869d684576cb76b7cf47d3a4e 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 6097420..aef4fb6 100644
|
||||
index c193397..98c12bb 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -6411,6 +6411,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
@@ -6359,6 +6359,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
case TARGET_NR_gettimeofday:
|
||||
{
|
||||
struct timeval tv;
|
||||
|
@ -1,4 +1,4 @@
|
||||
From c3cfd1495e3d4862634b2a5b3b77db8d0c2ffbeb Mon Sep 17 00:00:00 2001
|
||||
From ecb044a5ede319e8aea9b95e2a32f04bc9842602 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 aef4fb6..c8c9e1a 100644
|
||||
index 98c12bb..312b7d6 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -3755,7 +3755,12 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
|
||||
@@ -3646,7 +3646,12 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
|
||||
ie = ioctl_entries;
|
||||
for(;;) {
|
||||
if (ie->target_cmd == 0) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 303d0b0031d6e18a31e95579cb21d712fac5499e Mon Sep 17 00:00:00 2001
|
||||
From 021f44a22b1c6121805fe175d97da6d4d43abd45 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 c8c9e1a..2b4e263 100644
|
||||
index 312b7d6..78a2fe7 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -3789,6 +3789,11 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
|
||||
@@ -3680,6 +3680,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 c8c9e1a..2b4e263 100644
|
||||
case IOC_R:
|
||||
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
|
||||
if (!is_error(ret)) {
|
||||
@@ -3807,6 +3812,7 @@ static abi_long do_ioctl(int fd, abi_long cmd, abi_long arg)
|
||||
@@ -3698,6 +3703,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;
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d281dbef7cffee850d5445357affb5e0420ceffe Mon Sep 17 00:00:00 2001
|
||||
From f22c4c2cc220f6b074ac6a4d6c6d8911b6148ed8 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
|
||||
@ -20,19 +20,19 @@ 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 382ea71..7c89d4e 100644
|
||||
index fae50c9..7cb6098 100644
|
||||
--- a/block.c
|
||||
+++ b/block.c
|
||||
@@ -4503,7 +4503,7 @@ void bdrv_img_create(const char *filename, const char *fmt,
|
||||
@@ -5237,7 +5237,7 @@ void bdrv_img_create(const char *filename, const char *fmt,
|
||||
Error **errp, bool quiet)
|
||||
{
|
||||
QEMUOptionParameter *param = NULL, *create_options = NULL;
|
||||
- QEMUOptionParameter *backing_fmt, *backing_file, *size;
|
||||
+ QEMUOptionParameter *backing_fmt, *backing_file, *size, *scsi;
|
||||
BlockDriverState *bs = NULL;
|
||||
BlockDriver *drv, *proto_drv;
|
||||
BlockDriver *backing_drv = NULL;
|
||||
@@ -4617,6 +4617,10 @@ void bdrv_img_create(const char *filename, const char *fmt,
|
||||
Error *local_err = NULL;
|
||||
@@ -5352,6 +5352,10 @@ void bdrv_img_create(const char *filename, const char *fmt,
|
||||
if (!quiet) {
|
||||
printf("Formatting '%s', fmt=%s ", filename, fmt);
|
||||
print_option_parameters(param);
|
||||
@ -44,10 +44,10 @@ index 382ea71..7c89d4e 100644
|
||||
}
|
||||
ret = bdrv_create(drv, filename, param, &local_err);
|
||||
diff --git a/block/vmdk.c b/block/vmdk.c
|
||||
index a7ebd0f..818f7a0 100644
|
||||
index b69988d..59c468d 100644
|
||||
--- a/block/vmdk.c
|
||||
+++ b/block/vmdk.c
|
||||
@@ -1641,11 +1641,13 @@ static int vmdk_create(const char *filename, QEMUOptionParameter *options,
|
||||
@@ -1744,11 +1744,13 @@ 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;
|
||||
@ -62,7 +62,7 @@ index a7ebd0f..818f7a0 100644
|
||||
} else if (strcmp(adapter_type, "ide") &&
|
||||
strcmp(adapter_type, "buslogic") &&
|
||||
strcmp(adapter_type, "lsilogic") &&
|
||||
@@ -1926,6 +1928,11 @@ static QEMUOptionParameter vmdk_create_options[] = {
|
||||
@@ -2096,6 +2098,11 @@ static QEMUOptionParameter vmdk_create_options[] = {
|
||||
.type = OPT_FLAG,
|
||||
.help = "Enable efficient zero writes using the zeroed-grain GTE feature"
|
||||
},
|
||||
@ -75,7 +75,7 @@ index a7ebd0f..818f7a0 100644
|
||||
};
|
||||
|
||||
diff --git a/include/block/block_int.h b/include/block/block_int.h
|
||||
index 1666066..9895b61 100644
|
||||
index 4fc5ea8..ae28f01 100644
|
||||
--- a/include/block/block_int.h
|
||||
+++ b/include/block/block_int.h
|
||||
@@ -40,10 +40,12 @@
|
||||
@ -92,10 +92,10 @@ index 1666066..9895b61 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 b6b5644..98ee71a 100644
|
||||
index 2e40cc1..fc4888d 100644
|
||||
--- a/qemu-img.c
|
||||
+++ b/qemu-img.c
|
||||
@@ -1133,7 +1133,7 @@ static int img_convert(int argc, char **argv)
|
||||
@@ -1154,7 +1154,7 @@ static int img_convert(int argc, char **argv)
|
||||
const uint8_t *buf1;
|
||||
BlockDriverInfo bdi;
|
||||
QEMUOptionParameter *param = NULL, *create_options = NULL;
|
||||
@ -103,8 +103,8 @@ index b6b5644..98ee71a 100644
|
||||
+ QEMUOptionParameter *out_baseimg_param, *scsi;
|
||||
char *options = NULL;
|
||||
const char *snapshot_name = NULL;
|
||||
float local_progress = 0;
|
||||
@@ -1340,6 +1340,12 @@ static int img_convert(int argc, char **argv)
|
||||
int min_sparse = 8; /* Need at least 4k of zeros for sparse detection */
|
||||
@@ -1398,6 +1398,12 @@ static int img_convert(int argc, char **argv)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 34c50725ae7409428ce51b32ad0b699b7aee9192 Mon Sep 17 00:00:00 2001
|
||||
From ef95f78ca9897bcc1bfcad76698344c2845afdfb 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
|
||||
@ -24,18 +24,18 @@ we're currently creating a new binary for each target archictecture.
|
||||
|
||||
CC: Reinhard Max <max@suse.de>
|
||||
Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
[AF: Rebased onto new Makefile infrastructure]
|
||||
[AF: Rebased onto new Makefile infrastructure, twice]
|
||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
---
|
||||
Makefile.target | 12 ++++++++++++
|
||||
Makefile.target | 13 +++++++++++++
|
||||
linux-user/Makefile.objs | 2 ++
|
||||
linux-user/binfmt.c | 42 ++++++++++++++++++++++++++++++++++++++++++
|
||||
scripts/qemu-binfmt-conf.sh | 34 +++++++++++++++++-----------------
|
||||
4 files changed, 73 insertions(+), 17 deletions(-)
|
||||
4 files changed, 74 insertions(+), 17 deletions(-)
|
||||
create mode 100644 linux-user/binfmt.c
|
||||
|
||||
diff --git a/Makefile.target b/Makefile.target
|
||||
index af6ac7e..ce99364 100644
|
||||
index ba12340..87d5724 100644
|
||||
--- a/Makefile.target
|
||||
+++ b/Makefile.target
|
||||
@@ -31,6 +31,10 @@ PROGS+=$(QEMU_PROGW)
|
||||
@ -58,17 +58,19 @@ index af6ac7e..ce99364 100644
|
||||
endif #CONFIG_LINUX_USER
|
||||
|
||||
#########################################################
|
||||
@@ -140,6 +146,9 @@ endif # CONFIG_SOFTMMU
|
||||
@@ -137,7 +143,11 @@ endif # CONFIG_SOFTMMU
|
||||
# Workaround for http://gcc.gnu.org/PR55489, see configure.
|
||||
%/translate.o: QEMU_CFLAGS += $(TRANSLATE_OPT_CFLAGS)
|
||||
|
||||
nested-vars += obj-y
|
||||
+ifdef CONFIG_LINUX_USER
|
||||
+nested-vars += obj-binfmt-y
|
||||
+dummy := $(call unnest-vars,,obj-y obj-binfmt-y)
|
||||
+else
|
||||
dummy := $(call unnest-vars,,obj-y)
|
||||
+endif
|
||||
|
||||
# This resolves all nested paths, so it must come last
|
||||
include $(SRC_PATH)/Makefile.objs
|
||||
@@ -162,6 +171,9 @@ $(QEMU_PROG): $(all-obj-y) ../libqemuutil.a ../libqemustub.a
|
||||
# we are making another call to unnest-vars with different vars, protect obj-y,
|
||||
# it can be overriden in subdir Makefile.objs
|
||||
@@ -173,6 +183,9 @@ $(QEMU_PROG): $(all-obj-y) ../libqemuutil.a ../libqemustub.a
|
||||
$(call LINK,$^)
|
||||
endif
|
||||
|
||||
|
@ -1,29 +0,0 @@
|
||||
From 089db6c88f5edc0e363a47ccaf97f217f34090c7 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
|
||||
|
||||
We don't implement the timer_create syscall, but shouting out loud
|
||||
about it breaks some %check tests in OBS, so better ignore it silently.
|
||||
|
||||
Signed-off-by: Alexander Graf <agraf@suse.de>
|
||||
---
|
||||
linux-user/syscall.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 2b4e263..e423def 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -8866,6 +8866,11 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
break;
|
||||
#endif
|
||||
|
||||
+#if defined(TARGET_NR_timer_create)
|
||||
+ case TARGET_NR_timer_create:
|
||||
+ goto unimplemented_nowarn;
|
||||
+#endif
|
||||
+
|
||||
#if defined(TARGET_NR_tkill) && defined(__NR_tkill)
|
||||
case TARGET_NR_tkill:
|
||||
ret = get_errno(sys_tkill((int)arg1, target_to_host_signal(arg2)));
|
@ -1,4 +1,4 @@
|
||||
From b0817614daa8594bcc10dff88b384027d00deb1f Mon Sep 17 00:00:00 2001
|
||||
From 55bc5fffdd6bc6333591c87f73a32cd2d615765a 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 e423def..d5b3d02 100644
|
||||
index 78a2fe7..aa9fd3a 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -7785,7 +7785,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
@@ -7741,7 +7741,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||
unlock_user(p, arg1, ret);
|
||||
break;
|
||||
case TARGET_NR_capget:
|
@ -1,4 +1,4 @@
|
||||
From 5d39d4ae6288aababdbf8c3da29342d587eb17f5 Mon Sep 17 00:00:00 2001
|
||||
From 97b1499528c524628f0b0fe03917abb58e41f067 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,17 +13,17 @@ 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 95c4356..58b0647 100644
|
||||
index 6a0bc94..6c2af34 100644
|
||||
--- a/exec.c
|
||||
+++ b/exec.c
|
||||
@@ -927,10 +927,12 @@ static void *file_ram_alloc(RAMBlock *block,
|
||||
@@ -1039,10 +1039,12 @@ static void *file_ram_alloc(RAMBlock *block,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
+#ifndef TARGET_PPC
|
||||
if (kvm_enabled() && !kvm_has_sync_mmu()) {
|
||||
fprintf(stderr, "host lacks kvm mmu notifiers, -mem-path unsupported\n");
|
||||
return NULL;
|
||||
goto error;
|
||||
}
|
||||
+#endif
|
||||
|
@ -1,4 +1,4 @@
|
||||
From a49f495d192db43703e5e5f567673c27d96a720e Mon Sep 17 00:00:00 2001
|
||||
From 0e23bd461d077e553b7be5e8d192ca400f4ffbdf Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Fri, 13 Jan 2012 17:05:41 +0100
|
||||
Subject: [PATCH] linux-user: fix segfault deadlock
|
||||
@ -52,10 +52,10 @@ index a72edda..e460e12 100644
|
||||
+
|
||||
#endif
|
||||
diff --git a/user-exec.c b/user-exec.c
|
||||
index 82bfa66..dd46019 100644
|
||||
index bc58056..63b3b3d 100644
|
||||
--- a/user-exec.c
|
||||
+++ b/user-exec.c
|
||||
@@ -89,6 +89,10 @@ static inline int handle_cpu_signal(uintptr_t pc, unsigned long address,
|
||||
@@ -93,6 +93,10 @@ static inline int handle_cpu_signal(uintptr_t pc, unsigned long address,
|
||||
qemu_printf("qemu: SIGSEGV pc=0x%08lx address=%08lx w=%d oldset=0x%08lx\n",
|
||||
pc, address, is_write, *(unsigned long *)old_set);
|
||||
#endif
|
@ -1,4 +1,4 @@
|
||||
From ffc3de462248cc6eb1c79ca0ad001b3c4135fa72 Mon Sep 17 00:00:00 2001
|
||||
From 88203441776c0269c998530c3322ba3827e66e57 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Graf <agraf@suse.de>
|
||||
Date: Thu, 2 Feb 2012 18:02:33 +0100
|
||||
Subject: [PATCH] linux-user: binfmt: support host binaries
|
@ -1,4 +1,4 @@
|
||||
From 1abee77b09c8dc3e64bc1357a3f73c0e79f62ce5 Mon Sep 17 00:00:00 2001
|
||||
From a773a6d801482a3fb8a7a51f82dc22b470ab8a10 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 d40f2a7..3113456 100644
|
||||
index c32d8c4..052f676 100644
|
||||
--- a/target-arm/cpu.c
|
||||
+++ b/target-arm/cpu.c
|
||||
@@ -133,7 +133,11 @@ static void arm_cpu_reset(CPUState *s)
|
||||
@@ -154,7 +154,11 @@ static void arm_cpu_reset(CPUState *s)
|
||||
* bake assumptions about into translated code, so we need to
|
||||
* tb_flush().
|
||||
*/
|
@ -1,4 +1,4 @@
|
||||
From a7f0cbeed23b5ff6c4a3334e36f165ec8db7d9d3 Mon Sep 17 00:00:00 2001
|
||||
From 1a62d47ce18d5798fcfc9d576ac4805015806299 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 1c9d67f..b743309 100644
|
||||
index d35f072..2181ea3 100644
|
||||
--- a/linux-user/ioctls.h
|
||||
+++ b/linux-user/ioctls.h
|
||||
@@ -327,6 +327,7 @@
|
||||
@@ -328,6 +328,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 d5b3d02..5113d22 100644
|
||||
index aa9fd3a..32bbd5d 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -3732,6 +3732,13 @@ static abi_long do_ioctl_rt(const IOCTLEntry *ie, uint8_t *buf_temp,
|
||||
@@ -3623,6 +3623,13 @@ static abi_long do_ioctl_rt(const IOCTLEntry *ie, uint8_t *buf_temp,
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -59,10 +59,10 @@ index d5b3d02..5113d22 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 57ac1ce..763fb30 100644
|
||||
index 84094ab..668076f 100644
|
||||
--- a/linux-user/syscall_defs.h
|
||||
+++ b/linux-user/syscall_defs.h
|
||||
@@ -1032,6 +1032,7 @@ struct target_pollfd {
|
||||
@@ -1044,6 +1044,7 @@ struct target_pollfd {
|
||||
#define TARGET_LOOP_SET_STATUS64 0x4C04
|
||||
#define TARGET_LOOP_GET_STATUS64 0x4C05
|
||||
#define TARGET_LOOP_CHANGE_FD 0x4C06
|
@ -1,4 +1,4 @@
|
||||
From e98cc65bb2fd095cc261352e052cbb4b41c50e60 Mon Sep 17 00:00:00 2001
|
||||
From 24525af3bf864f4849101f4506c896d5703aadec 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 66d3f3d..a169e53 100644
|
||||
index f1e0763..4f36b40 100644
|
||||
--- a/tcg/tcg.c
|
||||
+++ b/tcg/tcg.c
|
||||
@@ -40,6 +40,8 @@
|
||||
@ -57,7 +57,7 @@ index 66d3f3d..a169e53 100644
|
||||
+#include "config-host.h"
|
||||
+#include "qemu/thread.h"
|
||||
|
||||
/* Note: the long term plan is to reduce the dependancies on the QEMU
|
||||
/* Note: the long term plan is to reduce the dependencies on the QEMU
|
||||
CPU definitions. Currently they are used for qemu_ld/st
|
||||
@@ -117,6 +119,29 @@ const size_t tcg_op_defs_max = ARRAY_SIZE(tcg_op_defs);
|
||||
static TCGRegSet tcg_target_available_regs[2];
|
||||
@ -99,7 +99,7 @@ index 66d3f3d..a169e53 100644
|
||||
/* Count total number of arguments and allocate the corresponding
|
||||
space */
|
||||
total_args = 0;
|
||||
@@ -2599,10 +2625,12 @@ int tcg_gen_code(TCGContext *s, uint8_t *gen_code_buf)
|
||||
@@ -2597,10 +2623,12 @@ int tcg_gen_code(TCGContext *s, uint8_t *gen_code_buf)
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -112,7 +112,7 @@ index 66d3f3d..a169e53 100644
|
||||
|
||||
return s->code_ptr - gen_code_buf;
|
||||
}
|
||||
@@ -2613,7 +2641,11 @@ int tcg_gen_code(TCGContext *s, uint8_t *gen_code_buf)
|
||||
@@ -2611,7 +2639,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)
|
||||
{
|
||||
@ -126,7 +126,7 @@ index 66d3f3d..a169e53 100644
|
||||
|
||||
#ifdef CONFIG_PROFILER
|
||||
diff --git a/tcg/tcg.h b/tcg/tcg.h
|
||||
index 0d9bd29..720fdd2 100644
|
||||
index f7efcb4..27a72f9 100644
|
||||
--- a/tcg/tcg.h
|
||||
+++ b/tcg/tcg.h
|
||||
@@ -54,6 +54,8 @@ typedef uint64_t tcg_target_ulong;
|
||||
@ -138,7 +138,7 @@ index 0d9bd29..720fdd2 100644
|
||||
#include "tcg-runtime.h"
|
||||
|
||||
#if TCG_TARGET_NB_REGS <= 32
|
||||
@@ -526,6 +528,7 @@ struct TCGContext {
|
||||
@@ -530,6 +532,7 @@ struct TCGContext {
|
||||
|
||||
/* The TCGBackendData structure is private to tcg-target.c. */
|
||||
struct TCGBackendData *be;
|
||||
@ -146,7 +146,7 @@ index 0d9bd29..720fdd2 100644
|
||||
};
|
||||
|
||||
extern TCGContext tcg_ctx;
|
||||
@@ -703,6 +706,9 @@ void tcg_gen_shifti_i64(TCGv_i64 ret, TCGv_i64 arg1,
|
||||
@@ -707,6 +710,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);
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 3a04f59b72a44bf044da642999ed16c340647809 Mon Sep 17 00:00:00 2001
|
||||
From 6744a839307d7553ef959d564ae820eb8a400a48 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 5113d22..7be6873 100644
|
||||
index 32bbd5d..15ac71c 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -4432,6 +4432,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
|
||||
@@ -4326,6 +4326,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
|
||||
if (nptl_flags & CLONE_SETTLS)
|
||||
cpu_set_tls (new_env, newtls);
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 2574d5848c03ef1a5c2ef28f698642924d6c7172 Mon Sep 17 00:00:00 2001
|
||||
From c4a6baf3d9eaa1d62daf4e3ab69f46f7fce9f294 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 aeda54d..6cfba5a 100644
|
||||
index f243c10..7067db9 100644
|
||||
--- a/translate-all.c
|
||||
+++ b/translate-all.c
|
||||
@@ -612,19 +612,23 @@ static TranslationBlock *tb_alloc(target_ulong pc)
|
||||
@@ -619,19 +619,23 @@ static TranslationBlock *tb_alloc(target_ulong pc)
|
||||
{
|
||||
TranslationBlock *tb;
|
||||
|
||||
@ -41,7 +41,7 @@ index aeda54d..6cfba5a 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. */
|
||||
@@ -633,6 +637,7 @@ void tb_free(TranslationBlock *tb)
|
||||
@@ -640,6 +644,7 @@ void tb_free(TranslationBlock *tb)
|
||||
tcg_ctx.code_gen_ptr = tb->tc_ptr;
|
||||
tcg_ctx.tb_ctx.nb_tbs--;
|
||||
}
|
||||
@ -49,15 +49,15 @@ index aeda54d..6cfba5a 100644
|
||||
}
|
||||
|
||||
static inline void invalidate_page_bitmap(PageDesc *p)
|
||||
@@ -690,6 +695,7 @@ void tb_flush(CPUArchState *env1)
|
||||
@@ -697,6 +702,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
|
||||
+ tcg_lock();
|
||||
if ((unsigned long)(tcg_ctx.code_gen_ptr - tcg_ctx.code_gen_buffer)
|
||||
> tcg_ctx.code_gen_buffer_size) {
|
||||
cpu_abort(env1, "Internal error: code buffer overflow\n");
|
||||
@@ -710,6 +716,7 @@ void tb_flush(CPUArchState *env1)
|
||||
cpu_abort(cpu, "Internal error: code buffer overflow\n");
|
||||
@@ -714,6 +720,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 aeda54d..6cfba5a 100644
|
||||
}
|
||||
|
||||
#ifdef DEBUG_TB_CHECK
|
||||
@@ -1019,8 +1026,10 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
|
||||
@@ -1022,8 +1029,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,15 +76,15 @@ index aeda54d..6cfba5a 100644
|
||||
return;
|
||||
}
|
||||
if (!p->code_bitmap &&
|
||||
@@ -1113,6 +1122,7 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
|
||||
cpu_resume_from_signal(env, NULL);
|
||||
@@ -1116,6 +1125,7 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
|
||||
cpu_resume_from_signal(cpu, NULL);
|
||||
}
|
||||
#endif
|
||||
+ tcg_unlock();
|
||||
}
|
||||
|
||||
/* len must be <= 8 and start must be a multiple of len */
|
||||
@@ -1324,13 +1334,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
||||
@@ -1327,13 +1337,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
||||
{
|
||||
int m_min, m_max, m;
|
||||
uintptr_t v;
|
||||
@ -102,7 +102,7 @@ index aeda54d..6cfba5a 100644
|
||||
return NULL;
|
||||
}
|
||||
/* binary search (cf Knuth) */
|
||||
@@ -1341,6 +1354,7 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
||||
@@ -1344,6 +1357,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 aeda54d..6cfba5a 100644
|
||||
return tb;
|
||||
} else if (tc_ptr < v) {
|
||||
m_max = m - 1;
|
||||
@@ -1348,7 +1362,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
||||
@@ -1351,7 +1365,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
||||
m_min = m + 1;
|
||||
}
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
From 634861f528d7eee037567dac6704702424a234a7 Mon Sep 17 00:00:00 2001
|
||||
From 54ace443d26657c878600a9e028240cb65ecfc2d 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 7be6873..e678f9b 100644
|
||||
index 15ac71c..f8cbacc 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -5151,6 +5151,25 @@ static int open_self_stat(void *cpu_env, int fd)
|
||||
@@ -5092,6 +5092,25 @@ static int open_self_stat(void *cpu_env, int fd)
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -50,8 +50,8 @@ index 7be6873..e678f9b 100644
|
||||
+
|
||||
static int open_self_auxv(void *cpu_env, int fd)
|
||||
{
|
||||
TaskState *ts = ((CPUArchState *)cpu_env)->opaque;
|
||||
@@ -5263,6 +5282,7 @@ static int do_open(void *cpu_env, const char *pathname, int flags, mode_t mode)
|
||||
CPUState *cpu = ENV_GET_CPU((CPUArchState *)cpu_env);
|
||||
@@ -5205,6 +5224,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
|
@ -1,4 +1,4 @@
|
||||
From 8eac49f9fffe9f5f4567a9a19e933ac3bbcb7c0f Mon Sep 17 00:00:00 2001
|
||||
From 87cf8193d86c579ac8a0546f3645e6e2162f2d84 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 b743309..f273ccb 100644
|
||||
index 2181ea3..a329fb0 100644
|
||||
--- a/linux-user/ioctls.h
|
||||
+++ b/linux-user/ioctls.h
|
||||
@@ -87,6 +87,7 @@
|
||||
@@ -88,6 +88,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 b743309..f273ccb 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 763fb30..9ddec49 100644
|
||||
index 668076f..6d7a7cf 100644
|
||||
--- a/linux-user/syscall_defs.h
|
||||
+++ b/linux-user/syscall_defs.h
|
||||
@@ -2441,6 +2441,8 @@ struct target_eabi_flock64 {
|
||||
@@ -2453,6 +2453,8 @@ struct target_eabi_flock64 {
|
||||
#define TARGET_MTIOCGET TARGET_IOR('m', 2, struct mtget)
|
||||
#define TARGET_MTIOCPOS TARGET_IOR('m', 3, struct mtpos)
|
||||
|
@ -1,4 +1,4 @@
|
||||
From f2de24a0abc52e44a362fe1c57fbd4e8807466e3 Mon Sep 17 00:00:00 2001
|
||||
From 3f9f234c01de236ec8f4ae2879142e7bc7f236fa 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 f273ccb..a5f3514 100644
|
||||
index a329fb0..d76575c 100644
|
||||
--- a/linux-user/ioctls.h
|
||||
+++ b/linux-user/ioctls.h
|
||||
@@ -88,6 +88,7 @@
|
||||
@@ -89,6 +89,7 @@
|
||||
MK_PTR(MK_STRUCT(STRUCT_fiemap)))
|
||||
#endif
|
||||
IOCTL(FS_IOC_GETFLAGS, IOC_R, MK_PTR(TYPE_LONG))
|
||||
@ -28,10 +28,10 @@ index f273ccb..a5f3514 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 9ddec49..4ab3a61 100644
|
||||
index 6d7a7cf..15827bf 100644
|
||||
--- a/linux-user/syscall_defs.h
|
||||
+++ b/linux-user/syscall_defs.h
|
||||
@@ -2442,6 +2442,7 @@ struct target_eabi_flock64 {
|
||||
@@ -2454,6 +2454,7 @@ struct target_eabi_flock64 {
|
||||
#define TARGET_MTIOCPOS TARGET_IOR('m', 3, struct mtpos)
|
||||
|
||||
#define TARGET_FS_IOC_GETFLAGS TARGET_IORU('f', 1)
|
@ -1,4 +1,4 @@
|
||||
From 3a9bbda4348e60a7d0c51c228153c259464d2e55 Mon Sep 17 00:00:00 2001
|
||||
From 890d2d99454300c53ca6776d097362f186777043 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 e678f9b..7fc61fe 100644
|
||||
index f8cbacc..1f80002 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -3289,6 +3289,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
|
||||
@@ -3180,6 +3180,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
|
||||
uint32_t outbufsz;
|
||||
int free_fm = 0;
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 408d0bbac3eecf8983a9a0277f630f63e0c1cdfb Mon Sep 17 00:00:00 2001
|
||||
From 80c43c4b1cb9a0f1e25bdbf993a882a38af85a1d 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 8b94264..179cf72 100644
|
||||
index 068da2d..b40da6c 100644
|
||||
--- a/qemu-options.hx
|
||||
+++ b/qemu-options.hx
|
||||
@@ -2578,6 +2578,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU
|
||||
@@ -2590,6 +2590,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 8d5d874..c95e9e6 100644
|
||||
index 842e897..192aa7b 100644
|
||||
--- a/vl.c
|
||||
+++ b/vl.c
|
||||
@@ -217,6 +217,7 @@ const char *vnc_display;
|
||||
@@ -159,6 +159,7 @@ const char *vnc_display;
|
||||
int acpi_enabled = 1;
|
||||
int no_hpet = 0;
|
||||
int fd_bootchk = 1;
|
||||
@ -108,7 +108,7 @@ index 8d5d874..c95e9e6 100644
|
||||
static int no_reboot;
|
||||
int no_shutdown = 0;
|
||||
int cursor_hide = 1;
|
||||
@@ -3234,6 +3235,14 @@ int main(int argc, char **argv, char **envp)
|
||||
@@ -3328,6 +3329,14 @@ int main(int argc, char **argv, char **envp)
|
||||
case QEMU_OPTION_singlestep:
|
||||
singlestep = 1;
|
||||
break;
|
@ -1,4 +1,4 @@
|
||||
From 7dd40e737a6fa4ba0af545912bacbc2a2a4a9e46 Mon Sep 17 00:00:00 2001
|
||||
From 0587986e55f3bf9263fa62bd21425fd30405f2dc Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Wed, 29 Aug 2012 20:06:01 +0200
|
||||
Subject: [PATCH] vnc: password-file= and incoming-connections=
|
||||
@ -9,10 +9,10 @@ TBD (from SUSE Studio team)
|
||||
1 file changed, 71 insertions(+)
|
||||
|
||||
diff --git a/ui/vnc.c b/ui/vnc.c
|
||||
index 5601cc3..d5796e6 100644
|
||||
index 9c84b3e..d596d25 100644
|
||||
--- a/ui/vnc.c
|
||||
+++ b/ui/vnc.c
|
||||
@@ -44,6 +44,7 @@ static const struct timeval VNC_REFRESH_LOSSY = { 2, 0 };
|
||||
@@ -45,6 +45,7 @@ static const struct timeval VNC_REFRESH_LOSSY = { 2, 0 };
|
||||
#include "d3des.h"
|
||||
|
||||
static VncDisplay *vnc_display; /* needed for info vnc */
|
||||
@ -20,7 +20,7 @@ index 5601cc3..d5796e6 100644
|
||||
|
||||
static int vnc_cursor_define(VncState *vs);
|
||||
static void vnc_release_modifiers(VncState *vs);
|
||||
@@ -1029,6 +1030,7 @@ static void vnc_disconnect_start(VncState *vs)
|
||||
@@ -1027,6 +1028,7 @@ static void vnc_disconnect_start(VncState *vs)
|
||||
void vnc_disconnect_finish(VncState *vs)
|
||||
{
|
||||
int i;
|
||||
@ -28,7 +28,7 @@ index 5601cc3..d5796e6 100644
|
||||
|
||||
vnc_jobs_join(vs); /* Wait encoding jobs */
|
||||
|
||||
@@ -1077,6 +1079,13 @@ void vnc_disconnect_finish(VncState *vs)
|
||||
@@ -1075,6 +1077,13 @@ void vnc_disconnect_finish(VncState *vs)
|
||||
}
|
||||
g_free(vs->lossy_rect);
|
||||
g_free(vs);
|
||||
@ -42,7 +42,7 @@ index 5601cc3..d5796e6 100644
|
||||
}
|
||||
|
||||
int vnc_client_io_error(VncState *vs, int ret, int last_errno)
|
||||
@@ -3036,6 +3045,39 @@ char *vnc_display_local_addr(DisplayState *ds)
|
||||
@@ -3037,6 +3046,39 @@ char *vnc_display_local_addr(DisplayState *ds)
|
||||
return vnc_socket_local_addr("%s:%s", vs->lsock);
|
||||
}
|
||||
|
||||
@ -82,7 +82,7 @@ index 5601cc3..d5796e6 100644
|
||||
void vnc_display_open(DisplayState *ds, const char *display, Error **errp)
|
||||
{
|
||||
VncDisplay *vs = vnc_display;
|
||||
@@ -3069,6 +3111,9 @@ void vnc_display_open(DisplayState *ds, const char *display, Error **errp)
|
||||
@@ -3070,6 +3112,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 5601cc3..d5796e6 100644
|
||||
if (fips_get_state()) {
|
||||
error_setg(errp,
|
||||
"VNC password auth disabled due to FIPS mode, "
|
||||
@@ -3077,6 +3122,32 @@ void vnc_display_open(DisplayState *ds, const char *display, Error **errp)
|
||||
@@ -3078,6 +3123,32 @@ void vnc_display_open(DisplayState *ds, const char *display, Error **errp)
|
||||
goto fail;
|
||||
}
|
||||
password = 1; /* Require password auth */
|
@ -1,4 +1,4 @@
|
||||
From 5863b28fbb5f165cac031abca0eb9ba5c0877f7c Mon Sep 17 00:00:00 2001
|
||||
From 811f9aaa6560561860d90fea353f5832a50e5467 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 a5f3514..a96a419 100644
|
||||
index d76575c..ffd6d09 100644
|
||||
--- a/linux-user/ioctls.h
|
||||
+++ b/linux-user/ioctls.h
|
||||
@@ -72,6 +72,24 @@
|
||||
@ -42,10 +42,10 @@ index a5f3514..a96a419 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 4ab3a61..2d41202 100644
|
||||
index 15827bf..40c8900 100644
|
||||
--- a/linux-user/syscall_defs.h
|
||||
+++ b/linux-user/syscall_defs.h
|
||||
@@ -901,6 +901,12 @@ struct target_pollfd {
|
||||
@@ -913,6 +913,12 @@ struct target_pollfd {
|
||||
#define TARGET_BLKGETSIZE64 TARGET_IOR(0x12,114,abi_ulong)
|
||||
/* return device size in bytes
|
||||
(u64 *arg) */
|
||||
@ -59,7 +59,7 @@ index 4ab3a61..2d41202 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 7897e37..dd78619 100644
|
||||
index 193bee1..56e344c 100644
|
||||
--- a/linux-user/syscall_types.h
|
||||
+++ b/linux-user/syscall_types.h
|
||||
@@ -71,6 +71,9 @@ STRUCT(kbentry,
|
@ -1,4 +1,4 @@
|
||||
From f585148dc73b9998031d37d37e397ae2a1642960 Mon Sep 17 00:00:00 2001
|
||||
From 076210cc06b65ebebef8d181ec74106eb6c5d198 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 8137c46..710ded7 100644
|
||||
index c6366c2..151d09d 100644
|
||||
--- a/linux-user/qemu.h
|
||||
+++ b/linux-user/qemu.h
|
||||
@@ -190,10 +190,10 @@ abi_long memcpy_to_target(abi_ulong dest, const void *src,
|
||||
@@ -188,10 +188,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 8137c46..710ded7 100644
|
||||
extern THREAD CPUState *thread_cpu;
|
||||
void cpu_loop(CPUArchState *env);
|
||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||
index 7fc61fe..b794666 100644
|
||||
index 1f80002..aacc224 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -5409,10 +5409,10 @@ int syscall_restartable(int syscall_nr)
|
||||
@@ -5351,10 +5351,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>. */
|
@ -1,4 +1,4 @@
|
||||
From bf5dfef75e13bb80e84fea15471a890f247e65fe Mon Sep 17 00:00:00 2001
|
||||
From 122051dc2fc438473aa17cd7847cb597e1d8a804 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
|
||||
@ -26,6 +26,8 @@ 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]
|
||||
[AF: qemu_opts_create_nofail() -> qemu_opts_create(),
|
||||
bdrv_file_open() -> bdrv_open(), based on work by brogers]
|
||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
---
|
||||
block/Makefile.objs | 1 +
|
||||
@ -34,19 +36,20 @@ 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 f43ecbc..581581f 100644
|
||||
index fd88c03..cbdddc0 100644
|
||||
--- a/block/Makefile.objs
|
||||
+++ b/block/Makefile.objs
|
||||
@@ -22,5 +22,6 @@ common-obj-y += stream.o
|
||||
@@ -24,6 +24,7 @@ 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
|
||||
|
||||
$(obj)/curl.o: QEMU_CFLAGS+=$(CURL_CFLAGS)
|
||||
iscsi.o-cflags := $(LIBISCSI_CFLAGS)
|
||||
iscsi.o-libs := $(LIBISCSI_LIBS)
|
||||
diff --git a/block/dictzip.c b/block/dictzip.c
|
||||
new file mode 100644
|
||||
index 0000000..8916cfa
|
||||
index 0000000..a3629ab
|
||||
--- /dev/null
|
||||
+++ b/block/dictzip.c
|
||||
@@ -0,0 +1,596 @@
|
||||
@ -230,7 +233,7 @@ index 0000000..8916cfa
|
||||
+ Error *local_err = NULL;
|
||||
+ const char *filename;
|
||||
+
|
||||
+ opts = qemu_opts_create_nofail(&runtime_opts);
|
||||
+ opts = qemu_opts_create(&runtime_opts, NULL, 0, &error_abort);
|
||||
+ qemu_opts_absorb_qdict(opts, options, &local_err);
|
||||
+ if (error_is_set(&local_err)) {
|
||||
+ error_propagate(errp, local_err);
|
||||
@ -245,7 +248,7 @@ index 0000000..8916cfa
|
||||
+ else if (!strncmp(filename, "dzip:", 5))
|
||||
+ filename += 5;
|
||||
+
|
||||
+ ret = bdrv_file_open(&s->hd, filename, NULL, flags, &local_err);
|
||||
+ ret = bdrv_open(&s->hd, filename, NULL, NULL, flags | BDRV_O_PROTOCOL, NULL, &local_err);
|
||||
+ if (ret < 0) {
|
||||
+ error_propagate(errp, local_err);
|
||||
+ qemu_opts_del(opts);
|
@ -1,4 +1,4 @@
|
||||
From 3c619a2d181b564570e0931c67806ed0206db9da Mon Sep 17 00:00:00 2001
|
||||
From 96fd8c590b6f1e38e2d28a4b37792162de0f73ca 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
|
||||
@ -27,6 +27,8 @@ 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]
|
||||
[AF: qemu_opts_create_nofail() -> qemu_opts_create(),
|
||||
bdrv_file_open() -> bdrv_open(), based on work by brogers]
|
||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
---
|
||||
block/Makefile.objs | 1 +
|
||||
@ -35,19 +37,20 @@ 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 581581f..d4f31ee 100644
|
||||
index cbdddc0..e5b0326 100644
|
||||
--- a/block/Makefile.objs
|
||||
+++ b/block/Makefile.objs
|
||||
@@ -23,5 +23,6 @@ common-obj-y += commit.o
|
||||
@@ -25,6 +25,7 @@ common-obj-y += commit.o
|
||||
common-obj-y += mirror.o
|
||||
common-obj-y += backup.o
|
||||
common-obj-y += dictzip.o
|
||||
+common-obj-y += tar.o
|
||||
|
||||
$(obj)/curl.o: QEMU_CFLAGS+=$(CURL_CFLAGS)
|
||||
iscsi.o-cflags := $(LIBISCSI_CFLAGS)
|
||||
iscsi.o-libs := $(LIBISCSI_LIBS)
|
||||
diff --git a/block/tar.c b/block/tar.c
|
||||
new file mode 100644
|
||||
index 0000000..24ed37b
|
||||
index 0000000..a79cf5e
|
||||
--- /dev/null
|
||||
+++ b/block/tar.c
|
||||
@@ -0,0 +1,386 @@
|
||||
@ -229,7 +232,7 @@ index 0000000..24ed37b
|
||||
+ Error *local_err = NULL;
|
||||
+ const char *filename;
|
||||
+
|
||||
+ opts = qemu_opts_create_nofail(&runtime_opts);
|
||||
+ opts = qemu_opts_create(&runtime_opts, NULL, 0, &error_abort);
|
||||
+ qemu_opts_absorb_qdict(opts, options, &local_err);
|
||||
+ if (error_is_set(&local_err)) {
|
||||
+ error_propagate(errp, local_err);
|
||||
@ -244,7 +247,7 @@ index 0000000..24ed37b
|
||||
+ else if (!strncmp(filename, "tar:", 4))
|
||||
+ filename += 4;
|
||||
+
|
||||
+ ret = bdrv_file_open(&s->hd, filename, NULL, flags, &local_err);
|
||||
+ ret = bdrv_open(&s->hd, filename, NULL, NULL, flags | BDRV_O_PROTOCOL, NULL, &local_err);
|
||||
+ if (ret < 0) {
|
||||
+ error_propagate(errp, local_err);
|
||||
+ qemu_opts_del(opts);
|
@ -1,4 +1,4 @@
|
||||
From 352ccb463225f5028de8aeb9a12379800bef30e6 Mon Sep 17 00:00:00 2001
|
||||
From 4056851c208c99dd3f00845871599539e928e47f 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 24ed37b..c324240 100644
|
||||
index a79cf5e..09fe1a6 100644
|
||||
--- a/block/tar.c
|
||||
+++ b/block/tar.c
|
||||
@@ -83,7 +83,8 @@ static int str_ends(char *str, const char *end)
|
@ -1,4 +1,4 @@
|
||||
From 94aa4d55aca4798f31f17bc3acc60dfe60473ea9 Mon Sep 17 00:00:00 2001
|
||||
From aedb4fdda43d3b5c9780dfc1e8cc84490742ab82 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,7 +8,7 @@ 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 0a88e68..0716a72 100644
|
||||
index e3ef1e4..67396e7 100644
|
||||
--- a/net/net.c
|
||||
+++ b/net/net.c
|
||||
@@ -141,6 +141,27 @@ void qemu_format_nic_info_str(NetClientState *nc, uint8_t macaddr[6])
|
||||
@ -39,7 +39,7 @@ index 0a88e68..0716a72 100644
|
||||
void qemu_macaddr_default_if_unset(MACAddr *macaddr)
|
||||
{
|
||||
static int index = 0;
|
||||
@@ -1185,6 +1206,7 @@ int net_init_clients(void)
|
||||
@@ -1251,6 +1272,7 @@ int net_init_clients(void)
|
||||
if (qemu_opts_foreach(net, net_init_client, NULL, 1) == -1) {
|
||||
return -1;
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
From 10e80abede069e92b8cf66c8ee63f28a0ccc36db Mon Sep 17 00:00:00 2001
|
||||
From 62e5e21a8022c87d48e2419c47b7b4dbf897fe81 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,15 +16,15 @@ 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 199ba69..f7894f8 100644
|
||||
index 4df251d..9d6b3b3 100644
|
||||
--- a/ui/console.c
|
||||
+++ b/ui/console.c
|
||||
@@ -864,7 +864,7 @@ static void console_putchar(QemuConsole *s, int ch)
|
||||
@@ -866,7 +866,7 @@ static void console_putchar(QemuConsole *s, int ch)
|
||||
} else {
|
||||
if (s->nb_esc_params < MAX_ESC_PARAMS)
|
||||
s->nb_esc_params++;
|
||||
- if (ch == ';')
|
||||
+ if (ch == ';' || ch == '?')
|
||||
break;
|
||||
#ifdef DEBUG_CONSOLE
|
||||
fprintf(stderr, "escape sequence CSI%d;%d%c, %d parameters\n",
|
||||
trace_console_putchar_csi(s->esc_params[0], s->esc_params[1],
|
||||
ch, s->nb_esc_params);
|
@ -1,4 +1,4 @@
|
||||
From 91da61532e47c3dde792d1dfdfc63379a7118e18 Mon Sep 17 00:00:00 2001
|
||||
From a620d8b81230c54245b6b0255b7ddff886272c5b 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,7 +22,7 @@ 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 e00f84c..60faa71 100644
|
||||
index 54ed244..cc6bfe8 100644
|
||||
--- a/qemu-char.c
|
||||
+++ b/qemu-char.c
|
||||
@@ -252,6 +252,9 @@ typedef struct {
|
@ -1,4 +1,4 @@
|
||||
From f66a19e466bdb8121073b20e73818a7d5491551f Mon Sep 17 00:00:00 2001
|
||||
From 1f62de84675c5c3cd14a59a8070c2bb47d494cc0 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 b794666..4f7327a 100644
|
||||
index aacc224..67f8c25 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -5723,9 +5723,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
|
||||
@@ -5665,9 +5665,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
|
||||
case TARGET_NR_oldstat:
|
||||
goto unimplemented;
|
||||
#endif
|
@ -1,4 +1,4 @@
|
||||
From 22ff512113b5021ee14bb7dd32ef220cdfe0d159 Mon Sep 17 00:00:00 2001
|
||||
From 862047d71a3d245a5709a75cc3c109b94f6019ac Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Rogers <brogers@suse.com>
|
||||
Date: Thu, 16 May 2013 12:39:10 +0200
|
||||
Subject: [PATCH] virtfs-proxy-helper: Provide __u64 for broken
|
||||
@ -12,7 +12,7 @@ Fixes the build on SLE 11 SP2.
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
|
||||
index 713a7b2..b8da77d 100644
|
||||
index bfecb87..79ab9c8 100644
|
||||
--- a/fsdev/virtfs-proxy-helper.c
|
||||
+++ b/fsdev/virtfs-proxy-helper.c
|
||||
@@ -9,6 +9,13 @@
|
@ -1,4 +1,4 @@
|
||||
From 3f9ea0b67bffcf0022d8a3cb42277d90caac3a7c Mon Sep 17 00:00:00 2001
|
||||
From 07638968e7aa90fc80aaf7dac9cfda6fa27b03fd 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,10 +8,10 @@ Subject: [PATCH] roms: Build vgabios.bin
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/roms/Makefile b/roms/Makefile
|
||||
index 10d5a65..3bb1f48 100644
|
||||
index 2721b02..44ccdda 100644
|
||||
--- a/roms/Makefile
|
||||
+++ b/roms/Makefile
|
||||
@@ -80,6 +80,8 @@ build-seabios-config-%: config.%
|
||||
@@ -83,6 +83,8 @@ build-seabios-config-%: config.%
|
||||
|
||||
|
||||
lgplvgabios: $(patsubst %,lgplvgabios-%,$(vgabios_variants))
|
@ -1,4 +1,4 @@
|
||||
From aa492137e5195f3340447be4be63f4ac9337d2df Mon Sep 17 00:00:00 2001
|
||||
From 53969fce3b20e0bb592675503b8bade77c1cea3f 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 0666228..d508d50 100755
|
||||
index 8c2838e..530a10d 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -1320,7 +1320,7 @@ fi
|
||||
@@ -1467,7 +1467,7 @@ fi
|
||||
|
||||
if test "$pie" = ""; then
|
||||
case "$cpu-$targetos" in
|
@ -1,4 +1,4 @@
|
||||
From fd18d5fdf502fe777c110e8cb6ccf62c67dc4eaa Mon Sep 17 00:00:00 2001
|
||||
From 3ffc91748021ceebd6ea0de8cbf29b0117e8bcb3 Mon Sep 17 00:00:00 2001
|
||||
From: Olaf Hering <olaf@aepfle.de>
|
||||
Date: Thu, 30 Jan 2014 16:02:18 +0100
|
||||
Subject: [PATCH] xen_disk: add discard support
|
||||
@ -52,7 +52,7 @@ index c0f4136..711b692 100644
|
||||
n = src->nr_segments;
|
||||
for (i = 0; i < n; i++)
|
||||
diff --git a/hw/block/xen_disk.c b/hw/block/xen_disk.c
|
||||
index 098f6c6..e74efc7 100644
|
||||
index bc061e6..989a90f 100644
|
||||
--- a/hw/block/xen_disk.c
|
||||
+++ b/hw/block/xen_disk.c
|
||||
@@ -114,6 +114,7 @@ struct XenBlkDev {
|
||||
@ -72,7 +72,7 @@ index 098f6c6..e74efc7 100644
|
||||
default:
|
||||
xen_be_printf(&blkdev->xendev, 0, "error: unknown operation (%d)\n",
|
||||
ioreq->req.operation);
|
||||
@@ -521,6 +524,17 @@ static int ioreq_runio_qemu_aio(struct ioreq *ioreq)
|
||||
@@ -532,6 +535,17 @@ static int ioreq_runio_qemu_aio(struct ioreq *ioreq)
|
||||
&ioreq->v, ioreq->v.size / BLOCK_SIZE,
|
||||
qemu_aio_complete, ioreq);
|
||||
break;
|
||||
@ -90,7 +90,7 @@ index 098f6c6..e74efc7 100644
|
||||
default:
|
||||
/* unknown operation (shouldn't happen -- parse catches this) */
|
||||
goto err;
|
||||
@@ -699,6 +713,21 @@ static void blk_alloc(struct XenDevice *xendev)
|
||||
@@ -710,6 +724,21 @@ static void blk_alloc(struct XenDevice *xendev)
|
||||
}
|
||||
}
|
||||
|
||||
@ -112,7 +112,7 @@ index 098f6c6..e74efc7 100644
|
||||
static int blk_init(struct XenDevice *xendev)
|
||||
{
|
||||
struct XenBlkDev *blkdev = container_of(xendev, struct XenBlkDev, xendev);
|
||||
@@ -766,6 +795,8 @@ static int blk_init(struct XenDevice *xendev)
|
||||
@@ -777,6 +806,8 @@ static int blk_init(struct XenDevice *xendev)
|
||||
xenstore_write_be_int(&blkdev->xendev, "feature-persistent", 1);
|
||||
xenstore_write_be_int(&blkdev->xendev, "info", info);
|
||||
|
||||
@ -121,7 +121,7 @@ index 098f6c6..e74efc7 100644
|
||||
g_free(directiosafe);
|
||||
return 0;
|
||||
|
||||
@@ -801,6 +832,9 @@ static int blk_connect(struct XenDevice *xendev)
|
||||
@@ -812,6 +843,9 @@ static int blk_connect(struct XenDevice *xendev)
|
||||
qflags |= BDRV_O_RDWR;
|
||||
readonly = false;
|
||||
}
|
@ -1,73 +0,0 @@
|
||||
From b7e5d07c5a7f73cd199e76366fb715ddee2b17a3 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||
Date: Sat, 18 Jan 2014 02:15:05 +0100
|
||||
Subject: [PATCH] linux-user: Implement BLKPG ioctl
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
---
|
||||
linux-user/ioctls.h | 1 +
|
||||
linux-user/syscall.c | 1 +
|
||||
linux-user/syscall_defs.h | 1 +
|
||||
linux-user/syscall_types.h | 13 +++++++++++++
|
||||
4 files changed, 16 insertions(+)
|
||||
|
||||
diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
|
||||
index a96a419..ffd6d09 100644
|
||||
--- a/linux-user/ioctls.h
|
||||
+++ b/linux-user/ioctls.h
|
||||
@@ -95,6 +95,7 @@
|
||||
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)))
|
||||
#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 4f7327a..ef82a0e 100644
|
||||
--- a/linux-user/syscall.c
|
||||
+++ b/linux-user/syscall.c
|
||||
@@ -107,6 +107,7 @@ int __clone2(int (*fn)(void *), void *child_stack_base,
|
||||
#include <linux/reboot.h>
|
||||
#include <linux/route.h>
|
||||
#include <linux/filter.h>
|
||||
+#include <linux/blkpg.h>
|
||||
#include "linux_loop.h"
|
||||
#include "cpu-uname.h"
|
||||
|
||||
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
||||
index 2d41202..3cdd471 100644
|
||||
--- a/linux-user/syscall_defs.h
|
||||
+++ b/linux-user/syscall_defs.h
|
||||
@@ -895,6 +895,7 @@ struct target_pollfd {
|
||||
#define TARGET_BLKSECTSET TARGET_IO(0x12,102)/* set max sectors per request (ll_rw_blk.c) */
|
||||
#define TARGET_BLKSECTGET TARGET_IO(0x12,103)/* get max sectors per request (ll_rw_blk.c) */
|
||||
#define TARGET_BLKSSZGET TARGET_IO(0x12,104)/* get block device sector size */
|
||||
+#define TARGET_BLKPG TARGET_IO(0x12,105)/* Partition table and disk geometry handling */
|
||||
/* A jump here: 108-111 have been used for various private purposes. */
|
||||
#define TARGET_BLKBSZGET TARGET_IOR(0x12, 112, abi_ulong)
|
||||
#define TARGET_BLKBSZSET TARGET_IOW(0x12, 113, abi_ulong)
|
||||
diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
|
||||
index dd78619..56e344c 100644
|
||||
--- a/linux-user/syscall_types.h
|
||||
+++ b/linux-user/syscall_types.h
|
||||
@@ -248,3 +248,16 @@ STRUCT(fiemap,
|
||||
TYPE_INT, /* fm_mapped_extents */
|
||||
TYPE_INT, /* fm_extent_count */
|
||||
TYPE_INT) /* fm_reserved */
|
||||
+
|
||||
+STRUCT(blkpg_partition,
|
||||
+ TYPE_LONGLONG, /* start */
|
||||
+ TYPE_LONGLONG, /* length */
|
||||
+ TYPE_INT, /* pno */
|
||||
+ MK_ARRAY(TYPE_CHAR, BLKPG_DEVNAMELTH), /* devname */
|
||||
+ MK_ARRAY(TYPE_CHAR, BLKPG_VOLNAMELTH)) /* volname */
|
||||
+
|
||||
+STRUCT(blkpg_ioctl_arg,
|
||||
+ TYPE_INT, /* op */
|
||||
+ TYPE_INT, /* flags */
|
||||
+ TYPE_INT, /* datalen */
|
||||
+ MK_PTR(MK_STRUCT(STRUCT_blkpg_partition))) /* data */
|
@ -1,268 +0,0 @@
|
||||
From 5fe572d851613a77b3d8eae66981df585ee46fad Mon Sep 17 00:00:00 2001
|
||||
From: Riku Voipio <riku.voipio@linaro.org>
|
||||
Date: Mon, 13 Jan 2014 14:33:22 +0200
|
||||
Subject: [PATCH] linux-user: sync syscall numbers upto 3.13
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
All others updated except unicore, which doesn't look right to
|
||||
begin with.
|
||||
|
||||
Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
|
||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||
---
|
||||
linux-user/alpha/syscall_nr.h | 7 +++++++
|
||||
linux-user/arm/syscall_nr.h | 6 ++++++
|
||||
linux-user/cris/syscall_nr.h | 1 +
|
||||
linux-user/i386/syscall_nr.h | 6 ++++++
|
||||
linux-user/m68k/syscall_nr.h | 5 +++++
|
||||
linux-user/microblaze/syscall_nr.h | 7 ++++++-
|
||||
linux-user/mips/syscall_nr.h | 6 ++++++
|
||||
linux-user/mips64/syscall_nr.h | 13 +++++++++++++
|
||||
linux-user/openrisc/syscall_nr.h | 6 +++++-
|
||||
linux-user/ppc/syscall_nr.h | 6 ++++++
|
||||
linux-user/s390x/syscall_nr.h | 7 ++++++-
|
||||
linux-user/sh4/syscall_nr.h | 6 ++++++
|
||||
linux-user/sparc/syscall_nr.h | 7 +++++++
|
||||
linux-user/sparc64/syscall_nr.h | 7 +++++++
|
||||
linux-user/x86_64/syscall_nr.h | 7 +++++++
|
||||
15 files changed, 94 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/linux-user/alpha/syscall_nr.h b/linux-user/alpha/syscall_nr.h
|
||||
index d52d76e..625f301 100644
|
||||
--- a/linux-user/alpha/syscall_nr.h
|
||||
+++ b/linux-user/alpha/syscall_nr.h
|
||||
@@ -433,3 +433,10 @@
|
||||
#define TARGET_NR_open_by_handle_at 498
|
||||
#define TARGET_NR_clock_adjtime 499
|
||||
#define TARGET_NR_syncfs 500
|
||||
+#define TARGET_NR_setns 501
|
||||
+#define TARGET_NR_accept4 502
|
||||
+#define TARGET_NR_sendmmsg 503
|
||||
+#define TARGET_NR_process_vm_readv 504
|
||||
+#define TARGET_NR_process_vm_writev 505
|
||||
+#define TARGET_NR_kcmp 506
|
||||
+#define TARGET_NR_finit_module 507
|
||||
diff --git a/linux-user/arm/syscall_nr.h b/linux-user/arm/syscall_nr.h
|
||||
index 42d6855..bef847c 100644
|
||||
--- a/linux-user/arm/syscall_nr.h
|
||||
+++ b/linux-user/arm/syscall_nr.h
|
||||
@@ -378,3 +378,9 @@
|
||||
#define TARGET_NR_open_by_handle_at (371)
|
||||
#define TARGET_NR_clock_adjtime (372)
|
||||
#define TARGET_NR_syncfs (373)
|
||||
+#define TARGET_NR_sendmmsg (374)
|
||||
+#define TARGET_NR_setns (375)
|
||||
+#define TARGET_NR_process_vm_readv (376)
|
||||
+#define TARGET_NR_process_vm_writev (377)
|
||||
+#define TARGET_NR_kcmp (378)
|
||||
+#define TARGET_NR_finit_module (379)
|
||||
diff --git a/linux-user/cris/syscall_nr.h b/linux-user/cris/syscall_nr.h
|
||||
index 98f1a0b..694bd02 100644
|
||||
--- a/linux-user/cris/syscall_nr.h
|
||||
+++ b/linux-user/cris/syscall_nr.h
|
||||
@@ -335,3 +335,4 @@
|
||||
#define TARGET_NR_inotify_init1 332
|
||||
#define TARGET_NR_preadv 333
|
||||
#define TARGET_NR_pwritev 334
|
||||
+#define TARGET_NR_setns 335
|
||||
diff --git a/linux-user/i386/syscall_nr.h b/linux-user/i386/syscall_nr.h
|
||||
index f080305..c8f7302 100644
|
||||
--- a/linux-user/i386/syscall_nr.h
|
||||
+++ b/linux-user/i386/syscall_nr.h
|
||||
@@ -347,3 +347,9 @@
|
||||
#define TARGET_NR_open_by_handle_at 342
|
||||
#define TARGET_NR_clock_adjtime 343
|
||||
#define TARGET_NR_syncfs 344
|
||||
+#define TARGET_NR_sendmmsg 345
|
||||
+#define TARGET_NR_setns 346
|
||||
+#define TARGET_NR_process_vm_readv 347
|
||||
+#define TARGET_NR_process_vm_writev 348
|
||||
+#define TARGET_NR_kcmp 349
|
||||
+#define TARGET_NR_finit_module 350
|
||||
diff --git a/linux-user/m68k/syscall_nr.h b/linux-user/m68k/syscall_nr.h
|
||||
index 4d0937e..25f8521 100644
|
||||
--- a/linux-user/m68k/syscall_nr.h
|
||||
+++ b/linux-user/m68k/syscall_nr.h
|
||||
@@ -344,3 +344,8 @@
|
||||
#define TARGET_NR_open_by_handle_at 341
|
||||
#define TARGET_NR_clock_adjtime 342
|
||||
#define TARGET_NR_syncfs 343
|
||||
+#define TARGET_NR_setns 344
|
||||
+#define TARGET_NR_process_vm_readv 345
|
||||
+#define TARGET_NR_process_vm_writev 346
|
||||
+#define TARGET_NR_kcmp 347
|
||||
+#define TARGET_NR_finit_module 348
|
||||
diff --git a/linux-user/microblaze/syscall_nr.h b/linux-user/microblaze/syscall_nr.h
|
||||
index f1fe0e7..6f530f9 100644
|
||||
--- a/linux-user/microblaze/syscall_nr.h
|
||||
+++ b/linux-user/microblaze/syscall_nr.h
|
||||
@@ -376,4 +376,9 @@
|
||||
#define TARGET_NR_open_by_handle_at 372
|
||||
#define TARGET_NR_clock_adjtime 373
|
||||
#define TARGET_NR_syncfs 374
|
||||
-
|
||||
+#define TARGET_NR_setns 375
|
||||
+#define TARGET_NR_sendmmsg 376
|
||||
+#define TARGET_NR_process_vm_readv 377
|
||||
+#define TARGET_NR_process_vm_writev 378
|
||||
+#define TARGET_NR_kcmp 379
|
||||
+#define TARGET_NR_finit_module 380
|
||||
diff --git a/linux-user/mips/syscall_nr.h b/linux-user/mips/syscall_nr.h
|
||||
index fbdc348..2d1a13e 100644
|
||||
--- a/linux-user/mips/syscall_nr.h
|
||||
+++ b/linux-user/mips/syscall_nr.h
|
||||
@@ -345,3 +345,9 @@
|
||||
#define TARGET_NR_open_by_handle_at (TARGET_NR_Linux + 340)
|
||||
#define TARGET_NR_clock_adjtime (TARGET_NR_Linux + 341)
|
||||
#define TARGET_NR_syncfs (TARGET_NR_Linux + 342)
|
||||
+#define TARGET_NR_sendmmsg (TARGET_NR_Linux + 343)
|
||||
+#define TARGET_NR_setns (TARGET_NR_Linux + 344)
|
||||
+#define TARGET_NR_process_vm_readv (TARGET_NR_Linux + 345)
|
||||
+#define TARGET_NR_process_vm_writev (TARGET_NR_Linux + 346)
|
||||
+#define TARGET_NR_kcmp (TARGET_NR_Linux + 347)
|
||||
+#define TARGET_NR_finit_module (TARGET_NR_Linux + 348)
|
||||
diff --git a/linux-user/mips64/syscall_nr.h b/linux-user/mips64/syscall_nr.h
|
||||
index 0f4a6b1..004232a 100644
|
||||
--- a/linux-user/mips64/syscall_nr.h
|
||||
+++ b/linux-user/mips64/syscall_nr.h
|
||||
@@ -310,6 +310,12 @@
|
||||
#define TARGET_NR_open_by_handle_at (TARGET_NR_Linux + 304)
|
||||
#define TARGET_NR_clock_adjtime (TARGET_NR_Linux + 305)
|
||||
#define TARGET_NR_syncfs (TARGET_NR_Linux + 306)
|
||||
+#define TARGET_NR_sendmmsg (TARGET_NR_Linux + 307)
|
||||
+#define TARGET_NR_setns (TARGET_NR_Linux + 308)
|
||||
+#define TARGET_NR_process_vm_readv (TARGET_NR_Linux + 309)
|
||||
+#define TARGET_NR_process_vm_writev (TARGET_NR_Linux + 310)
|
||||
+#define TARGET_NR_kcmp (TARGET_NR_Linux + 311)
|
||||
+#define TARGET_NR_finit_module (TARGET_NR_Linux + 312)
|
||||
#else
|
||||
/*
|
||||
* Linux 64-bit syscalls are in the range from 5000 to 5999.
|
||||
@@ -617,4 +623,11 @@
|
||||
#define TARGET_NR_open_by_handle_at (TARGET_NR_Linux + 299)
|
||||
#define TARGET_NR_clock_adjtime (TARGET_NR_Linux + 300)
|
||||
#define TARGET_NR_syncfs (TARGET_NR_Linux + 301)
|
||||
+#define TARGET_NR_sendmmsg (TARGET_NR_Linux + 302)
|
||||
+#define TARGET_NR_setns (TARGET_NR_Linux + 303)
|
||||
+#define TARGET_NR_process_vm_readv (TARGET_NR_Linux + 304)
|
||||
+#define TARGET_NR_process_vm_writev (TARGET_NR_Linux + 305)
|
||||
+#define TARGET_NR_kcmp (TARGET_NR_Linux + 306)
|
||||
+#define TARGET_NR_finit_module (TARGET_NR_Linux + 307)
|
||||
+#define TARGET_NR_getdents64 (TARGET_NR_Linux + 308)
|
||||
#endif
|
||||
diff --git a/linux-user/openrisc/syscall_nr.h b/linux-user/openrisc/syscall_nr.h
|
||||
index f4ac91e..4c386ea 100644
|
||||
--- a/linux-user/openrisc/syscall_nr.h
|
||||
+++ b/linux-user/openrisc/syscall_nr.h
|
||||
@@ -378,9 +378,13 @@
|
||||
#define TARGET_NR_syncfs 267
|
||||
#define TARGET_NR_setns 268
|
||||
#define TARGET_NR_sendmmsg 269
|
||||
+#define TARGET_NR_process_vm_readv 270
|
||||
+#define TARGET_NR_process_vm_writev 271
|
||||
+#define TARGET_NR_kcmp 272
|
||||
+#define TARGET_NR_finit_module 273
|
||||
|
||||
#undef TARGET_NR_syscalls
|
||||
-#define TARGET_NR_syscalls 270
|
||||
+#define TARGET_NR_syscalls 274
|
||||
|
||||
/*
|
||||
* All syscalls below here should go away really,
|
||||
diff --git a/linux-user/ppc/syscall_nr.h b/linux-user/ppc/syscall_nr.h
|
||||
index 0673b7d..1e1736e 100644
|
||||
--- a/linux-user/ppc/syscall_nr.h
|
||||
+++ b/linux-user/ppc/syscall_nr.h
|
||||
@@ -362,3 +362,9 @@
|
||||
#define TARGET_NR_open_by_handle_at 346
|
||||
#define TARGET_NR_clock_adjtime 347
|
||||
#define TARGET_NR_syncfs 348
|
||||
+#define TARGET_NR_sendmmsg 349
|
||||
+#define TARGET_NR_setns 350
|
||||
+#define TARGET_NR_process_vm_readv 351
|
||||
+#define TARGET_NR_process_vm_writev 352
|
||||
+#define TARGET_NR_finit_module 353
|
||||
+#define TARGET_NR_kcmp 354
|
||||
diff --git a/linux-user/s390x/syscall_nr.h b/linux-user/s390x/syscall_nr.h
|
||||
index d4529ac..7c0b8b2 100644
|
||||
--- a/linux-user/s390x/syscall_nr.h
|
||||
+++ b/linux-user/s390x/syscall_nr.h
|
||||
@@ -265,6 +265,12 @@
|
||||
#define TARGET_NR_open_by_handle_at 336
|
||||
#define TARGET_NR_clock_adjtime 337
|
||||
#define TARGET_NR_syncfs 338
|
||||
+#define TARGET_NR_setns 339
|
||||
+#define TARGET_NR_process_vm_readv 340
|
||||
+#define TARGET_NR_process_vm_writev 341
|
||||
+#define TARGET_NR_s390_runtime_instr 342
|
||||
+#define TARGET_NR_kcmp 343
|
||||
+#define TARGET_NR_finit_module 344
|
||||
|
||||
/*
|
||||
* There are some system calls that are not present on 64 bit, some
|
||||
@@ -355,4 +361,3 @@
|
||||
#define TARGET_NR_newfstatat 293
|
||||
|
||||
#endif
|
||||
-
|
||||
diff --git a/linux-user/sh4/syscall_nr.h b/linux-user/sh4/syscall_nr.h
|
||||
index 365db58..bdf8742 100644
|
||||
--- a/linux-user/sh4/syscall_nr.h
|
||||
+++ b/linux-user/sh4/syscall_nr.h
|
||||
@@ -366,3 +366,9 @@
|
||||
#define TARGET_NR_open_by_handle_at 360
|
||||
#define TARGET_NR_clock_adjtime 361
|
||||
#define TARGET_NR_syncfs 362
|
||||
+#define TARGET_NR_sendmmsg 363
|
||||
+#define TARGET_NR_setns 364
|
||||
+#define TARGET_NR_process_vm_readv 365
|
||||
+#define TARGET_NR_process_vm_writev 366
|
||||
+#define TARGET_NR_kcmp 367
|
||||
+#define TARGET_NR_finit_module 368
|
||||
diff --git a/linux-user/sparc/syscall_nr.h b/linux-user/sparc/syscall_nr.h
|
||||
index 534e6e9..181cd32 100644
|
||||
--- a/linux-user/sparc/syscall_nr.h
|
||||
+++ b/linux-user/sparc/syscall_nr.h
|
||||
@@ -302,3 +302,10 @@
|
||||
#define TARGET_NR_open_by_handle_at 333
|
||||
#define TARGET_NR_clock_adjtime 334
|
||||
#define TARGET_NR_syncfs 335
|
||||
+#define TARGET_NR_sendmmsg 336
|
||||
+#define TARGET_NR_setns 337
|
||||
+#define TARGET_NR_process_vm_readv 338
|
||||
+#define TARGET_NR_process_vm_writev 339
|
||||
+#define TARGET_NR_kern_features 340
|
||||
+#define TARGET_NR_kcmp 341
|
||||
+#define TARGET_NR_finit_module 342
|
||||
diff --git a/linux-user/sparc64/syscall_nr.h b/linux-user/sparc64/syscall_nr.h
|
||||
index 70988b2..34a984c 100644
|
||||
--- a/linux-user/sparc64/syscall_nr.h
|
||||
+++ b/linux-user/sparc64/syscall_nr.h
|
||||
@@ -334,3 +334,10 @@
|
||||
#define TARGET_NR_open_by_handle_at 333
|
||||
#define TARGET_NR_clock_adjtime 334
|
||||
#define TARGET_NR_syncfs 335
|
||||
+#define TARGET_NR_sendmmsg 336
|
||||
+#define TARGET_NR_setns 337
|
||||
+#define TARGET_NR_process_vm_readv 338
|
||||
+#define TARGET_NR_process_vm_writev 339
|
||||
+#define TARGET_NR_kern_features 340
|
||||
+#define TARGET_NR_kcmp 341
|
||||
+#define TARGET_NR_finit_module 342
|
||||
diff --git a/linux-user/x86_64/syscall_nr.h b/linux-user/x86_64/syscall_nr.h
|
||||
index 947e961..7c59e3a 100644
|
||||
--- a/linux-user/x86_64/syscall_nr.h
|
||||
+++ b/linux-user/x86_64/syscall_nr.h
|
||||
@@ -305,3 +305,10 @@
|
||||
#define TARGET_NR_open_by_handle_at 304
|
||||
#define TARGET_NR_clock_adjtime 305
|
||||
#define TARGET_NR_syncfs 306
|
||||
+#define TARGET_NR_sendmmsg 307
|
||||
+#define TARGET_NR_setns 308
|
||||
+#define TARGET_NR_getcpu 309
|
||||
+#define TARGET_NR_process_vm_readv 310
|
||||
+#define TARGET_NR_process_vm_writev 311
|
||||
+#define TARGET_NR_kcmp 312
|
||||
+#define TARGET_NR_finit_module 313
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:31f333a85f2d14c605a77679904a9668eaeb1b6dc7da53a1665230f46bc21314
|
||||
size 12248954
|
3
qemu-2.0.0-rc0.tar.bz2
Normal file
3
qemu-2.0.0-rc0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c8ce73480cd41ddfb9482e7174b1850a996964b344108493eec0d4a43611a53c
|
||||
size 12795764
|
@ -1,3 +1,12 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 18 12:38:28 UTC 2014 - afaerber@suse.de
|
||||
|
||||
- Update to v2.0.0-rc0: Cf. http://wiki.qemu-project.org/ChangeLog/2.0
|
||||
* Update update_git.sh script accordingly
|
||||
* Generate package version automatically from VERSION file
|
||||
* Drop 0012-linux-user-Ignore-timer_create-sysc.patch (implemented)
|
||||
* Package new qemu-aarch64
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jan 24 11:20:52 UTC 2014 - afaerber@suse.de
|
||||
|
||||
|
@ -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.7.0
|
||||
Version: 1.7.90
|
||||
Release: 0
|
||||
Source: qemu-1.7.0.tar.bz2
|
||||
Source: qemu-2.0.0-rc0.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
|
||||
@ -36,37 +36,34 @@ Patch0008: 0008-qemu-cvs-ioctl_debug.patch.patch
|
||||
Patch0009: 0009-qemu-cvs-ioctl_nodirection.patch.patch
|
||||
Patch0010: 0010-block-vmdk-Support-creation-of-SCSI.patch
|
||||
Patch0011: 0011-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
Patch0012: 0012-linux-user-Ignore-timer_create-sysc.patch
|
||||
Patch0013: 0013-linux-user-be-silent-about-capget-f.patch
|
||||
Patch0014: 0014-PPC-KVM-Disable-mmu-notifier-check..patch
|
||||
Patch0015: 0015-linux-user-fix-segfault-deadlock.pa.patch
|
||||
Patch0016: 0016-linux-user-binfmt-support-host-bina.patch
|
||||
Patch0017: 0017-linux-user-arm-no-tb_flush-on-reset.patch
|
||||
Patch0018: 0018-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
Patch0019: 0019-linux-user-lock-tcg.patch.patch
|
||||
Patch0020: 0020-linux-user-Run-multi-threaded-code-.patch
|
||||
Patch0021: 0021-linux-user-lock-tb-flushing-too.pat.patch
|
||||
Patch0022: 0022-linux-user-Fake-proc-cpuinfo.patch.patch
|
||||
Patch0023: 0023-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
Patch0024: 0024-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
Patch0025: 0025-linux-user-XXX-disable-fiemap.patch.patch
|
||||
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-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-roms-Build-vgabios.bin.patch.patch
|
||||
Patch0039: 0039-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
Patch0040: 0040-linux-user-Implement-BLKPG-ioctl.pa.patch
|
||||
Patch0041: 0041-linux-user-sync-syscall-numbers-upt.patch
|
||||
Patch0042: 0042-xen_disk-add-discard-support.patch.patch
|
||||
Patch0012: 0012-linux-user-be-silent-about-capget-f.patch
|
||||
Patch0013: 0013-PPC-KVM-Disable-mmu-notifier-check..patch
|
||||
Patch0014: 0014-linux-user-fix-segfault-deadlock.pa.patch
|
||||
Patch0015: 0015-linux-user-binfmt-support-host-bina.patch
|
||||
Patch0016: 0016-linux-user-arm-no-tb_flush-on-reset.patch
|
||||
Patch0017: 0017-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
Patch0018: 0018-linux-user-lock-tcg.patch.patch
|
||||
Patch0019: 0019-linux-user-Run-multi-threaded-code-.patch
|
||||
Patch0020: 0020-linux-user-lock-tb-flushing-too.pat.patch
|
||||
Patch0021: 0021-linux-user-Fake-proc-cpuinfo.patch.patch
|
||||
Patch0022: 0022-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
Patch0023: 0023-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
Patch0024: 0024-linux-user-XXX-disable-fiemap.patch.patch
|
||||
Patch0025: 0025-slirp-nooutgoing.patch.patch
|
||||
Patch0026: 0026-vnc-password-file-and-incoming-conn.patch
|
||||
Patch0027: 0027-linux-user-add-more-blk-ioctls.patc.patch
|
||||
Patch0028: 0028-linux-user-use-target_ulong.patch.patch
|
||||
Patch0029: 0029-block-Add-support-for-DictZip-enabl.patch
|
||||
Patch0030: 0030-block-Add-tar-container-format.patc.patch
|
||||
Patch0031: 0031-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
Patch0032: 0032-Legacy-Patch-kvm-qemu-preXX-report-.patch
|
||||
Patch0033: 0033-console-add-question-mark-escape-op.patch
|
||||
Patch0034: 0034-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
Patch0035: 0035-linux-user-lseek-explicitly-cast-no.patch
|
||||
Patch0036: 0036-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
Patch0037: 0037-roms-Build-vgabios.bin.patch.patch
|
||||
Patch0038: 0038-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
Patch0039: 0039-xen_disk-add-discard-support.patch.patch
|
||||
# Please do not add patches manually here, run update_git.sh.
|
||||
# this is to make lint happy
|
||||
Source300: rpmlintrc
|
||||
@ -118,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.7.0
|
||||
%setup -q -n qemu-2.0.0-rc0
|
||||
%patch0001 -p1
|
||||
%patch0002 -p1
|
||||
%patch0003 -p1
|
||||
@ -158,9 +155,6 @@ run cross-architecture builds.
|
||||
%patch0037 -p1
|
||||
%patch0038 -p1
|
||||
%patch0039 -p1
|
||||
%patch0040 -p1
|
||||
%patch0041 -p1
|
||||
%patch0042 -p1
|
||||
|
||||
%build
|
||||
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
|
||||
@ -205,6 +199,7 @@ rm -rf ${RPM_BUILD_ROOT}
|
||||
|
||||
%files
|
||||
%defattr(-, root, root)
|
||||
%_bindir/qemu-aarch64
|
||||
%_bindir/qemu-alpha
|
||||
%_bindir/qemu-arm
|
||||
%_bindir/qemu-armeb
|
||||
|
@ -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.7.0
|
||||
QEMU_VERSION
|
||||
Release: 0
|
||||
Source: qemu-1.7.0.tar.bz2
|
||||
Source: qemu-2.0.0-rc0.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.7.0
|
||||
%setup -q -n qemu-2.0.0-rc0
|
||||
PATCH_EXEC
|
||||
|
||||
%build
|
||||
@ -123,6 +123,7 @@ rm -rf ${RPM_BUILD_ROOT}
|
||||
|
||||
%files
|
||||
%defattr(-, root, root)
|
||||
%_bindir/qemu-aarch64
|
||||
%_bindir/qemu-alpha
|
||||
%_bindir/qemu-arm
|
||||
%_bindir/qemu-armeb
|
||||
|
11
qemu.changes
11
qemu.changes
@ -1,3 +1,14 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 19 12:36:56 UTC 2014 - afaerber@suse.de
|
||||
|
||||
- Update to v2.0.0-rc0: Cf. http://wiki.qemu-project.org/ChangeLog/2.0
|
||||
* Adapt update_git.sh script accordingly
|
||||
* Generate package version automatically from VERSION file
|
||||
* Switch from LGPL VGABIOS to SeaVGABIOS
|
||||
* Enable modules
|
||||
* Explicitly enable virtio-blk-data-plane (no functional change)
|
||||
* Package new firmware blobs
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 7 14:44:34 UTC 2014 - speilicke@suse.com
|
||||
|
||||
|
109
qemu.spec
109
qemu.spec
@ -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.7.0
|
||||
Version: 1.7.90
|
||||
Release: 0
|
||||
Source: %name-1.7.0.tar.bz2
|
||||
Source: %name-2.0.0-rc0.tar.bz2
|
||||
Source1: 80-kvm.rules
|
||||
Source2: qemu-ifup
|
||||
Source3: kvm_stat
|
||||
@ -49,37 +49,34 @@ Patch0008: 0008-qemu-cvs-ioctl_debug.patch.patch
|
||||
Patch0009: 0009-qemu-cvs-ioctl_nodirection.patch.patch
|
||||
Patch0010: 0010-block-vmdk-Support-creation-of-SCSI.patch
|
||||
Patch0011: 0011-linux-user-add-binfmt-wrapper-for-a.patch
|
||||
Patch0012: 0012-linux-user-Ignore-timer_create-sysc.patch
|
||||
Patch0013: 0013-linux-user-be-silent-about-capget-f.patch
|
||||
Patch0014: 0014-PPC-KVM-Disable-mmu-notifier-check..patch
|
||||
Patch0015: 0015-linux-user-fix-segfault-deadlock.pa.patch
|
||||
Patch0016: 0016-linux-user-binfmt-support-host-bina.patch
|
||||
Patch0017: 0017-linux-user-arm-no-tb_flush-on-reset.patch
|
||||
Patch0018: 0018-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
Patch0019: 0019-linux-user-lock-tcg.patch.patch
|
||||
Patch0020: 0020-linux-user-Run-multi-threaded-code-.patch
|
||||
Patch0021: 0021-linux-user-lock-tb-flushing-too.pat.patch
|
||||
Patch0022: 0022-linux-user-Fake-proc-cpuinfo.patch.patch
|
||||
Patch0023: 0023-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
Patch0024: 0024-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
Patch0025: 0025-linux-user-XXX-disable-fiemap.patch.patch
|
||||
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-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-roms-Build-vgabios.bin.patch.patch
|
||||
Patch0039: 0039-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
Patch0040: 0040-linux-user-Implement-BLKPG-ioctl.pa.patch
|
||||
Patch0041: 0041-linux-user-sync-syscall-numbers-upt.patch
|
||||
Patch0042: 0042-xen_disk-add-discard-support.patch.patch
|
||||
Patch0012: 0012-linux-user-be-silent-about-capget-f.patch
|
||||
Patch0013: 0013-PPC-KVM-Disable-mmu-notifier-check..patch
|
||||
Patch0014: 0014-linux-user-fix-segfault-deadlock.pa.patch
|
||||
Patch0015: 0015-linux-user-binfmt-support-host-bina.patch
|
||||
Patch0016: 0016-linux-user-arm-no-tb_flush-on-reset.patch
|
||||
Patch0017: 0017-linux-user-Ignore-broken-loop-ioctl.patch
|
||||
Patch0018: 0018-linux-user-lock-tcg.patch.patch
|
||||
Patch0019: 0019-linux-user-Run-multi-threaded-code-.patch
|
||||
Patch0020: 0020-linux-user-lock-tb-flushing-too.pat.patch
|
||||
Patch0021: 0021-linux-user-Fake-proc-cpuinfo.patch.patch
|
||||
Patch0022: 0022-linux-user-implement-FS_IOC_GETFLAG.patch
|
||||
Patch0023: 0023-linux-user-implement-FS_IOC_SETFLAG.patch
|
||||
Patch0024: 0024-linux-user-XXX-disable-fiemap.patch.patch
|
||||
Patch0025: 0025-slirp-nooutgoing.patch.patch
|
||||
Patch0026: 0026-vnc-password-file-and-incoming-conn.patch
|
||||
Patch0027: 0027-linux-user-add-more-blk-ioctls.patc.patch
|
||||
Patch0028: 0028-linux-user-use-target_ulong.patch.patch
|
||||
Patch0029: 0029-block-Add-support-for-DictZip-enabl.patch
|
||||
Patch0030: 0030-block-Add-tar-container-format.patc.patch
|
||||
Patch0031: 0031-Legacy-Patch-kvm-qemu-preXX-dictzip.patch
|
||||
Patch0032: 0032-Legacy-Patch-kvm-qemu-preXX-report-.patch
|
||||
Patch0033: 0033-console-add-question-mark-escape-op.patch
|
||||
Patch0034: 0034-Make-char-muxer-more-robust-wrt-sma.patch
|
||||
Patch0035: 0035-linux-user-lseek-explicitly-cast-no.patch
|
||||
Patch0036: 0036-virtfs-proxy-helper-Provide-__u64-f.patch
|
||||
Patch0037: 0037-roms-Build-vgabios.bin.patch.patch
|
||||
Patch0038: 0038-configure-Enable-PIE-for-ppc-and-pp.patch
|
||||
Patch0039: 0039-xen_disk-add-discard-support.patch.patch
|
||||
# Please do not add patches manually here, run update_git.sh.
|
||||
|
||||
# roms/ipxe patches
|
||||
@ -107,10 +104,10 @@ BuildRequires: iasl
|
||||
%else
|
||||
BuildRequires: pmtools
|
||||
%endif
|
||||
BuildRequires: dev86
|
||||
%endif
|
||||
BuildRequires: e2fsprogs-devel
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: glib2-devel
|
||||
%if 0%{?suse_version} >= 1220
|
||||
BuildRequires: gtk3-devel
|
||||
@ -142,14 +139,15 @@ BuildRequires: makeinfo
|
||||
BuildRequires: ncurses-devel
|
||||
BuildRequires: pwdutils
|
||||
BuildRequires: python
|
||||
%if 0%{?sles_version} != 11
|
||||
BuildRequires: usbredir-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1210
|
||||
BuildRequires: systemd
|
||||
%{?systemd_requires}
|
||||
%define with_systemd 1
|
||||
Recommends: qemu-ksm = %{version}
|
||||
%endif
|
||||
%if 0%{?sles_version} != 11
|
||||
BuildRequires: usbredir-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1210
|
||||
%if 0%{?suse_version} >= 1220
|
||||
BuildRequires: vte-devel
|
||||
%else
|
||||
@ -196,6 +194,7 @@ Suggests: qemu-arm
|
||||
%endif
|
||||
Suggests: qemu-extra
|
||||
%if 0%{?suse_version} >= 1210
|
||||
Recommends: qemu-ksm = %{version}
|
||||
Suggests: qemu-lang
|
||||
%endif
|
||||
|
||||
@ -324,7 +323,7 @@ This sub-package contains translations.
|
||||
%package seabios
|
||||
Summary: X86 BIOS for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: 1.7.3.2
|
||||
Version: 1.7.4
|
||||
Release: 0
|
||||
BuildArch: noarch
|
||||
Conflicts: qemu < 1.6.0
|
||||
@ -336,7 +335,7 @@ is the default BIOS for QEMU.
|
||||
%package vgabios
|
||||
Summary: VGA BIOSes for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: 0.6c
|
||||
Version: 1.7.4
|
||||
Release: 0
|
||||
BuildArch: noarch
|
||||
Conflicts: qemu < 1.6.0
|
||||
@ -413,7 +412,7 @@ This package provides a service file for starting and stopping KSM.
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%setup -q #-n %name-1.7.0-rc2
|
||||
%setup -q -n %name-2.0.0-rc0
|
||||
%patch0001 -p1
|
||||
%patch0002 -p1
|
||||
%patch0003 -p1
|
||||
@ -453,9 +452,6 @@ This package provides a service file for starting and stopping KSM.
|
||||
%patch0037 -p1
|
||||
%patch0038 -p1
|
||||
%patch0039 -p1
|
||||
%patch0040 -p1
|
||||
%patch0041 -p1
|
||||
%patch0042 -p1
|
||||
|
||||
%patch1000 -p1
|
||||
%patch1001 -p1
|
||||
@ -492,7 +488,9 @@ done
|
||||
%endif
|
||||
%endif
|
||||
--enable-linux-aio \
|
||||
--enable-modules \
|
||||
--enable-sdl \
|
||||
--with-sdlabi=1.2 \
|
||||
%if 0%{?suse_version} >= 1140
|
||||
%ifarch %ix86 x86_64
|
||||
--enable-spice \
|
||||
@ -510,6 +508,7 @@ done
|
||||
%endif
|
||||
--enable-vde \
|
||||
--enable-virtfs \
|
||||
--enable-virtio-blk-data-plane \
|
||||
--enable-vnc-jpeg \
|
||||
--enable-vnc-png \
|
||||
--enable-vnc-sasl \
|
||||
@ -524,7 +523,7 @@ make %{?_smp_mflags} V=1
|
||||
# Firmware
|
||||
%if %{build_x86_fw_from_source}
|
||||
make --no-print-directory -C roms bios
|
||||
make --no-print-directory -C roms lgplvgabios
|
||||
make --no-print-directory -C roms seavgabios
|
||||
make --no-print-directory -C roms pxerom
|
||||
make --no-print-directory -C roms sgabios
|
||||
%endif
|
||||
@ -606,10 +605,13 @@ fi
|
||||
|
||||
%files
|
||||
%defattr(-, root, root)
|
||||
%dir %_libexecdir/%name
|
||||
%_libexecdir/%name/block-curl.so
|
||||
%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
|
||||
@ -624,6 +626,12 @@ fi
|
||||
%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
|
||||
@ -639,6 +647,8 @@ fi
|
||||
%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
|
||||
%exclude %_datadir/%name/qemu-ifup
|
||||
%dir %_sysconfdir/%name
|
||||
%ifarch %ix86 x86_64
|
||||
@ -692,6 +702,8 @@ fi
|
||||
%_datadir/%name/openbios-sparc32
|
||||
%_datadir/%name/openbios-sparc64
|
||||
%_datadir/%name/petalogix-s3adsp1800.dtb
|
||||
%_datadir/%name/QEMU,cgthree.bin
|
||||
%_datadir/%name/QEMU,tcx.bin
|
||||
|
||||
%ifarch %ix86 x86_64 s390x
|
||||
%files kvm
|
||||
@ -710,6 +722,7 @@ fi
|
||||
%files seabios
|
||||
%defattr(-, root, root)
|
||||
%_datadir/%name/bios.bin
|
||||
%_datadir/%name/bios-256k.bin
|
||||
%_datadir/%name/acpi-dsdt.aml
|
||||
%_datadir/%name/q35-acpi-dsdt.aml
|
||||
|
||||
@ -733,6 +746,12 @@ fi
|
||||
%_datadir/%name/pxe-ne2k_pci.rom
|
||||
%_datadir/%name/pxe-rtl8139.rom
|
||||
%_datadir/%name/pxe-virtio.rom
|
||||
%_datadir/%name/efi-e1000.rom
|
||||
%_datadir/%name/efi-eepro100.rom
|
||||
%_datadir/%name/efi-pcnet.rom
|
||||
%_datadir/%name/efi-ne2k_pci.rom
|
||||
%_datadir/%name/efi-rtl8139.rom
|
||||
%_datadir/%name/efi-virtio.rom
|
||||
|
||||
%files tools
|
||||
%defattr(-, root, root)
|
||||
|
47
qemu.spec.in
47
qemu.spec.in
@ -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.7.0
|
||||
QEMU_VERSION
|
||||
Release: 0
|
||||
Source: %name-1.7.0.tar.bz2
|
||||
Source: %name-2.0.0-rc0.tar.bz2
|
||||
Source1: 80-kvm.rules
|
||||
Source2: qemu-ifup
|
||||
Source3: kvm_stat
|
||||
@ -66,10 +66,10 @@ BuildRequires: iasl
|
||||
%else
|
||||
BuildRequires: pmtools
|
||||
%endif
|
||||
BuildRequires: dev86
|
||||
%endif
|
||||
BuildRequires: e2fsprogs-devel
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: glib2-devel
|
||||
%if 0%{?suse_version} >= 1220
|
||||
BuildRequires: gtk3-devel
|
||||
@ -101,14 +101,15 @@ BuildRequires: makeinfo
|
||||
BuildRequires: ncurses-devel
|
||||
BuildRequires: pwdutils
|
||||
BuildRequires: python
|
||||
%if 0%{?sles_version} != 11
|
||||
BuildRequires: usbredir-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1210
|
||||
BuildRequires: systemd
|
||||
%{?systemd_requires}
|
||||
%define with_systemd 1
|
||||
Recommends: qemu-ksm = %{version}
|
||||
%endif
|
||||
%if 0%{?sles_version} != 11
|
||||
BuildRequires: usbredir-devel
|
||||
%endif
|
||||
%if 0%{?suse_version} >= 1210
|
||||
%if 0%{?suse_version} >= 1220
|
||||
BuildRequires: vte-devel
|
||||
%else
|
||||
@ -155,6 +156,7 @@ Suggests: qemu-arm
|
||||
%endif
|
||||
Suggests: qemu-extra
|
||||
%if 0%{?suse_version} >= 1210
|
||||
Recommends: qemu-ksm = %{version}
|
||||
Suggests: qemu-lang
|
||||
%endif
|
||||
|
||||
@ -283,7 +285,7 @@ This sub-package contains translations.
|
||||
%package seabios
|
||||
Summary: X86 BIOS for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: 1.7.3.2
|
||||
Version: 1.7.4
|
||||
Release: 0
|
||||
BuildArch: noarch
|
||||
Conflicts: qemu < 1.6.0
|
||||
@ -295,7 +297,7 @@ is the default BIOS for QEMU.
|
||||
%package vgabios
|
||||
Summary: VGA BIOSes for QEMU
|
||||
Group: System/Emulators/PC
|
||||
Version: 0.6c
|
||||
Version: 1.7.4
|
||||
Release: 0
|
||||
BuildArch: noarch
|
||||
Conflicts: qemu < 1.6.0
|
||||
@ -372,7 +374,7 @@ This package provides a service file for starting and stopping KSM.
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%setup -q #-n %name-1.7.0-rc2
|
||||
%setup -q -n %name-2.0.0-rc0
|
||||
PATCH_EXEC
|
||||
|
||||
%patch1000 -p1
|
||||
@ -410,7 +412,9 @@ done
|
||||
%endif
|
||||
%endif
|
||||
--enable-linux-aio \
|
||||
--enable-modules \
|
||||
--enable-sdl \
|
||||
--with-sdlabi=1.2 \
|
||||
%if 0%{?suse_version} >= 1140
|
||||
%ifarch %ix86 x86_64
|
||||
--enable-spice \
|
||||
@ -428,6 +432,7 @@ done
|
||||
%endif
|
||||
--enable-vde \
|
||||
--enable-virtfs \
|
||||
--enable-virtio-blk-data-plane \
|
||||
--enable-vnc-jpeg \
|
||||
--enable-vnc-png \
|
||||
--enable-vnc-sasl \
|
||||
@ -442,7 +447,7 @@ make %{?_smp_mflags} V=1
|
||||
# Firmware
|
||||
%if %{build_x86_fw_from_source}
|
||||
make --no-print-directory -C roms bios
|
||||
make --no-print-directory -C roms lgplvgabios
|
||||
make --no-print-directory -C roms seavgabios
|
||||
make --no-print-directory -C roms pxerom
|
||||
make --no-print-directory -C roms sgabios
|
||||
%endif
|
||||
@ -524,10 +529,13 @@ fi
|
||||
|
||||
%files
|
||||
%defattr(-, root, root)
|
||||
%dir %_libexecdir/%name
|
||||
%_libexecdir/%name/block-curl.so
|
||||
%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
|
||||
@ -542,6 +550,12 @@ fi
|
||||
%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
|
||||
@ -557,6 +571,8 @@ fi
|
||||
%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
|
||||
%exclude %_datadir/%name/qemu-ifup
|
||||
%dir %_sysconfdir/%name
|
||||
%ifarch %ix86 x86_64
|
||||
@ -610,6 +626,8 @@ fi
|
||||
%_datadir/%name/openbios-sparc32
|
||||
%_datadir/%name/openbios-sparc64
|
||||
%_datadir/%name/petalogix-s3adsp1800.dtb
|
||||
%_datadir/%name/QEMU,cgthree.bin
|
||||
%_datadir/%name/QEMU,tcx.bin
|
||||
|
||||
%ifarch %ix86 x86_64 s390x
|
||||
%files kvm
|
||||
@ -628,6 +646,7 @@ fi
|
||||
%files seabios
|
||||
%defattr(-, root, root)
|
||||
%_datadir/%name/bios.bin
|
||||
%_datadir/%name/bios-256k.bin
|
||||
%_datadir/%name/acpi-dsdt.aml
|
||||
%_datadir/%name/q35-acpi-dsdt.aml
|
||||
|
||||
@ -651,6 +670,12 @@ fi
|
||||
%_datadir/%name/pxe-ne2k_pci.rom
|
||||
%_datadir/%name/pxe-rtl8139.rom
|
||||
%_datadir/%name/pxe-virtio.rom
|
||||
%_datadir/%name/efi-e1000.rom
|
||||
%_datadir/%name/efi-eepro100.rom
|
||||
%_datadir/%name/efi-pcnet.rom
|
||||
%_datadir/%name/efi-ne2k_pci.rom
|
||||
%_datadir/%name/efi-rtl8139.rom
|
||||
%_datadir/%name/efi-virtio.rom
|
||||
|
||||
%files tools
|
||||
%defattr(-, root, root)
|
||||
|
@ -12,8 +12,8 @@
|
||||
|
||||
GIT_TREE=git://github.com/openSUSE/qemu.git
|
||||
GIT_LOCAL_TREE=/home/andreas/QEMU/qemu-opensuse
|
||||
GIT_BRANCH=opensuse-1.7
|
||||
GIT_UPSTREAM_TAG=v1.7.0
|
||||
GIT_BRANCH=opensuse-2.0
|
||||
GIT_UPSTREAM_TAG=v2.0.0-rc0
|
||||
QEMU_TMP=/dev/shm/qemu-tmp
|
||||
|
||||
# clean up
|
||||
@ -36,6 +36,7 @@ else
|
||||
fi
|
||||
git checkout $GIT_BRANCH
|
||||
git format-patch -N $GIT_UPSTREAM_TAG -o "$OSCDIR"
|
||||
QEMU_VERSION=`cat VERSION`
|
||||
cd "$OSCDIR"
|
||||
rm -rf $QEMU_TMP
|
||||
|
||||
@ -62,6 +63,8 @@ for package in qemu qemu-linux-user; do
|
||||
NUM=${i%%-*}
|
||||
echo "%patch$NUM -p1"
|
||||
done
|
||||
elif [ "$line" = "QEMU_VERSION" ]; then
|
||||
echo "Version: $QEMU_VERSION"
|
||||
else
|
||||
echo "$line"
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user