Accepting request 383004 from home:olh:qemu
- Update to v2.6.0-rc0: See http://wiki.qemu-project.org/ChangeLog/2.6 * Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6 * Accept every size in DISCARD request from a guest (bsc#964427) 0039-block-split-large-discard-requests-.patch * Recognize libxl flag to disable flush in block device (bsc#879425) 0040-xen_disk-Add-suse-specific-flush-di.patch * Use correct flag for crypto tests 0041-tests-Use-correct-config-param-for-.patch * Fix build on powerpc: 0042-build-link-with-libatomic-on-powerp.patch * Patches dropped (upstreamed): seabios_checkrom_typo.patch seabios_avoid_smbios_signature_string.patch OBS-URL: https://build.opensuse.org/request/show/383004 OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=289
This commit is contained in:
parent
4300c38927
commit
c75061c9b8
@ -1,4 +1,4 @@
|
|||||||
From 8aa30747a59c1beab3e56a314e1963357baeb99f Mon Sep 17 00:00:00 2001
|
From 7261f498a3b0b99180d09faaf73dc3af06d18fbe Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Mon, 21 Nov 2011 23:50:36 +0100
|
Date: Mon, 21 Nov 2011 23:50:36 +0100
|
||||||
Subject: [PATCH] XXX dont dump core on sigabort
|
Subject: [PATCH] XXX dont dump core on sigabort
|
||||||
@ -8,11 +8,11 @@ Subject: [PATCH] XXX dont dump core on sigabort
|
|||||||
1 file changed, 6 insertions(+)
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
diff --git a/linux-user/signal.c b/linux-user/signal.c
|
diff --git a/linux-user/signal.c b/linux-user/signal.c
|
||||||
index 9d62e02..1a8a332 100644
|
index 96e86c0..d422aeb 100644
|
||||||
--- a/linux-user/signal.c
|
--- a/linux-user/signal.c
|
||||||
+++ b/linux-user/signal.c
|
+++ b/linux-user/signal.c
|
||||||
@@ -447,6 +447,10 @@ static void QEMU_NORETURN force_sig(int target_sig)
|
@@ -443,6 +443,10 @@ static void QEMU_NORETURN force_sig(int target_sig)
|
||||||
host_sig = target_to_host_signal(target_sig);
|
trace_user_force_sig(env, target_sig, host_sig);
|
||||||
gdb_signalled(env, target_sig);
|
gdb_signalled(env, target_sig);
|
||||||
|
|
||||||
+ if (target_sig == 6) {
|
+ if (target_sig == 6) {
|
||||||
@ -22,7 +22,7 @@ index 9d62e02..1a8a332 100644
|
|||||||
/* dump core if supported by target binary format */
|
/* dump core if supported by target binary format */
|
||||||
if (core_dump_signal(target_sig) && (ts->bprm->core_dump != NULL)) {
|
if (core_dump_signal(target_sig) && (ts->bprm->core_dump != NULL)) {
|
||||||
stop_all_tasks();
|
stop_all_tasks();
|
||||||
@@ -464,6 +468,8 @@ static void QEMU_NORETURN force_sig(int target_sig)
|
@@ -460,6 +464,8 @@ static void QEMU_NORETURN force_sig(int target_sig)
|
||||||
target_sig, strsignal(host_sig), "core dumped" );
|
target_sig, strsignal(host_sig), "core dumped" );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From c3a774e193db19f48a4a471814360123150a3526 Mon Sep 17 00:00:00 2001
|
From fb897f92be5a2b144fe4f3f7f2ddb1386dd3a677 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Thu, 1 Dec 2011 19:00:01 +0100
|
Date: Thu, 1 Dec 2011 19:00:01 +0100
|
||||||
Subject: [PATCH] XXX work around SA_RESTART race with boehm-gc (ARM only)
|
Subject: [PATCH] XXX work around SA_RESTART race with boehm-gc (ARM only)
|
||||||
@ -13,10 +13,10 @@ Subject: [PATCH] XXX work around SA_RESTART race with boehm-gc (ARM only)
|
|||||||
4 files changed, 130 insertions(+), 10 deletions(-)
|
4 files changed, 130 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
diff --git a/linux-user/main.c b/linux-user/main.c
|
diff --git a/linux-user/main.c b/linux-user/main.c
|
||||||
index 8acfe0f..6379e03 100644
|
index b432bf2..119331f 100644
|
||||||
--- a/linux-user/main.c
|
--- a/linux-user/main.c
|
||||||
+++ b/linux-user/main.c
|
+++ b/linux-user/main.c
|
||||||
@@ -809,15 +809,22 @@ void cpu_loop(CPUARMState *env)
|
@@ -853,15 +853,22 @@ void cpu_loop(CPUARMState *env)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -49,10 +49,10 @@ index 8acfe0f..6379e03 100644
|
|||||||
} else {
|
} else {
|
||||||
goto error;
|
goto error;
|
||||||
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
|
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
|
||||||
index bd90cc3..ea9c98d 100644
|
index 26b0ba2..b55a9d2 100644
|
||||||
--- a/linux-user/qemu.h
|
--- a/linux-user/qemu.h
|
||||||
+++ b/linux-user/qemu.h
|
+++ b/linux-user/qemu.h
|
||||||
@@ -133,6 +133,8 @@ typedef struct TaskState {
|
@@ -130,6 +130,8 @@ typedef struct TaskState {
|
||||||
struct sigqueue sigqueue_table[MAX_SIGQUEUE_SIZE]; /* siginfo queue */
|
struct sigqueue sigqueue_table[MAX_SIGQUEUE_SIZE]; /* siginfo queue */
|
||||||
struct sigqueue *first_free; /* first free siginfo queue entry */
|
struct sigqueue *first_free; /* first free siginfo queue entry */
|
||||||
int signal_pending; /* non zero if a signal may be pending */
|
int signal_pending; /* non zero if a signal may be pending */
|
||||||
@ -61,7 +61,7 @@ index bd90cc3..ea9c98d 100644
|
|||||||
} __attribute__((aligned(16))) TaskState;
|
} __attribute__((aligned(16))) TaskState;
|
||||||
|
|
||||||
extern char *exec_path;
|
extern char *exec_path;
|
||||||
@@ -191,6 +193,7 @@ int get_osversion(void);
|
@@ -188,6 +190,7 @@ int get_osversion(void);
|
||||||
void init_qemu_uname_release(void);
|
void init_qemu_uname_release(void);
|
||||||
void fork_start(void);
|
void fork_start(void);
|
||||||
void fork_end(int child);
|
void fork_end(int child);
|
||||||
@ -70,18 +70,18 @@ index bd90cc3..ea9c98d 100644
|
|||||||
/* Creates the initial guest address space in the host memory space using
|
/* Creates the initial guest address space in the host memory space using
|
||||||
* the given host start address hint and size. The guest_start parameter
|
* the given host start address hint and size. The guest_start parameter
|
||||||
diff --git a/linux-user/signal.c b/linux-user/signal.c
|
diff --git a/linux-user/signal.c b/linux-user/signal.c
|
||||||
index 1a8a332..2c9b0da 100644
|
index d422aeb..eab88a9 100644
|
||||||
--- a/linux-user/signal.c
|
--- a/linux-user/signal.c
|
||||||
+++ b/linux-user/signal.c
|
+++ b/linux-user/signal.c
|
||||||
@@ -24,6 +24,7 @@
|
@@ -19,6 +19,7 @@
|
||||||
#include <errno.h>
|
#include "qemu/osdep.h"
|
||||||
#include <sys/ucontext.h>
|
#include <sys/ucontext.h>
|
||||||
#include <sys/resource.h>
|
#include <sys/resource.h>
|
||||||
+#include <sched.h>
|
+#include <sched.h>
|
||||||
|
|
||||||
#include "qemu.h"
|
#include "qemu.h"
|
||||||
#include "qemu-common.h"
|
#include "qemu-common.h"
|
||||||
@@ -570,6 +571,11 @@ int queue_signal(CPUArchState *env, int sig, target_siginfo_t *info)
|
@@ -563,6 +564,11 @@ int queue_signal(CPUArchState *env, int sig, target_siginfo_t *info)
|
||||||
k->pending = 1;
|
k->pending = 1;
|
||||||
/* signal that a new signal is pending */
|
/* signal that a new signal is pending */
|
||||||
ts->signal_pending = 1;
|
ts->signal_pending = 1;
|
||||||
@ -93,7 +93,7 @@ index 1a8a332..2c9b0da 100644
|
|||||||
return 1; /* indicates that the signal was queued */
|
return 1; /* indicates that the signal was queued */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -716,8 +722,24 @@ int do_sigaction(int sig, const struct target_sigaction *act,
|
@@ -703,8 +709,24 @@ int do_sigaction(int sig, const struct target_sigaction *act,
|
||||||
if (host_sig != SIGSEGV && host_sig != SIGBUS) {
|
if (host_sig != SIGSEGV && host_sig != SIGBUS) {
|
||||||
sigfillset(&act1.sa_mask);
|
sigfillset(&act1.sa_mask);
|
||||||
act1.sa_flags = SA_SIGINFO;
|
act1.sa_flags = SA_SIGINFO;
|
||||||
@ -119,10 +119,10 @@ index 1a8a332..2c9b0da 100644
|
|||||||
ignore state to avoid getting unexpected interrupted
|
ignore state to avoid getting unexpected interrupted
|
||||||
syscalls */
|
syscalls */
|
||||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||||
index 6c64ba6..ce8eba3 100644
|
index 032d338..fe0dbd6 100644
|
||||||
--- a/linux-user/syscall.c
|
--- a/linux-user/syscall.c
|
||||||
+++ b/linux-user/syscall.c
|
+++ b/linux-user/syscall.c
|
||||||
@@ -5663,6 +5663,87 @@ static target_timer_t get_timer_id(abi_long arg)
|
@@ -5847,6 +5847,87 @@ static target_timer_t get_timer_id(abi_long arg)
|
||||||
return timerid;
|
return timerid;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -210,7 +210,7 @@ index 6c64ba6..ce8eba3 100644
|
|||||||
/* do_syscall() should always have a single exit point at the end so
|
/* do_syscall() should always have a single exit point at the end so
|
||||||
that actions, such as logging of syscall results, can be performed.
|
that actions, such as logging of syscall results, can be performed.
|
||||||
All errnos that do_syscall() returns must be -TARGET_<errcode>. */
|
All errnos that do_syscall() returns must be -TARGET_<errcode>. */
|
||||||
@@ -5676,6 +5757,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
@@ -5860,6 +5941,12 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||||
struct stat st;
|
struct stat st;
|
||||||
struct statfs stfs;
|
struct statfs stfs;
|
||||||
void *p;
|
void *p;
|
||||||
@ -223,7 +223,7 @@ index 6c64ba6..ce8eba3 100644
|
|||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
gemu_log("syscall %d", num);
|
gemu_log("syscall %d", num);
|
||||||
@@ -8998,7 +9085,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
@@ -9211,7 +9298,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||||
cmd = target_to_host_fcntl_cmd(arg2);
|
cmd = target_to_host_fcntl_cmd(arg2);
|
||||||
if (cmd == -TARGET_EINVAL) {
|
if (cmd == -TARGET_EINVAL) {
|
||||||
ret = cmd;
|
ret = cmd;
|
||||||
@ -232,7 +232,7 @@ index 6c64ba6..ce8eba3 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch(arg2) {
|
switch(arg2) {
|
||||||
@@ -10029,6 +10116,7 @@ fail:
|
@@ -10255,6 +10342,7 @@ fail:
|
||||||
#endif
|
#endif
|
||||||
if(do_strace)
|
if(do_strace)
|
||||||
print_syscall_ret(num, ret);
|
print_syscall_ret(num, ret);
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 80376f4f9c820a5d1e9abe4e53f97bc7e0d349f4 Mon Sep 17 00:00:00 2001
|
From 65b3bf4a8d92ecb5f0ab4e89d20d8dd0a08d433a Mon Sep 17 00:00:00 2001
|
||||||
From: Ulrich Hecht <uli@suse.de>
|
From: Ulrich Hecht <uli@suse.de>
|
||||||
Date: Tue, 14 Apr 2009 16:18:44 +0200
|
Date: Tue, 14 Apr 2009 16:18:44 +0200
|
||||||
Subject: [PATCH] qemu-0.9.0.cvs-binfmt
|
Subject: [PATCH] qemu-0.9.0.cvs-binfmt
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From d0b55bb89eeaffae5f5d0563cf53801943fcefb7 Mon Sep 17 00:00:00 2001
|
From d2c9637b77ebbc03478f6d1a911bc01561161daa Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Tue, 14 Apr 2009 16:20:50 +0200
|
Date: Tue, 14 Apr 2009 16:20:50 +0200
|
||||||
Subject: [PATCH] qemu-cvs-alsa_bitfield
|
Subject: [PATCH] qemu-cvs-alsa_bitfield
|
||||||
@ -13,10 +13,10 @@ Signed-off-by: Ulrich Hecht <uli@suse.de>
|
|||||||
2 files changed, 24 insertions(+)
|
2 files changed, 24 insertions(+)
|
||||||
|
|
||||||
diff --git a/include/exec/user/thunk.h b/include/exec/user/thunk.h
|
diff --git a/include/exec/user/thunk.h b/include/exec/user/thunk.h
|
||||||
index 3b67462..f26c7f4 100644
|
index ad1d602..4e082a7 100644
|
||||||
--- a/include/exec/user/thunk.h
|
--- a/include/exec/user/thunk.h
|
||||||
+++ b/include/exec/user/thunk.h
|
+++ b/include/exec/user/thunk.h
|
||||||
@@ -38,6 +38,7 @@ typedef enum argtype {
|
@@ -37,6 +37,7 @@ typedef enum argtype {
|
||||||
TYPE_ARRAY,
|
TYPE_ARRAY,
|
||||||
TYPE_STRUCT,
|
TYPE_STRUCT,
|
||||||
TYPE_OLDDEVT,
|
TYPE_OLDDEVT,
|
||||||
@ -24,7 +24,7 @@ index 3b67462..f26c7f4 100644
|
|||||||
} argtype;
|
} argtype;
|
||||||
|
|
||||||
#define MK_PTR(type) TYPE_PTR, type
|
#define MK_PTR(type) TYPE_PTR, type
|
||||||
@@ -91,6 +92,7 @@ static inline int thunk_type_size(const argtype *type_ptr, int is_host)
|
@@ -90,6 +91,7 @@ static inline int thunk_type_size(const argtype *type_ptr, int is_host)
|
||||||
case TYPE_SHORT:
|
case TYPE_SHORT:
|
||||||
return 2;
|
return 2;
|
||||||
case TYPE_INT:
|
case TYPE_INT:
|
||||||
@ -32,7 +32,7 @@ index 3b67462..f26c7f4 100644
|
|||||||
return 4;
|
return 4;
|
||||||
case TYPE_LONGLONG:
|
case TYPE_LONGLONG:
|
||||||
case TYPE_ULONGLONG:
|
case TYPE_ULONGLONG:
|
||||||
@@ -153,6 +155,7 @@ static inline int thunk_type_align(const argtype *type_ptr, int is_host)
|
@@ -152,6 +154,7 @@ static inline int thunk_type_align(const argtype *type_ptr, int is_host)
|
||||||
case TYPE_SHORT:
|
case TYPE_SHORT:
|
||||||
return 2;
|
return 2;
|
||||||
case TYPE_INT:
|
case TYPE_INT:
|
||||||
@ -41,10 +41,10 @@ index 3b67462..f26c7f4 100644
|
|||||||
case TYPE_LONGLONG:
|
case TYPE_LONGLONG:
|
||||||
case TYPE_ULONGLONG:
|
case TYPE_ULONGLONG:
|
||||||
diff --git a/thunk.c b/thunk.c
|
diff --git a/thunk.c b/thunk.c
|
||||||
index f501fd7..b711860 100644
|
index f057d86..6db7874 100644
|
||||||
--- a/thunk.c
|
--- a/thunk.c
|
||||||
+++ b/thunk.c
|
+++ b/thunk.c
|
||||||
@@ -39,6 +39,7 @@ static inline const argtype *thunk_type_next(const argtype *type_ptr)
|
@@ -37,6 +37,7 @@ static inline const argtype *thunk_type_next(const argtype *type_ptr)
|
||||||
case TYPE_CHAR:
|
case TYPE_CHAR:
|
||||||
case TYPE_SHORT:
|
case TYPE_SHORT:
|
||||||
case TYPE_INT:
|
case TYPE_INT:
|
||||||
@ -52,7 +52,7 @@ index f501fd7..b711860 100644
|
|||||||
case TYPE_LONGLONG:
|
case TYPE_LONGLONG:
|
||||||
case TYPE_ULONGLONG:
|
case TYPE_ULONGLONG:
|
||||||
case TYPE_LONG:
|
case TYPE_LONG:
|
||||||
@@ -141,6 +142,26 @@ const argtype *thunk_convert(void *dst, const void *src,
|
@@ -139,6 +140,26 @@ const argtype *thunk_convert(void *dst, const void *src,
|
||||||
case TYPE_INT:
|
case TYPE_INT:
|
||||||
*(uint32_t *)dst = tswap32(*(uint32_t *)src);
|
*(uint32_t *)dst = tswap32(*(uint32_t *)src);
|
||||||
break;
|
break;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From a03418dfe9a1151a5863f84c71ea576d87136cef Mon Sep 17 00:00:00 2001
|
From 7315601fc9b07a4cbbf3126fb846eb6796b79f11 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Tue, 14 Apr 2009 16:23:27 +0200
|
Date: Tue, 14 Apr 2009 16:23:27 +0200
|
||||||
Subject: [PATCH] qemu-cvs-alsa_ioctl
|
Subject: [PATCH] qemu-cvs-alsa_ioctl
|
||||||
@ -2255,10 +2255,10 @@ index 0000000..e09a30d
|
|||||||
+ unsigned char *code;
|
+ unsigned char *code;
|
||||||
+};
|
+};
|
||||||
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
||||||
index f996acf..c2baa9e 100644
|
index 9e2b3c2..b090cdb 100644
|
||||||
--- a/linux-user/syscall_defs.h
|
--- a/linux-user/syscall_defs.h
|
||||||
+++ b/linux-user/syscall_defs.h
|
+++ b/linux-user/syscall_defs.h
|
||||||
@@ -2540,6 +2540,8 @@ struct target_ucred {
|
@@ -2545,6 +2545,8 @@ struct target_ucred {
|
||||||
uint32_t gid;
|
uint32_t gid;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 9578bb8be38338db9e59ca5085970e23e49df081 Mon Sep 17 00:00:00 2001
|
From 31795a01d7db34560e09b67723f66c9b56e4bfe0 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Tue, 14 Apr 2009 16:24:15 +0200
|
Date: Tue, 14 Apr 2009 16:24:15 +0200
|
||||||
Subject: [PATCH] qemu-cvs-alsa_mmap
|
Subject: [PATCH] qemu-cvs-alsa_mmap
|
||||||
@ -12,10 +12,10 @@ Signed-off-by: Ulrich Hecht <uli@suse.de>
|
|||||||
1 file changed, 14 insertions(+)
|
1 file changed, 14 insertions(+)
|
||||||
|
|
||||||
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
|
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
|
||||||
index 7b459d5..9f164de 100644
|
index 3519147..671889b 100644
|
||||||
--- a/linux-user/mmap.c
|
--- a/linux-user/mmap.c
|
||||||
+++ b/linux-user/mmap.c
|
+++ b/linux-user/mmap.c
|
||||||
@@ -363,6 +363,9 @@ abi_ulong mmap_find_vma(abi_ulong start, abi_ulong size)
|
@@ -358,6 +358,9 @@ abi_ulong mmap_find_vma(abi_ulong start, abi_ulong size)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -25,7 +25,7 @@ index 7b459d5..9f164de 100644
|
|||||||
/* NOTE: all the constants are the HOST ones */
|
/* NOTE: all the constants are the HOST ones */
|
||||||
abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
|
abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
|
||||||
int flags, int fd, abi_ulong offset)
|
int flags, int fd, abi_ulong offset)
|
||||||
@@ -397,6 +400,17 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
|
@@ -392,6 +395,17 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 41d4cd0e804058e7cb43184144c602ac94118ac5 Mon Sep 17 00:00:00 2001
|
From 6851a047d5ee3598e23add8661f6a72911048279 Mon Sep 17 00:00:00 2001
|
||||||
From: Ulrich Hecht <uli@suse.de>
|
From: Ulrich Hecht <uli@suse.de>
|
||||||
Date: Tue, 14 Apr 2009 16:25:41 +0200
|
Date: Tue, 14 Apr 2009 16:25:41 +0200
|
||||||
Subject: [PATCH] qemu-cvs-gettimeofday
|
Subject: [PATCH] qemu-cvs-gettimeofday
|
||||||
@ -9,10 +9,10 @@ No clue what this is for.
|
|||||||
1 file changed, 2 insertions(+)
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||||
index ce8eba3..7a6bd6c 100644
|
index fe0dbd6..b5e6598 100644
|
||||||
--- a/linux-user/syscall.c
|
--- a/linux-user/syscall.c
|
||||||
+++ b/linux-user/syscall.c
|
+++ b/linux-user/syscall.c
|
||||||
@@ -6870,6 +6870,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
@@ -7072,6 +7072,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
|
||||||
case TARGET_NR_gettimeofday:
|
case TARGET_NR_gettimeofday:
|
||||||
{
|
{
|
||||||
struct timeval tv;
|
struct timeval tv;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From a8de3056b883fc9a2dbade321fa56cd7053aba8e Mon Sep 17 00:00:00 2001
|
From eda771ddbebc65e250ea6ee55915b57f8a987a1d Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Tue, 14 Apr 2009 16:26:33 +0200
|
Date: Tue, 14 Apr 2009 16:26:33 +0200
|
||||||
Subject: [PATCH] qemu-cvs-ioctl_debug
|
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(-)
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||||
index 7a6bd6c..c744746 100644
|
index b5e6598..7a589cb 100644
|
||||||
--- a/linux-user/syscall.c
|
--- a/linux-user/syscall.c
|
||||||
+++ b/linux-user/syscall.c
|
+++ b/linux-user/syscall.c
|
||||||
@@ -3922,7 +3922,12 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
@@ -4022,7 +4022,12 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
||||||
ie = ioctl_entries;
|
ie = ioctl_entries;
|
||||||
for(;;) {
|
for(;;) {
|
||||||
if (ie->target_cmd == 0) {
|
if (ie->target_cmd == 0) {
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 93e7c43e8820bfcfa65fd4b2283fde1070056f55 Mon Sep 17 00:00:00 2001
|
From 2139ef68f00f2f273ab464aacf8108a857adea1d Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Tue, 14 Apr 2009 16:27:36 +0200
|
Date: Tue, 14 Apr 2009 16:27:36 +0200
|
||||||
Subject: [PATCH] qemu-cvs-ioctl_nodirection
|
Subject: [PATCH] qemu-cvs-ioctl_nodirection
|
||||||
@ -15,10 +15,10 @@ Signed-off-by: Ulrich Hecht <uli@suse.de>
|
|||||||
1 file changed, 6 insertions(+)
|
1 file changed, 6 insertions(+)
|
||||||
|
|
||||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||||
index c744746..6cdbd86 100644
|
index 7a589cb..1afd3b9 100644
|
||||||
--- a/linux-user/syscall.c
|
--- a/linux-user/syscall.c
|
||||||
+++ b/linux-user/syscall.c
|
+++ b/linux-user/syscall.c
|
||||||
@@ -3955,6 +3955,11 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
@@ -4055,6 +4055,11 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
||||||
arg_type++;
|
arg_type++;
|
||||||
target_size = thunk_type_size(arg_type, 0);
|
target_size = thunk_type_size(arg_type, 0);
|
||||||
switch(ie->access) {
|
switch(ie->access) {
|
||||||
@ -30,7 +30,7 @@ index c744746..6cdbd86 100644
|
|||||||
case IOC_R:
|
case IOC_R:
|
||||||
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
|
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
|
||||||
if (!is_error(ret)) {
|
if (!is_error(ret)) {
|
||||||
@@ -3973,6 +3978,7 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
@@ -4073,6 +4078,7 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
||||||
unlock_user(argptr, arg, 0);
|
unlock_user(argptr, arg, 0);
|
||||||
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
|
ret = get_errno(ioctl(fd, ie->host_cmd, buf_temp));
|
||||||
break;
|
break;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 0c87155ccca56143a74019bf10233837920a6467 Mon Sep 17 00:00:00 2001
|
From 32bb17da57ea63a355a777339b227b4da7f09825 Mon Sep 17 00:00:00 2001
|
||||||
From: Ulrich Hecht <uli@suse.de>
|
From: Ulrich Hecht <uli@suse.de>
|
||||||
Date: Tue, 14 Apr 2009 16:37:42 +0200
|
Date: Tue, 14 Apr 2009 16:37:42 +0200
|
||||||
Subject: [PATCH] block/vmdk: Support creation of SCSI VMDK images in qemu-img
|
Subject: [PATCH] block/vmdk: Support creation of SCSI VMDK images in qemu-img
|
||||||
@ -21,10 +21,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
|||||||
4 files changed, 21 insertions(+), 1 deletion(-)
|
4 files changed, 21 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/block.c b/block.c
|
diff --git a/block.c b/block.c
|
||||||
index 3a7324b..ae06afb 100644
|
index d36eb75..be962ec 100644
|
||||||
--- a/block.c
|
--- a/block.c
|
||||||
+++ b/block.c
|
+++ b/block.c
|
||||||
@@ -3682,6 +3682,9 @@ void bdrv_img_create(const char *filename, const char *fmt,
|
@@ -3581,6 +3581,9 @@ void bdrv_img_create(const char *filename, const char *fmt,
|
||||||
if (!quiet) {
|
if (!quiet) {
|
||||||
printf("Formatting '%s', fmt=%s ", filename, fmt);
|
printf("Formatting '%s', fmt=%s ", filename, fmt);
|
||||||
qemu_opts_print(opts, " ");
|
qemu_opts_print(opts, " ");
|
||||||
@ -35,10 +35,10 @@ index 3a7324b..ae06afb 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/block/vmdk.c b/block/vmdk.c
|
diff --git a/block/vmdk.c b/block/vmdk.c
|
||||||
index 6f819e4..9944b17 100644
|
index 45f9d3c..f5c68e0 100644
|
||||||
--- a/block/vmdk.c
|
--- a/block/vmdk.c
|
||||||
+++ b/block/vmdk.c
|
+++ b/block/vmdk.c
|
||||||
@@ -1852,9 +1852,12 @@ static int vmdk_create(const char *filename, QemuOpts *opts, Error **errp)
|
@@ -1885,9 +1885,12 @@ static int vmdk_create(const char *filename, QemuOpts *opts, Error **errp)
|
||||||
if (qemu_opt_get_bool_del(opts, BLOCK_OPT_ZEROED_GRAIN, false)) {
|
if (qemu_opt_get_bool_del(opts, BLOCK_OPT_ZEROED_GRAIN, false)) {
|
||||||
zeroed_grain = true;
|
zeroed_grain = true;
|
||||||
}
|
}
|
||||||
@ -52,7 +52,7 @@ index 6f819e4..9944b17 100644
|
|||||||
} else if (strcmp(adapter_type, "ide") &&
|
} else if (strcmp(adapter_type, "ide") &&
|
||||||
strcmp(adapter_type, "buslogic") &&
|
strcmp(adapter_type, "buslogic") &&
|
||||||
strcmp(adapter_type, "lsilogic") &&
|
strcmp(adapter_type, "lsilogic") &&
|
||||||
@@ -2270,6 +2273,11 @@ static QemuOptsList vmdk_create_opts = {
|
@@ -2310,6 +2313,11 @@ static QemuOptsList vmdk_create_opts = {
|
||||||
.help = "Enable efficient zero writes "
|
.help = "Enable efficient zero writes "
|
||||||
"using the zeroed-grain GTE feature"
|
"using the zeroed-grain GTE feature"
|
||||||
},
|
},
|
||||||
@ -65,7 +65,7 @@ index 6f819e4..9944b17 100644
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
diff --git a/include/block/block_int.h b/include/block/block_int.h
|
diff --git a/include/block/block_int.h b/include/block/block_int.h
|
||||||
index 4012e36..5dcdca5 100644
|
index 10d8759..7c0b99c 100644
|
||||||
--- a/include/block/block_int.h
|
--- a/include/block/block_int.h
|
||||||
+++ b/include/block/block_int.h
|
+++ b/include/block/block_int.h
|
||||||
@@ -40,10 +40,12 @@
|
@@ -40,10 +40,12 @@
|
||||||
@ -82,10 +82,10 @@ index 4012e36..5dcdca5 100644
|
|||||||
#define BLOCK_OPT_BACKING_FMT "backing_fmt"
|
#define BLOCK_OPT_BACKING_FMT "backing_fmt"
|
||||||
#define BLOCK_OPT_CLUSTER_SIZE "cluster_size"
|
#define BLOCK_OPT_CLUSTER_SIZE "cluster_size"
|
||||||
diff --git a/qemu-img.c b/qemu-img.c
|
diff --git a/qemu-img.c b/qemu-img.c
|
||||||
index 033011c..02e2dab 100644
|
index 06264d9..6ab8eaf 100644
|
||||||
--- a/qemu-img.c
|
--- a/qemu-img.c
|
||||||
+++ b/qemu-img.c
|
+++ b/qemu-img.c
|
||||||
@@ -1805,6 +1805,13 @@ static int img_convert(int argc, char **argv)
|
@@ -2033,6 +2033,13 @@ static int img_convert(int argc, char **argv)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From c5622c7c69f393bc1f04f5855fa5ef79d4a2083d Mon Sep 17 00:00:00 2001
|
From 825a67827cc7546b538de736ccb349926803eb0a Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Fri, 30 Sep 2011 19:40:36 +0200
|
Date: Fri, 30 Sep 2011 19:40:36 +0200
|
||||||
Subject: [PATCH] linux-user: add binfmt wrapper for argv[0] handling
|
Subject: [PATCH] linux-user: add binfmt wrapper for argv[0] handling
|
||||||
@ -37,7 +37,7 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
|||||||
create mode 100644 linux-user/binfmt.c
|
create mode 100644 linux-user/binfmt.c
|
||||||
|
|
||||||
diff --git a/Makefile.target b/Makefile.target
|
diff --git a/Makefile.target b/Makefile.target
|
||||||
index 962d004..46f5178 100644
|
index 34ddb7e..cba1078 100644
|
||||||
--- a/Makefile.target
|
--- a/Makefile.target
|
||||||
+++ b/Makefile.target
|
+++ b/Makefile.target
|
||||||
@@ -36,6 +36,10 @@ endif
|
@@ -36,6 +36,10 @@ endif
|
||||||
@ -72,7 +72,7 @@ index 962d004..46f5178 100644
|
|||||||
all-obj-y := $(obj-y)
|
all-obj-y := $(obj-y)
|
||||||
|
|
||||||
target-obj-y :=
|
target-obj-y :=
|
||||||
@@ -196,6 +206,9 @@ ifdef CONFIG_DARWIN
|
@@ -198,6 +208,9 @@ ifdef CONFIG_DARWIN
|
||||||
$(call quiet-command,SetFile -a C $@," SETFILE $(TARGET_DIR)$@")
|
$(call quiet-command,SetFile -a C $@," SETFILE $(TARGET_DIR)$@")
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 4b4b134b43b0efae453be44dafe1459218ef176e Mon Sep 17 00:00:00 2001
|
From bf5f6764c515fa8bf60937ef3db0a550c4c622ba Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Fri, 6 Jan 2012 01:05:55 +0100
|
Date: Fri, 6 Jan 2012 01:05:55 +0100
|
||||||
Subject: [PATCH] PPC: KVM: Disable mmu notifier check
|
Subject: [PATCH] PPC: KVM: Disable mmu notifier check
|
||||||
@ -13,20 +13,20 @@ KVM guests work there, even if possibly racy in some odd circumstances.
|
|||||||
1 file changed, 2 insertions(+)
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
diff --git a/exec.c b/exec.c
|
diff --git a/exec.c b/exec.c
|
||||||
index 0bf0a6e..79c3983 100644
|
index f46e596..fc2073b 100644
|
||||||
--- a/exec.c
|
--- a/exec.c
|
||||||
+++ b/exec.c
|
+++ b/exec.c
|
||||||
@@ -1229,11 +1229,13 @@ static void *file_ram_alloc(RAMBlock *block,
|
@@ -1242,11 +1242,13 @@ static void *file_ram_alloc(RAMBlock *block,
|
||||||
goto error;
|
int fd = -1;
|
||||||
}
|
int64_t page_size;
|
||||||
|
|
||||||
+#ifndef TARGET_PPC
|
+#ifndef TARGET_PPC
|
||||||
if (kvm_enabled() && !kvm_has_sync_mmu()) {
|
if (kvm_enabled() && !kvm_has_sync_mmu()) {
|
||||||
error_setg(errp,
|
error_setg(errp,
|
||||||
"host lacks kvm mmu notifiers, -mem-path unsupported");
|
"host lacks kvm mmu notifiers, -mem-path unsupported");
|
||||||
goto error;
|
return NULL;
|
||||||
}
|
}
|
||||||
+#endif
|
+#endif
|
||||||
|
|
||||||
if (!stat(path, &st) && S_ISDIR(st.st_mode)) {
|
for (;;) {
|
||||||
/* Make name safe to use with mkstemp by replacing '/' with '_'. */
|
fd = open(path, O_RDWR);
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From cce489197692907986c6fec5c089daf57d46b58b Mon Sep 17 00:00:00 2001
|
From ea757d5a85a7e218d34f95f21923dfa979d52fa2 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Fri, 13 Jan 2012 17:05:41 +0100
|
Date: Fri, 13 Jan 2012 17:05:41 +0100
|
||||||
Subject: [PATCH] linux-user: fix segfault deadlock
|
Subject: [PATCH] linux-user: fix segfault deadlock
|
||||||
@ -26,10 +26,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
|||||||
1 file changed, 4 insertions(+)
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
diff --git a/user-exec.c b/user-exec.c
|
diff --git a/user-exec.c b/user-exec.c
|
||||||
index 8ad89a4..02c5c3b 100644
|
index d8d597b..f8b7752 100644
|
||||||
--- a/user-exec.c
|
--- a/user-exec.c
|
||||||
+++ b/user-exec.c
|
+++ b/user-exec.c
|
||||||
@@ -95,6 +95,10 @@ static inline int handle_cpu_signal(uintptr_t pc, unsigned long address,
|
@@ -94,6 +94,10 @@ static inline int handle_cpu_signal(uintptr_t pc, unsigned long address,
|
||||||
printf("qemu: SIGSEGV pc=0x%08lx address=%08lx w=%d oldset=0x%08lx\n",
|
printf("qemu: SIGSEGV pc=0x%08lx address=%08lx w=%d oldset=0x%08lx\n",
|
||||||
pc, address, is_write, *(unsigned long *)old_set);
|
pc, address, is_write, *(unsigned long *)old_set);
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 8cb8d78c1f37f758d87e8afa64dd6884f8f4af65 Mon Sep 17 00:00:00 2001
|
From 113df7dc50d8b973347bf1b1c38437b455f3d431 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Thu, 2 Feb 2012 18:02:33 +0100
|
Date: Thu, 2 Feb 2012 18:02:33 +0100
|
||||||
Subject: [PATCH] linux-user: binfmt: support host binaries
|
Subject: [PATCH] linux-user: binfmt: support host binaries
|
||||||
@ -12,7 +12,7 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
|
|||||||
1 file changed, 26 insertions(+)
|
1 file changed, 26 insertions(+)
|
||||||
|
|
||||||
diff --git a/linux-user/binfmt.c b/linux-user/binfmt.c
|
diff --git a/linux-user/binfmt.c b/linux-user/binfmt.c
|
||||||
index cd1f513..c755edc 100644
|
index cd1f513..458f136 100644
|
||||||
--- a/linux-user/binfmt.c
|
--- a/linux-user/binfmt.c
|
||||||
+++ b/linux-user/binfmt.c
|
+++ b/linux-user/binfmt.c
|
||||||
@@ -5,6 +5,9 @@
|
@@ -5,6 +5,9 @@
|
||||||
@ -41,7 +41,7 @@ index cd1f513..c755edc 100644
|
|||||||
+ }
|
+ }
|
||||||
+ guestarch++;
|
+ guestarch++;
|
||||||
+ r = asprintf(&hostbin, "/emul/" ARCH_NAME "-for-%s/%s", guestarch, argv[1]);
|
+ r = asprintf(&hostbin, "/emul/" ARCH_NAME "-for-%s/%s", guestarch, argv[1]);
|
||||||
+ if (!access(hostbin, X_OK) && (r > 0)) {
|
+ if ((r > 0) && !access(hostbin, X_OK)) {
|
||||||
+ /*
|
+ /*
|
||||||
+ * We found a host binary replacement for the non-host binary. Let's
|
+ * We found a host binary replacement for the non-host binary. Let's
|
||||||
+ * use that instead!
|
+ * use that instead!
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From c133a037638e8831f61352311a5acbd6241f184b Mon Sep 17 00:00:00 2001
|
From 492281e8992a45e83c58f65dc977415b547e5898 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Tue, 12 Jun 2012 04:41:10 +0200
|
Date: Tue, 12 Jun 2012 04:41:10 +0200
|
||||||
Subject: [PATCH] linux-user: Ignore broken loop ioctl
|
Subject: [PATCH] linux-user: Ignore broken loop ioctl
|
||||||
@ -46,10 +46,10 @@ index 8974caa..810ae61 100644
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||||
index 6cdbd86..55dfcf9 100644
|
index 1afd3b9..32f7290 100644
|
||||||
--- a/linux-user/syscall.c
|
--- a/linux-user/syscall.c
|
||||||
+++ b/linux-user/syscall.c
|
+++ b/linux-user/syscall.c
|
||||||
@@ -3899,6 +3899,13 @@ static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp,
|
@@ -3999,6 +3999,13 @@ static abi_long do_ioctl_kdsigaccept(const IOCTLEntry *ie, uint8_t *buf_temp,
|
||||||
return get_errno(ioctl(fd, ie->host_cmd, sig));
|
return get_errno(ioctl(fd, ie->host_cmd, sig));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -64,10 +64,10 @@ index 6cdbd86..55dfcf9 100644
|
|||||||
#define IOCTL(cmd, access, ...) \
|
#define IOCTL(cmd, access, ...) \
|
||||||
{ TARGET_ ## cmd, cmd, #cmd, access, 0, { __VA_ARGS__ } },
|
{ TARGET_ ## cmd, cmd, #cmd, access, 0, { __VA_ARGS__ } },
|
||||||
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
||||||
index c2baa9e..4f966b4 100644
|
index b090cdb..f820b0b 100644
|
||||||
--- a/linux-user/syscall_defs.h
|
--- a/linux-user/syscall_defs.h
|
||||||
+++ b/linux-user/syscall_defs.h
|
+++ b/linux-user/syscall_defs.h
|
||||||
@@ -1085,6 +1085,7 @@ struct target_pollfd {
|
@@ -1087,6 +1087,7 @@ struct target_pollfd {
|
||||||
#define TARGET_LOOP_SET_STATUS64 0x4C04
|
#define TARGET_LOOP_SET_STATUS64 0x4C04
|
||||||
#define TARGET_LOOP_GET_STATUS64 0x4C05
|
#define TARGET_LOOP_GET_STATUS64 0x4C05
|
||||||
#define TARGET_LOOP_CHANGE_FD 0x4C06
|
#define TARGET_LOOP_CHANGE_FD 0x4C06
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 75fce0091f944eeda3edc005be834f26351cd61f Mon Sep 17 00:00:00 2001
|
From 35d1d48a4dd871b0c77c785f7ccb6e8c5e7f6de8 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Thu, 5 Jul 2012 17:31:39 +0200
|
Date: Thu, 5 Jul 2012 17:31:39 +0200
|
||||||
Subject: [PATCH] linux-user: lock tcg
|
Subject: [PATCH] linux-user: lock tcg
|
||||||
@ -21,10 +21,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
|||||||
3 files changed, 39 insertions(+), 1 deletion(-)
|
3 files changed, 39 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
|
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
|
||||||
index 9f164de..691e63a 100644
|
index 671889b..b85905c 100644
|
||||||
--- a/linux-user/mmap.c
|
--- a/linux-user/mmap.c
|
||||||
+++ b/linux-user/mmap.c
|
+++ b/linux-user/mmap.c
|
||||||
@@ -30,6 +30,7 @@
|
@@ -23,6 +23,7 @@
|
||||||
|
|
||||||
#include "qemu.h"
|
#include "qemu.h"
|
||||||
#include "qemu-common.h"
|
#include "qemu-common.h"
|
||||||
@ -32,7 +32,7 @@ index 9f164de..691e63a 100644
|
|||||||
#include "translate-all.h"
|
#include "translate-all.h"
|
||||||
|
|
||||||
//#define DEBUG_MMAP
|
//#define DEBUG_MMAP
|
||||||
@@ -41,6 +42,7 @@ void mmap_lock(void)
|
@@ -34,6 +35,7 @@ void mmap_lock(void)
|
||||||
{
|
{
|
||||||
if (mmap_lock_count++ == 0) {
|
if (mmap_lock_count++ == 0) {
|
||||||
pthread_mutex_lock(&mmap_mutex);
|
pthread_mutex_lock(&mmap_mutex);
|
||||||
@ -40,7 +40,7 @@ index 9f164de..691e63a 100644
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -48,6 +50,7 @@ void mmap_unlock(void)
|
@@ -41,6 +43,7 @@ void mmap_unlock(void)
|
||||||
{
|
{
|
||||||
if (--mmap_lock_count == 0) {
|
if (--mmap_lock_count == 0) {
|
||||||
pthread_mutex_unlock(&mmap_mutex);
|
pthread_mutex_unlock(&mmap_mutex);
|
||||||
@ -49,11 +49,11 @@ index 9f164de..691e63a 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/tcg/tcg.c b/tcg/tcg.c
|
diff --git a/tcg/tcg.c b/tcg/tcg.c
|
||||||
index a163541..da174b9 100644
|
index b46bf1a..aed34d1 100644
|
||||||
--- a/tcg/tcg.c
|
--- a/tcg/tcg.c
|
||||||
+++ b/tcg/tcg.c
|
+++ b/tcg/tcg.c
|
||||||
@@ -39,6 +39,8 @@
|
@@ -39,6 +39,8 @@
|
||||||
#include "qemu-common.h"
|
#include "qemu/cutils.h"
|
||||||
#include "qemu/host-utils.h"
|
#include "qemu/host-utils.h"
|
||||||
#include "qemu/timer.h"
|
#include "qemu/timer.h"
|
||||||
+#include "config-host.h"
|
+#include "config-host.h"
|
||||||
@ -61,7 +61,7 @@ index a163541..da174b9 100644
|
|||||||
|
|
||||||
/* Note: the long term plan is to reduce the dependencies 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
|
CPU definitions. Currently they are used for qemu_ld/st
|
||||||
@@ -117,6 +119,29 @@ static void tcg_out_tb_finalize(TCGContext *s);
|
@@ -119,6 +121,29 @@ static bool tcg_out_tb_finalize(TCGContext *s);
|
||||||
static TCGRegSet tcg_target_available_regs[2];
|
static TCGRegSet tcg_target_available_regs[2];
|
||||||
static TCGRegSet tcg_target_call_clobber_regs;
|
static TCGRegSet tcg_target_call_clobber_regs;
|
||||||
|
|
||||||
@ -91,7 +91,7 @@ index a163541..da174b9 100644
|
|||||||
#if TCG_TARGET_INSN_UNIT_SIZE == 1
|
#if TCG_TARGET_INSN_UNIT_SIZE == 1
|
||||||
static __attribute__((unused)) inline void tcg_out8(TCGContext *s, uint8_t v)
|
static __attribute__((unused)) inline void tcg_out8(TCGContext *s, uint8_t v)
|
||||||
{
|
{
|
||||||
@@ -327,7 +352,8 @@ void tcg_context_init(TCGContext *s)
|
@@ -331,7 +356,8 @@ void tcg_context_init(TCGContext *s)
|
||||||
|
|
||||||
memset(s, 0, sizeof(*s));
|
memset(s, 0, sizeof(*s));
|
||||||
s->nb_globals = 0;
|
s->nb_globals = 0;
|
||||||
@ -101,7 +101,7 @@ index a163541..da174b9 100644
|
|||||||
/* Count total number of arguments and allocate the corresponding
|
/* Count total number of arguments and allocate the corresponding
|
||||||
space */
|
space */
|
||||||
total_args = 0;
|
total_args = 0;
|
||||||
@@ -2345,6 +2371,7 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
|
@@ -2358,6 +2384,7 @@ int tcg_gen_code(TCGContext *s, TranslationBlock *tb)
|
||||||
qemu_log("\n");
|
qemu_log("\n");
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -109,7 +109,7 @@ index a163541..da174b9 100644
|
|||||||
|
|
||||||
#ifdef CONFIG_PROFILER
|
#ifdef CONFIG_PROFILER
|
||||||
s->opt_time -= profile_getclock();
|
s->opt_time -= profile_getclock();
|
||||||
@@ -2448,6 +2475,7 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
|
@@ -2462,6 +2489,7 @@ int tcg_gen_code(TCGContext *s, TranslationBlock *tb)
|
||||||
the buffer completely. Thus we can test for overflow after
|
the buffer completely. Thus we can test for overflow after
|
||||||
generating code without having to check during generation. */
|
generating code without having to check during generation. */
|
||||||
if (unlikely((void *)s->code_ptr > s->code_gen_highwater)) {
|
if (unlikely((void *)s->code_ptr > s->code_gen_highwater)) {
|
||||||
@ -117,7 +117,7 @@ index a163541..da174b9 100644
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -2459,6 +2487,7 @@ int tcg_gen_code(TCGContext *s, tcg_insn_unit *gen_code_buf)
|
@@ -2475,6 +2503,7 @@ int tcg_gen_code(TCGContext *s, TranslationBlock *tb)
|
||||||
|
|
||||||
/* flush instruction cache */
|
/* flush instruction cache */
|
||||||
flush_icache_range((uintptr_t)s->code_buf, (uintptr_t)s->code_ptr);
|
flush_icache_range((uintptr_t)s->code_buf, (uintptr_t)s->code_ptr);
|
||||||
@ -126,7 +126,7 @@ index a163541..da174b9 100644
|
|||||||
return tcg_current_code_size(s);
|
return tcg_current_code_size(s);
|
||||||
}
|
}
|
||||||
diff --git a/tcg/tcg.h b/tcg/tcg.h
|
diff --git a/tcg/tcg.h b/tcg/tcg.h
|
||||||
index a696922..da22788 100644
|
index 40c8fbe..6b826af2 100644
|
||||||
--- a/tcg/tcg.h
|
--- a/tcg/tcg.h
|
||||||
+++ b/tcg/tcg.h
|
+++ b/tcg/tcg.h
|
||||||
@@ -27,6 +27,7 @@
|
@@ -27,6 +27,7 @@
|
||||||
@ -137,7 +137,7 @@ index a696922..da22788 100644
|
|||||||
#include "tcg-target.h"
|
#include "tcg-target.h"
|
||||||
|
|
||||||
#define CPU_TEMP_BUF_NLONGS 128
|
#define CPU_TEMP_BUF_NLONGS 128
|
||||||
@@ -581,6 +582,8 @@ struct TCGContext {
|
@@ -591,6 +592,8 @@ struct TCGContext {
|
||||||
|
|
||||||
uint16_t gen_insn_end_off[TCG_MAX_INSNS];
|
uint16_t gen_insn_end_off[TCG_MAX_INSNS];
|
||||||
target_ulong gen_insn_data[TCG_MAX_INSNS][TARGET_INSN_START_WORDS];
|
target_ulong gen_insn_data[TCG_MAX_INSNS][TARGET_INSN_START_WORDS];
|
||||||
@ -146,7 +146,7 @@ index a696922..da22788 100644
|
|||||||
};
|
};
|
||||||
|
|
||||||
extern TCGContext tcg_ctx;
|
extern TCGContext tcg_ctx;
|
||||||
@@ -771,6 +774,9 @@ void tcg_gen_callN(TCGContext *s, void *func,
|
@@ -798,6 +801,9 @@ void tcg_gen_callN(TCGContext *s, void *func,
|
||||||
void tcg_op_remove(TCGContext *s, TCGOp *op);
|
void tcg_op_remove(TCGContext *s, TCGOp *op);
|
||||||
void tcg_optimize(TCGContext *s);
|
void tcg_optimize(TCGContext *s);
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From e5315d304cfd3d5398576a5c6f3fed541b775bc8 Mon Sep 17 00:00:00 2001
|
From 259ab3bbe5c7cb51258ab1a4f7d1e1a8bbd4678e Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Tue, 10 Jul 2012 20:40:55 +0200
|
Date: Tue, 10 Jul 2012 20:40:55 +0200
|
||||||
Subject: [PATCH] linux-user: Run multi-threaded code on a single core
|
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(+)
|
1 file changed, 9 insertions(+)
|
||||||
|
|
||||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||||
index 55dfcf9..aa21cb6 100644
|
index 32f7290..780f760 100644
|
||||||
--- a/linux-user/syscall.c
|
--- a/linux-user/syscall.c
|
||||||
+++ b/linux-user/syscall.c
|
+++ b/linux-user/syscall.c
|
||||||
@@ -4604,6 +4604,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
|
@@ -4704,6 +4704,15 @@ static int do_fork(CPUArchState *env, unsigned int flags, abi_ulong newsp,
|
||||||
if (nptl_flags & CLONE_SETTLS)
|
if (nptl_flags & CLONE_SETTLS)
|
||||||
cpu_set_tls (new_env, newtls);
|
cpu_set_tls (new_env, newtls);
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 0ca59d2290fa0a06cf51a159549461ab0b71bf5e Mon Sep 17 00:00:00 2001
|
From 88a56d7effef51c4f98fa0be1dd0f98ffe59c42f Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Wed, 11 Jul 2012 16:47:42 +0200
|
Date: Wed, 11 Jul 2012 16:47:42 +0200
|
||||||
Subject: [PATCH] linux-user: lock tb flushing too
|
Subject: [PATCH] linux-user: lock tb flushing too
|
||||||
@ -15,10 +15,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
|||||||
1 file changed, 18 insertions(+), 2 deletions(-)
|
1 file changed, 18 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/translate-all.c b/translate-all.c
|
diff --git a/translate-all.c b/translate-all.c
|
||||||
index 042a857..8d0d1a6 100644
|
index b4df1ec..747ebd0 100644
|
||||||
--- a/translate-all.c
|
--- a/translate-all.c
|
||||||
+++ b/translate-all.c
|
+++ b/translate-all.c
|
||||||
@@ -767,17 +767,21 @@ static TranslationBlock *tb_alloc(target_ulong pc)
|
@@ -761,17 +761,21 @@ static TranslationBlock *tb_alloc(target_ulong pc)
|
||||||
{
|
{
|
||||||
TranslationBlock *tb;
|
TranslationBlock *tb;
|
||||||
|
|
||||||
@ -40,7 +40,7 @@ index 042a857..8d0d1a6 100644
|
|||||||
/* In practice this is mostly used for single use temporary TB
|
/* In practice this is mostly used for single use temporary TB
|
||||||
Ignore the hard cases and just back up if this TB happens to
|
Ignore the hard cases and just back up if this TB happens to
|
||||||
be the last one generated. */
|
be the last one generated. */
|
||||||
@@ -786,6 +790,7 @@ void tb_free(TranslationBlock *tb)
|
@@ -780,6 +784,7 @@ void tb_free(TranslationBlock *tb)
|
||||||
tcg_ctx.code_gen_ptr = tb->tc_ptr;
|
tcg_ctx.code_gen_ptr = tb->tc_ptr;
|
||||||
tcg_ctx.tb_ctx.nb_tbs--;
|
tcg_ctx.tb_ctx.nb_tbs--;
|
||||||
}
|
}
|
||||||
@ -48,7 +48,7 @@ index 042a857..8d0d1a6 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
static inline void invalidate_page_bitmap(PageDesc *p)
|
static inline void invalidate_page_bitmap(PageDesc *p)
|
||||||
@@ -839,6 +844,7 @@ void tb_flush(CPUState *cpu)
|
@@ -833,6 +838,7 @@ void tb_flush(CPUState *cpu)
|
||||||
((unsigned long)(tcg_ctx.code_gen_ptr - tcg_ctx.code_gen_buffer)) /
|
((unsigned long)(tcg_ctx.code_gen_ptr - tcg_ctx.code_gen_buffer)) /
|
||||||
tcg_ctx.tb_ctx.nb_tbs : 0);
|
tcg_ctx.tb_ctx.nb_tbs : 0);
|
||||||
#endif
|
#endif
|
||||||
@ -56,7 +56,7 @@ index 042a857..8d0d1a6 100644
|
|||||||
if ((unsigned long)(tcg_ctx.code_gen_ptr - tcg_ctx.code_gen_buffer)
|
if ((unsigned long)(tcg_ctx.code_gen_ptr - tcg_ctx.code_gen_buffer)
|
||||||
> tcg_ctx.code_gen_buffer_size) {
|
> tcg_ctx.code_gen_buffer_size) {
|
||||||
cpu_abort(cpu, "Internal error: code buffer overflow\n");
|
cpu_abort(cpu, "Internal error: code buffer overflow\n");
|
||||||
@@ -856,6 +862,7 @@ void tb_flush(CPUState *cpu)
|
@@ -850,6 +856,7 @@ void tb_flush(CPUState *cpu)
|
||||||
/* XXX: flush processor icache at this point if cache flush is
|
/* XXX: flush processor icache at this point if cache flush is
|
||||||
expensive */
|
expensive */
|
||||||
tcg_ctx.tb_ctx.tb_flush_count++;
|
tcg_ctx.tb_ctx.tb_flush_count++;
|
||||||
@ -64,7 +64,7 @@ index 042a857..8d0d1a6 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef DEBUG_TB_CHECK
|
#ifdef DEBUG_TB_CHECK
|
||||||
@@ -1212,8 +1219,10 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
|
@@ -1207,8 +1214,10 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
|
||||||
int current_flags = 0;
|
int current_flags = 0;
|
||||||
#endif /* TARGET_HAS_PRECISE_SMC */
|
#endif /* TARGET_HAS_PRECISE_SMC */
|
||||||
|
|
||||||
@ -75,7 +75,7 @@ index 042a857..8d0d1a6 100644
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#if defined(TARGET_HAS_PRECISE_SMC)
|
#if defined(TARGET_HAS_PRECISE_SMC)
|
||||||
@@ -1298,6 +1307,7 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
|
@@ -1293,6 +1302,7 @@ void tb_invalidate_phys_page_range(tb_page_addr_t start, tb_page_addr_t end,
|
||||||
cpu_resume_from_signal(cpu, NULL);
|
cpu_resume_from_signal(cpu, NULL);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -83,7 +83,7 @@ index 042a857..8d0d1a6 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* len must be <= 8 and start must be a multiple of len */
|
/* len must be <= 8 and start must be a multiple of len */
|
||||||
@@ -1515,13 +1525,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
@@ -1510,13 +1520,16 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
||||||
{
|
{
|
||||||
int m_min, m_max, m;
|
int m_min, m_max, m;
|
||||||
uintptr_t v;
|
uintptr_t v;
|
||||||
@ -101,7 +101,7 @@ index 042a857..8d0d1a6 100644
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
/* binary search (cf Knuth) */
|
/* binary search (cf Knuth) */
|
||||||
@@ -1532,6 +1545,7 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
@@ -1527,6 +1540,7 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
||||||
tb = &tcg_ctx.tb_ctx.tbs[m];
|
tb = &tcg_ctx.tb_ctx.tbs[m];
|
||||||
v = (uintptr_t)tb->tc_ptr;
|
v = (uintptr_t)tb->tc_ptr;
|
||||||
if (v == tc_ptr) {
|
if (v == tc_ptr) {
|
||||||
@ -109,7 +109,7 @@ index 042a857..8d0d1a6 100644
|
|||||||
return tb;
|
return tb;
|
||||||
} else if (tc_ptr < v) {
|
} else if (tc_ptr < v) {
|
||||||
m_max = m - 1;
|
m_max = m - 1;
|
||||||
@@ -1539,7 +1553,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
@@ -1534,7 +1548,9 @@ static TranslationBlock *tb_find_pc(uintptr_t tc_ptr)
|
||||||
m_min = m + 1;
|
m_min = m + 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 6c8981399b1933011bb178f91d0bf91907d0ab8a Mon Sep 17 00:00:00 2001
|
From 5f725ce31e36fe7fdef6cfb2b10418513225acbb Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Mon, 23 Jul 2012 10:24:14 +0200
|
Date: Mon, 23 Jul 2012 10:24:14 +0200
|
||||||
Subject: [PATCH] linux-user: Fake /proc/cpuinfo
|
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(+)
|
1 file changed, 20 insertions(+)
|
||||||
|
|
||||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||||
index aa21cb6..8995968 100644
|
index 780f760..7350980 100644
|
||||||
--- a/linux-user/syscall.c
|
--- a/linux-user/syscall.c
|
||||||
+++ b/linux-user/syscall.c
|
+++ b/linux-user/syscall.c
|
||||||
@@ -5513,6 +5513,25 @@ static int open_self_stat(void *cpu_env, int fd)
|
@@ -5697,6 +5697,25 @@ static int open_self_stat(void *cpu_env, int fd)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -51,7 +51,7 @@ index aa21cb6..8995968 100644
|
|||||||
static int open_self_auxv(void *cpu_env, int fd)
|
static int open_self_auxv(void *cpu_env, int fd)
|
||||||
{
|
{
|
||||||
CPUState *cpu = ENV_GET_CPU((CPUArchState *)cpu_env);
|
CPUState *cpu = ENV_GET_CPU((CPUArchState *)cpu_env);
|
||||||
@@ -5627,6 +5646,7 @@ static int do_openat(void *cpu_env, int dirfd, const char *pathname, int flags,
|
@@ -5811,6 +5830,7 @@ static int do_openat(void *cpu_env, int dirfd, const char *pathname, int flags,
|
||||||
#if defined(HOST_WORDS_BIGENDIAN) != defined(TARGET_WORDS_BIGENDIAN)
|
#if defined(HOST_WORDS_BIGENDIAN) != defined(TARGET_WORDS_BIGENDIAN)
|
||||||
{ "/proc/net/route", open_net_route, is_proc },
|
{ "/proc/net/route", open_net_route, is_proc },
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 58cee188a6c2a532d7a34494393969b364d6d3e8 Mon Sep 17 00:00:00 2001
|
From e5d9e56c734de021526273921f9ce7ba5b8a8b0a Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Mon, 20 Aug 2012 00:02:52 +0200
|
Date: Mon, 20 Aug 2012 00:02:52 +0200
|
||||||
Subject: [PATCH] linux-user: implement FS_IOC_GETFLAGS ioctl
|
Subject: [PATCH] linux-user: implement FS_IOC_GETFLAGS ioctl
|
||||||
@ -28,10 +28,10 @@ index c180faf..8650a70 100644
|
|||||||
IOCTL(SIOCATMARK, 0, TYPE_NULL)
|
IOCTL(SIOCATMARK, 0, TYPE_NULL)
|
||||||
IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(TYPE_INT))
|
IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(TYPE_INT))
|
||||||
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
||||||
index 4f966b4..817defd 100644
|
index f820b0b..5152e89 100644
|
||||||
--- a/linux-user/syscall_defs.h
|
--- a/linux-user/syscall_defs.h
|
||||||
+++ b/linux-user/syscall_defs.h
|
+++ b/linux-user/syscall_defs.h
|
||||||
@@ -2455,6 +2455,8 @@ struct target_f_owner_ex {
|
@@ -2457,6 +2457,8 @@ struct target_f_owner_ex {
|
||||||
#define TARGET_MTIOCGET TARGET_IOR('m', 2, struct mtget)
|
#define TARGET_MTIOCGET TARGET_IOR('m', 2, struct mtget)
|
||||||
#define TARGET_MTIOCPOS TARGET_IOR('m', 3, struct mtpos)
|
#define TARGET_MTIOCPOS TARGET_IOR('m', 3, struct mtpos)
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From c0a3dcdbf263dc193d4337056c3f3a157f8b7d33 Mon Sep 17 00:00:00 2001
|
From cf06139ea39a52419e4a5c51b89b33a3d0f2036d Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Mon, 20 Aug 2012 00:07:13 +0200
|
Date: Mon, 20 Aug 2012 00:07:13 +0200
|
||||||
Subject: [PATCH] linux-user: implement FS_IOC_SETFLAGS ioctl
|
Subject: [PATCH] linux-user: implement FS_IOC_SETFLAGS ioctl
|
||||||
@ -28,10 +28,10 @@ index 8650a70..f9f7c83 100644
|
|||||||
IOCTL(SIOCATMARK, 0, TYPE_NULL)
|
IOCTL(SIOCATMARK, 0, TYPE_NULL)
|
||||||
IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(TYPE_INT))
|
IOCTL(SIOCGIFNAME, IOC_RW, MK_PTR(TYPE_INT))
|
||||||
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
||||||
index 817defd..367eac1 100644
|
index 5152e89..77be181 100644
|
||||||
--- a/linux-user/syscall_defs.h
|
--- a/linux-user/syscall_defs.h
|
||||||
+++ b/linux-user/syscall_defs.h
|
+++ b/linux-user/syscall_defs.h
|
||||||
@@ -2456,6 +2456,7 @@ struct target_f_owner_ex {
|
@@ -2458,6 +2458,7 @@ struct target_f_owner_ex {
|
||||||
#define TARGET_MTIOCPOS TARGET_IOR('m', 3, struct mtpos)
|
#define TARGET_MTIOCPOS TARGET_IOR('m', 3, struct mtpos)
|
||||||
|
|
||||||
#define TARGET_FS_IOC_GETFLAGS TARGET_IORU('f', 1)
|
#define TARGET_FS_IOC_GETFLAGS TARGET_IORU('f', 1)
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 588f5e97ffbb3e072053fc5f39eb0411663800c6 Mon Sep 17 00:00:00 2001
|
From 6b90b44583771ab6822240baf3e1d3830490cbd2 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Tue, 21 Aug 2012 14:20:40 +0200
|
Date: Tue, 21 Aug 2012 14:20:40 +0200
|
||||||
Subject: [PATCH] linux-user: XXX disable fiemap
|
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(+)
|
1 file changed, 5 insertions(+)
|
||||||
|
|
||||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||||
index 8995968..f7e57a6 100644
|
index 7350980..90b1698 100644
|
||||||
--- a/linux-user/syscall.c
|
--- a/linux-user/syscall.c
|
||||||
+++ b/linux-user/syscall.c
|
+++ b/linux-user/syscall.c
|
||||||
@@ -3394,6 +3394,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
|
@@ -3494,6 +3494,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp,
|
||||||
uint32_t outbufsz;
|
uint32_t outbufsz;
|
||||||
int free_fm = 0;
|
int free_fm = 0;
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 0f901ac5dba327c1c988bf7eb7b30bf002446bd9 Mon Sep 17 00:00:00 2001
|
From 12cbdd512787707b791787b93f5c5af677d9b571 Mon Sep 17 00:00:00 2001
|
||||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||||
Date: Wed, 29 Aug 2012 18:42:56 +0200
|
Date: Wed, 29 Aug 2012 18:42:56 +0200
|
||||||
Subject: [PATCH] slirp: -nooutgoing
|
Subject: [PATCH] slirp: -nooutgoing
|
||||||
@ -7,15 +7,15 @@ TBD (from SUSE Studio team)
|
|||||||
---
|
---
|
||||||
qemu-options.hx | 10 ++++++++++
|
qemu-options.hx | 10 ++++++++++
|
||||||
slirp/socket.c | 8 ++++++++
|
slirp/socket.c | 8 ++++++++
|
||||||
slirp/tcp_subr.c | 13 +++++++++++++
|
slirp/tcp_subr.c | 12 ++++++++++++
|
||||||
vl.c | 9 +++++++++
|
vl.c | 9 +++++++++
|
||||||
4 files changed, 40 insertions(+)
|
4 files changed, 39 insertions(+)
|
||||||
|
|
||||||
diff --git a/qemu-options.hx b/qemu-options.hx
|
diff --git a/qemu-options.hx b/qemu-options.hx
|
||||||
index 0eea4ee..32a68e4 100644
|
index a770086..df60351 100644
|
||||||
--- a/qemu-options.hx
|
--- a/qemu-options.hx
|
||||||
+++ b/qemu-options.hx
|
+++ b/qemu-options.hx
|
||||||
@@ -2949,6 +2949,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU
|
@@ -3084,6 +3084,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU
|
||||||
from a script.
|
from a script.
|
||||||
ETEXI
|
ETEXI
|
||||||
|
|
||||||
@ -33,10 +33,10 @@ index 0eea4ee..32a68e4 100644
|
|||||||
"-singlestep always run in singlestep mode\n", QEMU_ARCH_ALL)
|
"-singlestep always run in singlestep mode\n", QEMU_ARCH_ALL)
|
||||||
STEXI
|
STEXI
|
||||||
diff --git a/slirp/socket.c b/slirp/socket.c
|
diff --git a/slirp/socket.c b/slirp/socket.c
|
||||||
index 1673e3a..a177ab0 100644
|
index b836c42..13ec0c0 100644
|
||||||
--- a/slirp/socket.c
|
--- a/slirp/socket.c
|
||||||
+++ b/slirp/socket.c
|
+++ b/slirp/socket.c
|
||||||
@@ -532,6 +532,8 @@ sorecvfrom(struct socket *so)
|
@@ -588,6 +588,8 @@ sorecvfrom(struct socket *so)
|
||||||
} /* if ping packet */
|
} /* if ping packet */
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -45,34 +45,33 @@ index 1673e3a..a177ab0 100644
|
|||||||
/*
|
/*
|
||||||
* sendto() a socket
|
* sendto() a socket
|
||||||
*/
|
*/
|
||||||
@@ -562,6 +564,12 @@ sosendto(struct socket *so, struct mbuf *m)
|
@@ -605,6 +607,12 @@ sosendto(struct socket *so, struct mbuf *m)
|
||||||
|
DEBUG_CALL(" sendto()ing)");
|
||||||
DEBUG_MISC((dfd, " sendto()ing, addr.sin_port=%d, addr.sin_addr.s_addr=%.16s\n", ntohs(addr.sin_port), inet_ntoa(addr.sin_addr)));
|
sotranslate_out(so, &addr);
|
||||||
|
|
||||||
+ /* Only allow DNS requests */
|
+ /* Only allow DNS requests */
|
||||||
+ if (slirp_nooutgoing && ntohs(addr.sin_port) != 53) {
|
+ if (slirp_nooutgoing && ntohs(((struct sockaddr_in *)&addr)->sin_port) != 53) {
|
||||||
+ errno = EHOSTUNREACH;
|
+ errno = EHOSTUNREACH;
|
||||||
+ return -1;
|
+ return -1;
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
/* Don't care what port we get */
|
/* Don't care what port we get */
|
||||||
ret = sendto(so->s, m->m_data, m->m_len, 0,
|
ret = sendto(so->s, m->m_data, m->m_len, 0,
|
||||||
(struct sockaddr *)&addr, sizeof (struct sockaddr));
|
(struct sockaddr *)&addr, sizeof(addr));
|
||||||
diff --git a/slirp/tcp_subr.c b/slirp/tcp_subr.c
|
diff --git a/slirp/tcp_subr.c b/slirp/tcp_subr.c
|
||||||
index e161ed2..d0e29e0 100644
|
index dbfd2c6..94126bd 100644
|
||||||
--- a/slirp/tcp_subr.c
|
--- a/slirp/tcp_subr.c
|
||||||
+++ b/slirp/tcp_subr.c
|
+++ b/slirp/tcp_subr.c
|
||||||
@@ -324,6 +324,9 @@ tcp_sockclosed(struct tcpcb *tp)
|
@@ -388,6 +388,8 @@ tcp_sockclosed(struct tcpcb *tp)
|
||||||
* nonblocking. Connect returns after the SYN is sent, and does
|
* nonblocking. Connect returns after the SYN is sent, and does
|
||||||
* not wait for ACK+SYN.
|
* not wait for ACK+SYN.
|
||||||
*/
|
*/
|
||||||
+
|
|
||||||
+extern int slirp_nooutgoing;
|
+extern int slirp_nooutgoing;
|
||||||
+
|
+
|
||||||
int tcp_fconnect(struct socket *so)
|
int tcp_fconnect(struct socket *so, unsigned short af)
|
||||||
{
|
{
|
||||||
Slirp *slirp = so->slirp;
|
int ret=0;
|
||||||
@@ -332,6 +335,11 @@ int tcp_fconnect(struct socket *so)
|
@@ -395,6 +397,11 @@ int tcp_fconnect(struct socket *so, unsigned short af)
|
||||||
DEBUG_CALL("tcp_fconnect");
|
DEBUG_CALL("tcp_fconnect");
|
||||||
DEBUG_ARG("so = %p", so);
|
DEBUG_ARG("so = %p", so);
|
||||||
|
|
||||||
@ -81,26 +80,26 @@ index e161ed2..d0e29e0 100644
|
|||||||
+ return -1;
|
+ return -1;
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
if( (ret = so->s = qemu_socket(AF_INET,SOCK_STREAM,0)) >= 0) {
|
ret = so->s = qemu_socket(af, SOCK_STREAM, 0);
|
||||||
|
if (ret >= 0) {
|
||||||
int opt, s=so->s;
|
int opt, s=so->s;
|
||||||
struct sockaddr_in addr;
|
@@ -475,6 +482,11 @@ void tcp_connect(struct socket *inso)
|
||||||
@@ -424,6 +432,11 @@ void tcp_connect(struct socket *inso)
|
|
||||||
tcp_close(sototcpcb(so)); /* This will sofree() as well */
|
tcp_close(sototcpcb(so)); /* This will sofree() as well */
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
+ if (slirp_nooutgoing && addr.sin_addr.s_addr != slirp_nooutgoing) {
|
+ if (slirp_nooutgoing && ((struct sockaddr_in *)&addr)->sin_addr.s_addr != slirp_nooutgoing) {
|
||||||
+ tcp_close(sototcpcb(so)); /* This will sofree() as well */
|
+ tcp_close(sototcpcb(so)); /* This will sofree() as well */
|
||||||
+ close(s);
|
+ closesocket(s);
|
||||||
+ return;
|
+ return;
|
||||||
+ }
|
+ }
|
||||||
qemu_set_nonblock(s);
|
qemu_set_nonblock(s);
|
||||||
socket_set_fast_reuse(s);
|
socket_set_fast_reuse(s);
|
||||||
opt = 1;
|
opt = 1;
|
||||||
diff --git a/vl.c b/vl.c
|
diff --git a/vl.c b/vl.c
|
||||||
index 4211ff1..d5250b6 100644
|
index bd81ea9..a8f1338 100644
|
||||||
--- a/vl.c
|
--- a/vl.c
|
||||||
+++ b/vl.c
|
+++ b/vl.c
|
||||||
@@ -167,6 +167,7 @@ int smp_threads = 1;
|
@@ -162,6 +162,7 @@ int smp_threads = 1;
|
||||||
int acpi_enabled = 1;
|
int acpi_enabled = 1;
|
||||||
int no_hpet = 0;
|
int no_hpet = 0;
|
||||||
int fd_bootchk = 1;
|
int fd_bootchk = 1;
|
||||||
@ -108,7 +107,7 @@ index 4211ff1..d5250b6 100644
|
|||||||
static int no_reboot;
|
static int no_reboot;
|
||||||
int no_shutdown = 0;
|
int no_shutdown = 0;
|
||||||
int cursor_hide = 1;
|
int cursor_hide = 1;
|
||||||
@@ -3385,6 +3386,14 @@ int main(int argc, char **argv, char **envp)
|
@@ -3378,6 +3379,14 @@ int main(int argc, char **argv, char **envp)
|
||||||
case QEMU_OPTION_singlestep:
|
case QEMU_OPTION_singlestep:
|
||||||
singlestep = 1;
|
singlestep = 1;
|
||||||
break;
|
break;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From dcdb06da7c0233d7532ebb281e79d9a57231311b Mon Sep 17 00:00:00 2001
|
From 1c744e643260e5a557cbc9a6140f362ccdc6c6b3 Mon Sep 17 00:00:00 2001
|
||||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||||
Date: Wed, 29 Aug 2012 20:06:01 +0200
|
Date: Wed, 29 Aug 2012 20:06:01 +0200
|
||||||
Subject: [PATCH] vnc: password-file= and incoming-connections=
|
Subject: [PATCH] vnc: password-file= and incoming-connections=
|
||||||
@ -9,10 +9,10 @@ TBD (from SUSE Studio team)
|
|||||||
1 file changed, 55 insertions(+)
|
1 file changed, 55 insertions(+)
|
||||||
|
|
||||||
diff --git a/ui/vnc.c b/ui/vnc.c
|
diff --git a/ui/vnc.c b/ui/vnc.c
|
||||||
index cbe4d33..36cd143 100644
|
index d2ebf1f..ab65db9 100644
|
||||||
--- a/ui/vnc.c
|
--- a/ui/vnc.c
|
||||||
+++ b/ui/vnc.c
|
+++ b/ui/vnc.c
|
||||||
@@ -57,6 +57,8 @@ static const struct timeval VNC_REFRESH_LOSSY = { 2, 0 };
|
@@ -58,6 +58,8 @@ static const struct timeval VNC_REFRESH_LOSSY = { 2, 0 };
|
||||||
static QTAILQ_HEAD(, VncDisplay) vnc_displays =
|
static QTAILQ_HEAD(, VncDisplay) vnc_displays =
|
||||||
QTAILQ_HEAD_INITIALIZER(vnc_displays);
|
QTAILQ_HEAD_INITIALIZER(vnc_displays);
|
||||||
|
|
||||||
@ -21,7 +21,7 @@ index cbe4d33..36cd143 100644
|
|||||||
static int vnc_cursor_define(VncState *vs);
|
static int vnc_cursor_define(VncState *vs);
|
||||||
static void vnc_release_modifiers(VncState *vs);
|
static void vnc_release_modifiers(VncState *vs);
|
||||||
|
|
||||||
@@ -1223,6 +1225,7 @@ static void vnc_disconnect_start(VncState *vs)
|
@@ -1185,6 +1187,7 @@ static void vnc_disconnect_start(VncState *vs)
|
||||||
void vnc_disconnect_finish(VncState *vs)
|
void vnc_disconnect_finish(VncState *vs)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
@ -29,9 +29,9 @@ index cbe4d33..36cd143 100644
|
|||||||
|
|
||||||
vnc_jobs_join(vs); /* Wait encoding jobs */
|
vnc_jobs_join(vs); /* Wait encoding jobs */
|
||||||
|
|
||||||
@@ -1271,6 +1274,13 @@ void vnc_disconnect_finish(VncState *vs)
|
@@ -1235,6 +1238,13 @@ void vnc_disconnect_finish(VncState *vs)
|
||||||
}
|
object_unref(OBJECT(vs->sioc));
|
||||||
g_free(vs->lossy_rect);
|
vs->sioc = NULL;
|
||||||
g_free(vs);
|
g_free(vs);
|
||||||
+
|
+
|
||||||
+ num_disconnects++;
|
+ num_disconnects++;
|
||||||
@ -42,9 +42,9 @@ index cbe4d33..36cd143 100644
|
|||||||
+ }
|
+ }
|
||||||
}
|
}
|
||||||
|
|
||||||
ssize_t vnc_client_io_error(VncState *vs, ssize_t ret, int last_errno)
|
ssize_t vnc_client_io_error(VncState *vs, ssize_t ret, Error **errp)
|
||||||
@@ -3268,6 +3278,39 @@ char *vnc_display_local_addr(const char *id)
|
@@ -3200,6 +3210,39 @@ char *vnc_display_local_addr(const char *id)
|
||||||
return vnc_socket_local_addr("%s:%s", vs->lsock);
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
+static void read_file_password(const char *id, const char *filename)
|
+static void read_file_password(const char *id, const char *filename)
|
||||||
@ -83,7 +83,7 @@ index cbe4d33..36cd143 100644
|
|||||||
static QemuOptsList qemu_vnc_opts = {
|
static QemuOptsList qemu_vnc_opts = {
|
||||||
.name = "vnc",
|
.name = "vnc",
|
||||||
.head = QTAILQ_HEAD_INITIALIZER(qemu_vnc_opts.head),
|
.head = QTAILQ_HEAD_INITIALIZER(qemu_vnc_opts.head),
|
||||||
@@ -3299,6 +3342,9 @@ static QemuOptsList qemu_vnc_opts = {
|
@@ -3231,6 +3274,9 @@ static QemuOptsList qemu_vnc_opts = {
|
||||||
.name = "connections",
|
.name = "connections",
|
||||||
.type = QEMU_OPT_NUMBER,
|
.type = QEMU_OPT_NUMBER,
|
||||||
},{
|
},{
|
||||||
@ -93,7 +93,7 @@ index cbe4d33..36cd143 100644
|
|||||||
.name = "to",
|
.name = "to",
|
||||||
.type = QEMU_OPT_NUMBER,
|
.type = QEMU_OPT_NUMBER,
|
||||||
},{
|
},{
|
||||||
@@ -3311,6 +3357,9 @@ static QemuOptsList qemu_vnc_opts = {
|
@@ -3243,6 +3289,9 @@ static QemuOptsList qemu_vnc_opts = {
|
||||||
.name = "password",
|
.name = "password",
|
||||||
.type = QEMU_OPT_BOOL,
|
.type = QEMU_OPT_BOOL,
|
||||||
},{
|
},{
|
||||||
@ -103,7 +103,7 @@ index cbe4d33..36cd143 100644
|
|||||||
.name = "reverse",
|
.name = "reverse",
|
||||||
.type = QEMU_OPT_BOOL,
|
.type = QEMU_OPT_BOOL,
|
||||||
},{
|
},{
|
||||||
@@ -3544,6 +3593,7 @@ void vnc_display_open(const char *id, Error **errp)
|
@@ -3476,6 +3525,7 @@ void vnc_display_open(const char *id, Error **errp)
|
||||||
const char *share, *device_id;
|
const char *share, *device_id;
|
||||||
QemuConsole *con;
|
QemuConsole *con;
|
||||||
bool password = false;
|
bool password = false;
|
||||||
@ -111,7 +111,7 @@ index cbe4d33..36cd143 100644
|
|||||||
bool reverse = false;
|
bool reverse = false;
|
||||||
const char *vnc;
|
const char *vnc;
|
||||||
char *h;
|
char *h;
|
||||||
@@ -3662,6 +3712,10 @@ void vnc_display_open(const char *id, Error **errp)
|
@@ -3601,6 +3651,10 @@ void vnc_display_open(const char *id, Error **errp)
|
||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -122,7 +122,7 @@ index cbe4d33..36cd143 100644
|
|||||||
|
|
||||||
reverse = qemu_opt_get_bool(opts, "reverse", false);
|
reverse = qemu_opt_get_bool(opts, "reverse", false);
|
||||||
lock_key_sync = qemu_opt_get_bool(opts, "lock-key-sync", true);
|
lock_key_sync = qemu_opt_get_bool(opts, "lock-key-sync", true);
|
||||||
@@ -3750,6 +3804,7 @@ void vnc_display_open(const char *id, Error **errp)
|
@@ -3689,6 +3743,7 @@ void vnc_display_open(const char *id, Error **errp)
|
||||||
vs->share_policy = VNC_SHARE_POLICY_ALLOW_EXCLUSIVE;
|
vs->share_policy = VNC_SHARE_POLICY_ALLOW_EXCLUSIVE;
|
||||||
}
|
}
|
||||||
vs->connections_limit = qemu_opt_get_number(opts, "connections", 32);
|
vs->connections_limit = qemu_opt_get_number(opts, "connections", 32);
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From ea1a1506d303f1ae4ad584c2dfb21c92c42970f6 Mon Sep 17 00:00:00 2001
|
From 2be5a4993f98e5a4af0d2c388eba6e08955d7e14 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Wed, 10 Oct 2012 10:21:20 +0200
|
Date: Wed, 10 Oct 2012 10:21:20 +0200
|
||||||
Subject: [PATCH] linux-user: add more blk ioctls
|
Subject: [PATCH] linux-user: add more blk ioctls
|
||||||
@ -42,10 +42,10 @@ index f9f7c83..8eb4446 100644
|
|||||||
IOCTL(BLKRASET, 0, TYPE_INT)
|
IOCTL(BLKRASET, 0, TYPE_INT)
|
||||||
IOCTL(BLKRAGET, IOC_R, MK_PTR(TYPE_LONG))
|
IOCTL(BLKRAGET, IOC_R, MK_PTR(TYPE_LONG))
|
||||||
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
|
||||||
index 367eac1..ca14909 100644
|
index 77be181..787ba85 100644
|
||||||
--- a/linux-user/syscall_defs.h
|
--- a/linux-user/syscall_defs.h
|
||||||
+++ b/linux-user/syscall_defs.h
|
+++ b/linux-user/syscall_defs.h
|
||||||
@@ -954,6 +954,12 @@ struct target_pollfd {
|
@@ -956,6 +956,12 @@ struct target_pollfd {
|
||||||
#define TARGET_BLKGETSIZE64 TARGET_IOR(0x12,114,abi_ulong)
|
#define TARGET_BLKGETSIZE64 TARGET_IOR(0x12,114,abi_ulong)
|
||||||
/* return device size in bytes
|
/* return device size in bytes
|
||||||
(u64 *arg) */
|
(u64 *arg) */
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 436e643f2f17bac815c7ec7315e0758b22f10fb4 Mon Sep 17 00:00:00 2001
|
From 90ede05e9c7502bf620bf027d660634636723407 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Tue, 9 Oct 2012 09:06:49 +0200
|
Date: Tue, 9 Oct 2012 09:06:49 +0200
|
||||||
Subject: [PATCH] linux-user: use target_ulong
|
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(-)
|
2 files changed, 8 insertions(+), 8 deletions(-)
|
||||||
|
|
||||||
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
|
diff --git a/linux-user/qemu.h b/linux-user/qemu.h
|
||||||
index ea9c98d..a9e77d0 100644
|
index b55a9d2..be9c21c 100644
|
||||||
--- a/linux-user/qemu.h
|
--- a/linux-user/qemu.h
|
||||||
+++ b/linux-user/qemu.h
|
+++ b/linux-user/qemu.h
|
||||||
@@ -181,10 +181,10 @@ abi_long memcpy_to_target(abi_ulong dest, const void *src,
|
@@ -178,10 +178,10 @@ abi_long memcpy_to_target(abi_ulong dest, const void *src,
|
||||||
void target_set_brk(abi_ulong new_brk);
|
void target_set_brk(abi_ulong new_brk);
|
||||||
abi_long do_brk(abi_ulong new_brk);
|
abi_long do_brk(abi_ulong new_brk);
|
||||||
void syscall_init(void);
|
void syscall_init(void);
|
||||||
@ -36,10 +36,10 @@ index ea9c98d..a9e77d0 100644
|
|||||||
extern THREAD CPUState *thread_cpu;
|
extern THREAD CPUState *thread_cpu;
|
||||||
void cpu_loop(CPUArchState *env);
|
void cpu_loop(CPUArchState *env);
|
||||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||||
index f7e57a6..2db566c 100644
|
index 90b1698..2048082 100644
|
||||||
--- a/linux-user/syscall.c
|
--- a/linux-user/syscall.c
|
||||||
+++ b/linux-user/syscall.c
|
+++ b/linux-user/syscall.c
|
||||||
@@ -5799,10 +5799,10 @@ int syscall_restartable(int syscall_nr)
|
@@ -5983,10 +5983,10 @@ int syscall_restartable(int syscall_nr)
|
||||||
/* do_syscall() should always have a single exit point at the end so
|
/* do_syscall() should always have a single exit point at the end so
|
||||||
that actions, such as logging of syscall results, can be performed.
|
that actions, such as logging of syscall results, can be performed.
|
||||||
All errnos that do_syscall() returns must be -TARGET_<errcode>. */
|
All errnos that do_syscall() returns must be -TARGET_<errcode>. */
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 6d0d71e8215d2273663a3ddb44cad3e24ed3ad35 Mon Sep 17 00:00:00 2001
|
From 86ba74de946602754a7e624dd5f2be833abc50a4 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Wed, 5 Aug 2009 09:49:37 +0200
|
Date: Wed, 5 Aug 2009 09:49:37 +0200
|
||||||
Subject: [PATCH] block: Add support for DictZip enabled gzip files
|
Subject: [PATCH] block: Add support for DictZip enabled gzip files
|
||||||
@ -36,30 +36,31 @@ Signed-off-by: Tim Hardeck <thardeck@suse.de>
|
|||||||
[AF: common-obj-y -> block-obj-y, drop probe hook (bsc#945778)]
|
[AF: common-obj-y -> block-obj-y, drop probe hook (bsc#945778)]
|
||||||
[AF: Drop bdrv_open() drv parameter for 2.5]
|
[AF: Drop bdrv_open() drv parameter for 2.5]
|
||||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||||
|
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||||
---
|
---
|
||||||
block/Makefile.objs | 1 +
|
block/Makefile.objs | 1 +
|
||||||
block/dictzip.c | 578 ++++++++++++++++++++++++++++++++++++++++++++++++++++
|
block/dictzip.c | 580 ++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
2 files changed, 579 insertions(+)
|
2 files changed, 581 insertions(+)
|
||||||
create mode 100644 block/dictzip.c
|
create mode 100644 block/dictzip.c
|
||||||
|
|
||||||
diff --git a/block/Makefile.objs b/block/Makefile.objs
|
diff --git a/block/Makefile.objs b/block/Makefile.objs
|
||||||
index 58ef2ef..c7b9294 100644
|
index 44a5416..12e0cca 100644
|
||||||
--- a/block/Makefile.objs
|
--- a/block/Makefile.objs
|
||||||
+++ b/block/Makefile.objs
|
+++ b/block/Makefile.objs
|
||||||
@@ -20,6 +20,7 @@ block-obj-$(CONFIG_RBD) += rbd.o
|
@@ -21,6 +21,7 @@ block-obj-$(CONFIG_GLUSTERFS) += gluster.o
|
||||||
block-obj-$(CONFIG_GLUSTERFS) += gluster.o
|
|
||||||
block-obj-$(CONFIG_ARCHIPELAGO) += archipelago.o
|
block-obj-$(CONFIG_ARCHIPELAGO) += archipelago.o
|
||||||
block-obj-$(CONFIG_LIBSSH2) += ssh.o
|
block-obj-$(CONFIG_LIBSSH2) += ssh.o
|
||||||
|
block-obj-y += accounting.o dirty-bitmap.o
|
||||||
+block-obj-y += dictzip.o
|
+block-obj-y += dictzip.o
|
||||||
block-obj-y += accounting.o
|
|
||||||
block-obj-y += write-threshold.o
|
block-obj-y += write-threshold.o
|
||||||
|
|
||||||
|
block-obj-y += crypto.o
|
||||||
diff --git a/block/dictzip.c b/block/dictzip.c
|
diff --git a/block/dictzip.c b/block/dictzip.c
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000..728d5b4
|
index 0000000..717a7d3
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/block/dictzip.c
|
+++ b/block/dictzip.c
|
||||||
@@ -0,0 +1,578 @@
|
@@ -0,0 +1,580 @@
|
||||||
+/*
|
+/*
|
||||||
+ * DictZip Block driver for dictzip enabled gzip files
|
+ * DictZip Block driver for dictzip enabled gzip files
|
||||||
+ *
|
+ *
|
||||||
@ -97,6 +98,8 @@ index 0000000..728d5b4
|
|||||||
+ * THE SOFTWARE.
|
+ * THE SOFTWARE.
|
||||||
+ */
|
+ */
|
||||||
+
|
+
|
||||||
|
+#include "qemu/osdep.h"
|
||||||
|
+#include "qapi/error.h"
|
||||||
+#include "qemu-common.h"
|
+#include "qemu-common.h"
|
||||||
+#include "block/block_int.h"
|
+#include "block/block_int.h"
|
||||||
+#include <zlib.h>
|
+#include <zlib.h>
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From ba2b8bb664ae784303710caa916066c313510755 Mon Sep 17 00:00:00 2001
|
From 57fd47a937941ca3bd3762a68e6e3dad0d4992da Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Wed, 5 Aug 2009 17:28:38 +0200
|
Date: Wed, 5 Aug 2009 17:28:38 +0200
|
||||||
Subject: [PATCH] block: Add tar container format
|
Subject: [PATCH] block: Add tar container format
|
||||||
@ -37,30 +37,31 @@ Signed-off-by: Tim Hardeck <thardeck@suse.de>
|
|||||||
[AF: common-obj-y -> block-obj-y, drop probe hook (bsc#945778)]
|
[AF: common-obj-y -> block-obj-y, drop probe hook (bsc#945778)]
|
||||||
[AF: Drop bdrv_open() drv parameter for 2.5]
|
[AF: Drop bdrv_open() drv parameter for 2.5]
|
||||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
||||||
|
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||||
---
|
---
|
||||||
block/Makefile.objs | 1 +
|
block/Makefile.objs | 1 +
|
||||||
block/tar.c | 368 ++++++++++++++++++++++++++++++++++++++++++++++++++++
|
block/tar.c | 370 ++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||||
2 files changed, 369 insertions(+)
|
2 files changed, 371 insertions(+)
|
||||||
create mode 100644 block/tar.c
|
create mode 100644 block/tar.c
|
||||||
|
|
||||||
diff --git a/block/Makefile.objs b/block/Makefile.objs
|
diff --git a/block/Makefile.objs b/block/Makefile.objs
|
||||||
index c7b9294..0a4b697 100644
|
index 12e0cca..34a6fba 100644
|
||||||
--- a/block/Makefile.objs
|
--- a/block/Makefile.objs
|
||||||
+++ b/block/Makefile.objs
|
+++ b/block/Makefile.objs
|
||||||
@@ -21,6 +21,7 @@ block-obj-$(CONFIG_GLUSTERFS) += gluster.o
|
@@ -22,6 +22,7 @@ block-obj-$(CONFIG_ARCHIPELAGO) += archipelago.o
|
||||||
block-obj-$(CONFIG_ARCHIPELAGO) += archipelago.o
|
|
||||||
block-obj-$(CONFIG_LIBSSH2) += ssh.o
|
block-obj-$(CONFIG_LIBSSH2) += ssh.o
|
||||||
|
block-obj-y += accounting.o dirty-bitmap.o
|
||||||
block-obj-y += dictzip.o
|
block-obj-y += dictzip.o
|
||||||
+block-obj-y += tar.o
|
+block-obj-y += tar.o
|
||||||
block-obj-y += accounting.o
|
|
||||||
block-obj-y += write-threshold.o
|
block-obj-y += write-threshold.o
|
||||||
|
|
||||||
|
block-obj-y += crypto.o
|
||||||
diff --git a/block/tar.c b/block/tar.c
|
diff --git a/block/tar.c b/block/tar.c
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000..34dc57c
|
index 0000000..31da8b9
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/block/tar.c
|
+++ b/block/tar.c
|
||||||
@@ -0,0 +1,368 @@
|
@@ -0,0 +1,370 @@
|
||||||
+/*
|
+/*
|
||||||
+ * Tar block driver
|
+ * Tar block driver
|
||||||
+ *
|
+ *
|
||||||
@ -85,6 +86,8 @@ index 0000000..34dc57c
|
|||||||
+ * THE SOFTWARE.
|
+ * THE SOFTWARE.
|
||||||
+ */
|
+ */
|
||||||
+
|
+
|
||||||
|
+#include "qemu/osdep.h"
|
||||||
|
+#include "qapi/error.h"
|
||||||
+#include "qemu-common.h"
|
+#include "qemu-common.h"
|
||||||
+#include "block/block_int.h"
|
+#include "block/block_int.h"
|
||||||
+
|
+
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From fc62b8b5778e4f68993b7a1a58a555838ec57b62 Mon Sep 17 00:00:00 2001
|
From 767cd48b2238291256b2cdf7ae7ba1112b256071 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Wed, 12 Dec 2012 19:11:30 +0100
|
Date: Wed, 12 Dec 2012 19:11:30 +0100
|
||||||
Subject: [PATCH] Legacy Patch kvm-qemu-preXX-dictzip3.patch
|
Subject: [PATCH] Legacy Patch kvm-qemu-preXX-dictzip3.patch
|
||||||
@ -8,10 +8,10 @@ Subject: [PATCH] Legacy Patch kvm-qemu-preXX-dictzip3.patch
|
|||||||
1 file changed, 11 insertions(+), 2 deletions(-)
|
1 file changed, 11 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/block/tar.c b/block/tar.c
|
diff --git a/block/tar.c b/block/tar.c
|
||||||
index 34dc57c..cade8ab 100644
|
index 31da8b9..41620fd 100644
|
||||||
--- a/block/tar.c
|
--- a/block/tar.c
|
||||||
+++ b/block/tar.c
|
+++ b/block/tar.c
|
||||||
@@ -71,7 +71,8 @@ static int str_ends(char *str, const char *end)
|
@@ -73,7 +73,8 @@ static int str_ends(char *str, const char *end)
|
||||||
return !strncmp(str + str_len - end_len, end, end_len);
|
return !strncmp(str + str_len - end_len, end, end_len);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -21,7 +21,7 @@ index 34dc57c..cade8ab 100644
|
|||||||
{
|
{
|
||||||
int retval = 0;
|
int retval = 0;
|
||||||
|
|
||||||
@@ -87,10 +88,17 @@ static int is_target_file(BlockDriverState *bs, char *filename)
|
@@ -89,10 +90,17 @@ static int is_target_file(BlockDriverState *bs, char *filename)
|
||||||
if (str_ends(filename, ".vmdk"))
|
if (str_ends(filename, ".vmdk"))
|
||||||
retval = 1;
|
retval = 1;
|
||||||
|
|
||||||
@ -39,7 +39,7 @@ index 34dc57c..cade8ab 100644
|
|||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -217,12 +225,13 @@ static int tar_open(BlockDriverState *bs, QDict *options, int flags, Error **err
|
@@ -219,12 +227,13 @@ static int tar_open(BlockDriverState *bs, QDict *options, int flags, Error **err
|
||||||
bdrv_pread(s->hd, header_offs - s->file_len, s->longfile,
|
bdrv_pread(s->hd, header_offs - s->file_len, s->longfile,
|
||||||
sizeof(s->longfile));
|
sizeof(s->longfile));
|
||||||
s->longfile[sizeof(s->longfile)-1] = '\0';
|
s->longfile[sizeof(s->longfile)-1] = '\0';
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From dff9e68c25df66cf1520415ea70f51c3068dc2c2 Mon Sep 17 00:00:00 2001
|
From e4f5122f79d8570c5e6e42b4207ae1b761e48901 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Mon, 6 Jun 2011 06:53:52 +0200
|
Date: Mon, 6 Jun 2011 06:53:52 +0200
|
||||||
Subject: [PATCH] console: add question-mark escape operator
|
Subject: [PATCH] console: add question-mark escape operator
|
||||||
@ -16,10 +16,10 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
|
|||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/ui/console.c b/ui/console.c
|
diff --git a/ui/console.c b/ui/console.c
|
||||||
index 745c354..d66a9ac 100644
|
index 1fd4ea4..fd3254a 100644
|
||||||
--- a/ui/console.c
|
--- a/ui/console.c
|
||||||
+++ b/ui/console.c
|
+++ b/ui/console.c
|
||||||
@@ -855,7 +855,7 @@ static void console_putchar(QemuConsole *s, int ch)
|
@@ -868,7 +868,7 @@ static void console_putchar(QemuConsole *s, int ch)
|
||||||
} else {
|
} else {
|
||||||
if (s->nb_esc_params < MAX_ESC_PARAMS)
|
if (s->nb_esc_params < MAX_ESC_PARAMS)
|
||||||
s->nb_esc_params++;
|
s->nb_esc_params++;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 199c13d0611ca730dcba1784cd4d6da9172a5413 Mon Sep 17 00:00:00 2001
|
From c744f774b8399d42063b206a6f52a2450f6d7ed1 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Thu, 1 Apr 2010 17:36:23 +0200
|
Date: Thu, 1 Apr 2010 17:36:23 +0200
|
||||||
Subject: [PATCH] Make char muxer more robust wrt small FIFOs
|
Subject: [PATCH] Make char muxer more robust wrt small FIFOs
|
||||||
@ -22,10 +22,10 @@ This patch fixes input when using -nographic on s390 for me.
|
|||||||
1 file changed, 16 insertions(+)
|
1 file changed, 16 insertions(+)
|
||||||
|
|
||||||
diff --git a/qemu-char.c b/qemu-char.c
|
diff --git a/qemu-char.c b/qemu-char.c
|
||||||
index 2969c44..9a32d09 100644
|
index 270819a..4a550c1 100644
|
||||||
--- a/qemu-char.c
|
--- a/qemu-char.c
|
||||||
+++ b/qemu-char.c
|
+++ b/qemu-char.c
|
||||||
@@ -381,6 +381,9 @@ typedef struct {
|
@@ -512,6 +512,9 @@ typedef struct {
|
||||||
IOEventHandler *chr_event[MAX_MUX];
|
IOEventHandler *chr_event[MAX_MUX];
|
||||||
void *ext_opaque[MAX_MUX];
|
void *ext_opaque[MAX_MUX];
|
||||||
CharDriverState *drv;
|
CharDriverState *drv;
|
||||||
@ -35,7 +35,7 @@ index 2969c44..9a32d09 100644
|
|||||||
int focus;
|
int focus;
|
||||||
int mux_cnt;
|
int mux_cnt;
|
||||||
int term_got_escape;
|
int term_got_escape;
|
||||||
@@ -540,6 +543,15 @@ static void mux_chr_accept_input(CharDriverState *chr)
|
@@ -671,6 +674,15 @@ static void mux_chr_accept_input(CharDriverState *chr)
|
||||||
d->chr_read[m](d->ext_opaque[m],
|
d->chr_read[m](d->ext_opaque[m],
|
||||||
&d->buffer[m][d->cons[m]++ & MUX_BUFFER_MASK], 1);
|
&d->buffer[m][d->cons[m]++ & MUX_BUFFER_MASK], 1);
|
||||||
}
|
}
|
||||||
@ -51,7 +51,7 @@ index 2969c44..9a32d09 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int mux_chr_can_read(void *opaque)
|
static int mux_chr_can_read(void *opaque)
|
||||||
@@ -677,6 +689,10 @@ static CharDriverState *qemu_chr_open_mux(const char *id,
|
@@ -812,6 +824,10 @@ static CharDriverState *qemu_chr_open_mux(const char *id,
|
||||||
chr->opaque = d;
|
chr->opaque = d;
|
||||||
d->drv = drv;
|
d->drv = drv;
|
||||||
d->focus = -1;
|
d->focus = -1;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 625b8744b9365a6aec0f5197f7cd5fdec9e9dd26 Mon Sep 17 00:00:00 2001
|
From 559e01a1b23a661ba9bf9da313018059e06d727a Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Thu, 13 Dec 2012 14:29:22 +0100
|
Date: Thu, 13 Dec 2012 14:29:22 +0100
|
||||||
Subject: [PATCH] linux-user: lseek: explicitly cast non-set offsets to signed
|
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(-)
|
1 file changed, 7 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
|
||||||
index 2db566c..d8837a0 100644
|
index 2048082..00c075d 100644
|
||||||
--- a/linux-user/syscall.c
|
--- a/linux-user/syscall.c
|
||||||
+++ b/linux-user/syscall.c
|
+++ b/linux-user/syscall.c
|
||||||
@@ -6127,9 +6127,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
|
@@ -6320,9 +6320,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1,
|
||||||
case TARGET_NR_oldstat:
|
case TARGET_NR_oldstat:
|
||||||
goto unimplemented;
|
goto unimplemented;
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From d426e2bf712d0393687782719b6dce20d7ef0e9f Mon Sep 17 00:00:00 2001
|
From 9327ff8f826f2edfe6f06f710155f7ed78d0f120 Mon Sep 17 00:00:00 2001
|
||||||
From: Bruce Rogers <brogers@suse.com>
|
From: Bruce Rogers <brogers@suse.com>
|
||||||
Date: Thu, 16 May 2013 12:39:10 +0200
|
Date: Thu, 16 May 2013 12:39:10 +0200
|
||||||
Subject: [PATCH] virtfs-proxy-helper: Provide __u64 for broken
|
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(+)
|
1 file changed, 7 insertions(+)
|
||||||
|
|
||||||
diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
|
diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c
|
||||||
index ad1da0d..e6cabf0 100644
|
index 54f7ad1..b4bf2f4 100644
|
||||||
--- a/fsdev/virtfs-proxy-helper.c
|
--- a/fsdev/virtfs-proxy-helper.c
|
||||||
+++ b/fsdev/virtfs-proxy-helper.c
|
+++ b/fsdev/virtfs-proxy-helper.c
|
||||||
@@ -9,6 +9,13 @@
|
@@ -9,6 +9,13 @@
|
||||||
@ -26,6 +26,6 @@ index ad1da0d..e6cabf0 100644
|
|||||||
+#if defined(__powerpc64__)
|
+#if defined(__powerpc64__)
|
||||||
+#include <asm/types.h>
|
+#include <asm/types.h>
|
||||||
+#endif
|
+#endif
|
||||||
|
#include "qemu/osdep.h"
|
||||||
#include <sys/resource.h>
|
#include <sys/resource.h>
|
||||||
#include <getopt.h>
|
#include <getopt.h>
|
||||||
#include <syslog.h>
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From e374ba1499f38700e88f30bb0a187b9c61768cca Mon Sep 17 00:00:00 2001
|
From 85122b0b5a7da0999de9f49d2fbce71c53a936ab Mon Sep 17 00:00:00 2001
|
||||||
From: Dinar Valeev <k0da@opensuse.org>
|
From: Dinar Valeev <k0da@opensuse.org>
|
||||||
Date: Wed, 2 Oct 2013 17:56:03 +0200
|
Date: Wed, 2 Oct 2013 17:56:03 +0200
|
||||||
Subject: [PATCH] configure: Enable PIE for ppc and ppc64 hosts
|
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(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/configure b/configure
|
diff --git a/configure b/configure
|
||||||
index b9552fd..da33d72 100755
|
index 5db29f0..0df3fc0 100755
|
||||||
--- a/configure
|
--- a/configure
|
||||||
+++ b/configure
|
+++ b/configure
|
||||||
@@ -1560,7 +1560,7 @@ fi
|
@@ -1536,7 +1536,7 @@ fi
|
||||||
|
|
||||||
if test "$pie" = ""; then
|
if test "$pie" = ""; then
|
||||||
case "$cpu-$targetos" in
|
case "$cpu-$targetos" in
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 0501fde012f0a5881d9b916e670f3c0518de5ceb Mon Sep 17 00:00:00 2001
|
From 9cbbe949157593297780361313478da4690bc35d Mon Sep 17 00:00:00 2001
|
||||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||||
Date: Thu, 17 Apr 2014 18:39:10 +0200
|
Date: Thu, 17 Apr 2014 18:39:10 +0200
|
||||||
Subject: [PATCH] qtest: Increase socket timeout
|
Subject: [PATCH] qtest: Increase socket timeout
|
||||||
@ -14,10 +14,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
|||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/tests/libqtest.c b/tests/libqtest.c
|
diff --git a/tests/libqtest.c b/tests/libqtest.c
|
||||||
index fa314e1..a57e114 100644
|
index b12a9e4..8de01c0 100644
|
||||||
--- a/tests/libqtest.c
|
--- a/tests/libqtest.c
|
||||||
+++ b/tests/libqtest.c
|
+++ b/tests/libqtest.c
|
||||||
@@ -35,7 +35,7 @@
|
@@ -27,7 +27,7 @@
|
||||||
#include "qapi/qmp/qjson.h"
|
#include "qapi/qmp/qjson.h"
|
||||||
|
|
||||||
#define MAX_IRQ 256
|
#define MAX_IRQ 256
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 6849a7c84a7f2639b0c72ddc6581ff9d4a1c23f7 Mon Sep 17 00:00:00 2001
|
From f3e402fec7044aa773f5f6ced1381d6eed7ed2ca Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Wed, 14 Jan 2015 01:32:11 +0100
|
Date: Wed, 14 Jan 2015 01:32:11 +0100
|
||||||
Subject: [PATCH] AIO: Reduce number of threads for 32bit hosts
|
Subject: [PATCH] AIO: Reduce number of threads for 32bit hosts
|
||||||
@ -21,7 +21,7 @@ Signed-off-by: Alexander Graf <agraf@suse.de>
|
|||||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
diff --git a/thread-pool.c b/thread-pool.c
|
diff --git a/thread-pool.c b/thread-pool.c
|
||||||
index 402c778..3d06c69 100644
|
index 03ba0b0..b5b4fd3 100644
|
||||||
--- a/thread-pool.c
|
--- a/thread-pool.c
|
||||||
+++ b/thread-pool.c
|
+++ b/thread-pool.c
|
||||||
@@ -297,7 +297,12 @@ static void thread_pool_init_one(ThreadPool *pool, AioContext *ctx)
|
@@ -297,7 +297,12 @@ static void thread_pool_init_one(ThreadPool *pool, AioContext *ctx)
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 81b2f0411ac5660260d4d1b7ba527e969d5f9064 Mon Sep 17 00:00:00 2001
|
From dca270d601b43fe181da48f6b38b63f485634705 Mon Sep 17 00:00:00 2001
|
||||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
||||||
Date: Tue, 14 Apr 2015 18:42:06 +0200
|
Date: Tue, 14 Apr 2015 18:42:06 +0200
|
||||||
Subject: [PATCH] configure: Enable libseccomp for ppc
|
Subject: [PATCH] configure: Enable libseccomp for ppc
|
||||||
@ -14,10 +14,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
|||||||
1 file changed, 3 insertions(+)
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
diff --git a/configure b/configure
|
diff --git a/configure b/configure
|
||||||
index da33d72..d140392 100755
|
index 0df3fc0..81caff6 100755
|
||||||
--- a/configure
|
--- a/configure
|
||||||
+++ b/configure
|
+++ b/configure
|
||||||
@@ -1910,6 +1910,9 @@ if test "$seccomp" != "no" ; then
|
@@ -1875,6 +1875,9 @@ if test "$seccomp" != "no" ; then
|
||||||
arm|aarch64)
|
arm|aarch64)
|
||||||
libseccomp_minver="2.2.3"
|
libseccomp_minver="2.2.3"
|
||||||
;;
|
;;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
From 131c58925741584d7c0185aeba810d7be39f354c Mon Sep 17 00:00:00 2001
|
From 368cb4908724b4e855cb9bda37cb04284a39b116 Mon Sep 17 00:00:00 2001
|
||||||
From: Alexander Graf <agraf@suse.de>
|
From: Alexander Graf <agraf@suse.de>
|
||||||
Date: Mon, 15 Jun 2015 17:36:32 +0200
|
Date: Mon, 15 Jun 2015 17:36:32 +0200
|
||||||
Subject: [PATCH] dictzip: Fix on big endian systems
|
Subject: [PATCH] dictzip: Fix on big endian systems
|
||||||
@ -20,10 +20,10 @@ Signed-off-by: Andreas Färber <afaerber@suse.de>
|
|||||||
1 file changed, 28 insertions(+), 22 deletions(-)
|
1 file changed, 28 insertions(+), 22 deletions(-)
|
||||||
|
|
||||||
diff --git a/block/dictzip.c b/block/dictzip.c
|
diff --git a/block/dictzip.c b/block/dictzip.c
|
||||||
index 728d5b4..83484fd 100644
|
index 717a7d3..1a104ac 100644
|
||||||
--- a/block/dictzip.c
|
--- a/block/dictzip.c
|
||||||
+++ b/block/dictzip.c
|
+++ b/block/dictzip.c
|
||||||
@@ -154,6 +154,7 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
|
@@ -156,6 +156,7 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
|
||||||
uint8_t header_flags;
|
uint8_t header_flags;
|
||||||
uint16_t chunk_len16;
|
uint16_t chunk_len16;
|
||||||
uint16_t chunk_cnt16;
|
uint16_t chunk_cnt16;
|
||||||
@ -31,7 +31,7 @@ index 728d5b4..83484fd 100644
|
|||||||
uint16_t header_ver;
|
uint16_t header_ver;
|
||||||
uint16_t tmp_short;
|
uint16_t tmp_short;
|
||||||
uint64_t offset;
|
uint64_t offset;
|
||||||
@@ -253,11 +254,11 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
|
@@ -255,11 +256,11 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
|
||||||
break;
|
break;
|
||||||
case 99: /* Special Alex pigz version */
|
case 99: /* Special Alex pigz version */
|
||||||
/* number of chunks */
|
/* number of chunks */
|
||||||
@ -46,7 +46,7 @@ index 728d5b4..83484fd 100644
|
|||||||
|
|
||||||
/* chunk count */
|
/* chunk count */
|
||||||
if (bdrv_pread(s->hd, GZ_99_CHUNKCNT, &s->chunk_cnt, 4) != 4)
|
if (bdrv_pread(s->hd, GZ_99_CHUNKCNT, &s->chunk_cnt, 4) != 4)
|
||||||
@@ -265,7 +266,7 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
|
@@ -267,7 +268,7 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
|
||||||
|
|
||||||
s->chunk_cnt = le32_to_cpu(s->chunk_cnt);
|
s->chunk_cnt = le32_to_cpu(s->chunk_cnt);
|
||||||
|
|
||||||
@ -55,7 +55,7 @@ index 728d5b4..83484fd 100644
|
|||||||
|
|
||||||
/* file size */
|
/* file size */
|
||||||
if (bdrv_pread(s->hd, GZ_99_FILESIZE, &s->file_len, 8) != 8)
|
if (bdrv_pread(s->hd, GZ_99_FILESIZE, &s->file_len, 8) != 8)
|
||||||
@@ -336,14 +337,14 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
|
@@ -338,14 +339,14 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error *
|
||||||
s->offsets[i] = offset;
|
s->offsets[i] = offset;
|
||||||
switch (header_ver) {
|
switch (header_ver) {
|
||||||
case 1:
|
case 1:
|
||||||
@ -73,7 +73,7 @@ index 728d5b4..83484fd 100644
|
|||||||
}
|
}
|
||||||
qemu_opts_del(opts);
|
qemu_opts_del(opts);
|
||||||
|
|
||||||
@@ -377,10 +378,26 @@ static void dictzip_read_cb(void *opaque, int ret)
|
@@ -379,10 +380,26 @@ static void dictzip_read_cb(void *opaque, int ret)
|
||||||
struct BDRVDictZipState *s = acb->s;
|
struct BDRVDictZipState *s = acb->s;
|
||||||
uint8_t *buf;
|
uint8_t *buf;
|
||||||
DictCache *cache;
|
DictCache *cache;
|
||||||
@ -101,7 +101,7 @@ index 728d5b4..83484fd 100644
|
|||||||
/* uncompress the chunk */
|
/* uncompress the chunk */
|
||||||
acb->zStream->next_in = acb->gzipped;
|
acb->zStream->next_in = acb->gzipped;
|
||||||
acb->zStream->avail_in = acb->gz_len;
|
acb->zStream->avail_in = acb->gz_len;
|
||||||
@@ -466,17 +483,6 @@ static BlockAIOCB *dictzip_aio_readv(BlockDriverState *bs,
|
@@ -468,17 +485,6 @@ static BlockAIOCB *dictzip_aio_readv(BlockDriverState *bs,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* No cache, so let's decode */
|
/* No cache, so let's decode */
|
||||||
@ -119,7 +119,7 @@ index 728d5b4..83484fd 100644
|
|||||||
/* We need to read these chunks */
|
/* We need to read these chunks */
|
||||||
first_chunk = start / s->chunk_len;
|
first_chunk = start / s->chunk_len;
|
||||||
first_offset = start - first_chunk * s->chunk_len;
|
first_offset = start - first_chunk * s->chunk_len;
|
||||||
@@ -486,9 +492,9 @@ static BlockAIOCB *dictzip_aio_readv(BlockDriverState *bs,
|
@@ -488,9 +494,9 @@ static BlockAIOCB *dictzip_aio_readv(BlockDriverState *bs,
|
||||||
gz_len = 0;
|
gz_len = 0;
|
||||||
for (i = first_chunk; i <= last_chunk; i++) {
|
for (i = first_chunk; i <= last_chunk; i++) {
|
||||||
if (s->chunks32)
|
if (s->chunks32)
|
||||||
@ -131,7 +131,7 @@ index 728d5b4..83484fd 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
gz_sector_num = gz_start / SECTOR_SIZE;
|
gz_sector_num = gz_start / SECTOR_SIZE;
|
||||||
@@ -509,7 +515,7 @@ static BlockAIOCB *dictzip_aio_readv(BlockDriverState *bs,
|
@@ -511,7 +517,7 @@ static BlockAIOCB *dictzip_aio_readv(BlockDriverState *bs,
|
||||||
iov->iov_len = gz_nb_sectors * 512;
|
iov->iov_len = gz_nb_sectors * 512;
|
||||||
qemu_iovec_init_external(qiov_gz, iov, 1);
|
qemu_iovec_init_external(qiov_gz, iov, 1);
|
||||||
|
|
||||||
|
56
0039-block-split-large-discard-requests-.patch
Normal file
56
0039-block-split-large-discard-requests-.patch
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
From 88f6de6e8b1f91c71e56fa8125cc6fae2b53e725 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Olaf Hering <olaf@aepfle.de>
|
||||||
|
Date: Thu, 24 Mar 2016 14:32:39 +0100
|
||||||
|
Subject: [PATCH] block: split large discard requests from block frontend
|
||||||
|
|
||||||
|
Large discard requests lead to sign expansion errors in qemu.
|
||||||
|
Since there is no API to tell a guest about the limitations qmeu
|
||||||
|
has to split a large request itself.
|
||||||
|
|
||||||
|
[bsc#964427]
|
||||||
|
|
||||||
|
Signed-off-by: Olaf Hering <olaf@aepfle.de>
|
||||||
|
---
|
||||||
|
block/io.c | 22 +++++++++++++++++++++-
|
||||||
|
1 file changed, 21 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/block/io.c b/block/io.c
|
||||||
|
index c4869b9..5b6ed58 100644
|
||||||
|
--- a/block/io.c
|
||||||
|
+++ b/block/io.c
|
||||||
|
@@ -2442,7 +2442,7 @@ static void coroutine_fn bdrv_discard_co_entry(void *opaque)
|
||||||
|
rwco->ret = bdrv_co_discard(rwco->bs, rwco->sector_num, rwco->nb_sectors);
|
||||||
|
}
|
||||||
|
|
||||||
|
-int coroutine_fn bdrv_co_discard(BlockDriverState *bs, int64_t sector_num,
|
||||||
|
+static int __bdrv_co_discard(BlockDriverState *bs, int64_t sector_num,
|
||||||
|
int nb_sectors)
|
||||||
|
{
|
||||||
|
BdrvTrackedRequest req;
|
||||||
|
@@ -2524,6 +2524,26 @@ out:
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
+int coroutine_fn bdrv_co_discard(BlockDriverState *bs, int64_t sector_num,
|
||||||
|
+ int nb_sectors)
|
||||||
|
+{
|
||||||
|
+ int num, ret;
|
||||||
|
+ int limit = BDRV_REQUEST_MAX_SECTORS;
|
||||||
|
+ int remaining = nb_sectors;
|
||||||
|
+ int64_t sector_offset = sector_num;
|
||||||
|
+
|
||||||
|
+ do {
|
||||||
|
+ num = remaining > limit ? limit : remaining;
|
||||||
|
+ ret = __bdrv_co_discard(bs, sector_offset, num);
|
||||||
|
+ if (ret < 0)
|
||||||
|
+ break;
|
||||||
|
+ remaining -= num;
|
||||||
|
+ sector_offset += num;
|
||||||
|
+ } while (remaining > 0);
|
||||||
|
+
|
||||||
|
+ return ret;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
int bdrv_discard(BlockDriverState *bs, int64_t sector_num, int nb_sectors)
|
||||||
|
{
|
||||||
|
Coroutine *co;
|
65
0040-xen_disk-Add-suse-specific-flush-di.patch
Normal file
65
0040-xen_disk-Add-suse-specific-flush-di.patch
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
From 60d2b636c7dda2b2161ea963836b91b4af47021a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Bruce Rogers <brogers@suse.com>
|
||||||
|
Date: Wed, 9 Mar 2016 15:18:11 -0700
|
||||||
|
Subject: [PATCH] xen_disk: Add suse specific flush disable handling and map to
|
||||||
|
QEMU equiv
|
||||||
|
|
||||||
|
Add code to read the suse specific suse-diskcache-disable-flush flag out
|
||||||
|
of xenstore, and set the equivalent flag within QEMU.
|
||||||
|
|
||||||
|
Patch taken from Xen's patch queue, Olaf Hering being the original author.
|
||||||
|
[bsc#879425]
|
||||||
|
|
||||||
|
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||||
|
Signed-off-by: Olaf Hering <olaf@aepfle.de>
|
||||||
|
---
|
||||||
|
hw/block/xen_disk.c | 15 +++++++++++++++
|
||||||
|
1 file changed, 15 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/hw/block/xen_disk.c b/hw/block/xen_disk.c
|
||||||
|
index d4ce380..9100862 100644
|
||||||
|
--- a/hw/block/xen_disk.c
|
||||||
|
+++ b/hw/block/xen_disk.c
|
||||||
|
@@ -112,6 +112,7 @@ struct XenBlkDev {
|
||||||
|
int requests_inflight;
|
||||||
|
int requests_finished;
|
||||||
|
|
||||||
|
+ gboolean cache_unsafe;
|
||||||
|
/* Persistent grants extension */
|
||||||
|
gboolean feature_discard;
|
||||||
|
gboolean feature_persistent;
|
||||||
|
@@ -793,6 +794,16 @@ static void blk_parse_discard(struct XenBlkDev *blkdev)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
+static void blk_parse_cache_unsafe(struct XenBlkDev *blkdev)
|
||||||
|
+{
|
||||||
|
+ int enable;
|
||||||
|
+
|
||||||
|
+ blkdev->cache_unsafe = false;
|
||||||
|
+
|
||||||
|
+ if (xenstore_read_be_int(&blkdev->xendev, "suse-diskcache-disable-flush", &enable) == 0)
|
||||||
|
+ blkdev->cache_unsafe = !!enable;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
static int blk_init(struct XenDevice *xendev)
|
||||||
|
{
|
||||||
|
struct XenBlkDev *blkdev = container_of(xendev, struct XenBlkDev, xendev);
|
||||||
|
@@ -864,6 +875,7 @@ static int blk_init(struct XenDevice *xendev)
|
||||||
|
xenstore_write_be_int(&blkdev->xendev, "info", info);
|
||||||
|
|
||||||
|
blk_parse_discard(blkdev);
|
||||||
|
+ blk_parse_cache_unsafe(blkdev);
|
||||||
|
|
||||||
|
g_free(directiosafe);
|
||||||
|
return 0;
|
||||||
|
@@ -906,6 +918,9 @@ static int blk_connect(struct XenDevice *xendev)
|
||||||
|
qflags |= BDRV_O_UNMAP;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ if (blkdev->cache_unsafe)
|
||||||
|
+ qflags |= BDRV_O_NO_FLUSH;
|
||||||
|
+
|
||||||
|
/* init qemu block driver */
|
||||||
|
index = (blkdev->xendev.dev - 202 * 256) / 16;
|
||||||
|
blkdev->dinfo = drive_get(IF_XEN, 0, index);
|
27
0041-tests-Use-correct-config-param-for-.patch
Normal file
27
0041-tests-Use-correct-config-param-for-.patch
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
From e226abc9168f54fb53edcc1537ce77fc92b9ff26 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Bruce Rogers <brogers@suse.com>
|
||||||
|
Date: Thu, 31 Mar 2016 06:43:03 -0600
|
||||||
|
Subject: [PATCH] tests: Use correct config param for inclusion of
|
||||||
|
test-crypto-pbkdf test
|
||||||
|
|
||||||
|
It appears we have the wrong criteria for inclusion of the test-crypto-pbkdf
|
||||||
|
test. Fix to use CONFIG_NETTLE_KDF instead of CONFIG_NETTLE.
|
||||||
|
|
||||||
|
Signed-off-by: Bruce Rogers <brogers@suse.com>
|
||||||
|
---
|
||||||
|
tests/Makefile | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/tests/Makefile b/tests/Makefile
|
||||||
|
index 45b9048..651d8b2 100644
|
||||||
|
--- a/tests/Makefile
|
||||||
|
+++ b/tests/Makefile
|
||||||
|
@@ -92,7 +92,7 @@ check-unit-$(CONFIG_GNUTLS) += tests/test-io-channel-tls$(EXESUF)
|
||||||
|
check-unit-y += tests/test-io-channel-command$(EXESUF)
|
||||||
|
check-unit-y += tests/test-io-channel-buffer$(EXESUF)
|
||||||
|
check-unit-y += tests/test-base64$(EXESUF)
|
||||||
|
-check-unit-$(if $(CONFIG_NETTLE),y,$(CONFIG_GCRYPT_KDF)) += tests/test-crypto-pbkdf$(EXESUF)
|
||||||
|
+check-unit-$(if $(CONFIG_NETTLE_KDF),y,$(CONFIG_GCRYPT_KDF)) += tests/test-crypto-pbkdf$(EXESUF)
|
||||||
|
check-unit-y += tests/test-crypto-ivgen$(EXESUF)
|
||||||
|
check-unit-y += tests/test-crypto-afsplit$(EXESUF)
|
||||||
|
check-unit-y += tests/test-crypto-xts$(EXESUF)
|
53
0042-build-link-with-libatomic-on-powerp.patch
Normal file
53
0042-build-link-with-libatomic-on-powerp.patch
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
From 014f615b4a8e48ab8b9630b297e1e4283c9de623 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Olaf Hering <olaf@aepfle.de>
|
||||||
|
Date: Fri, 1 Apr 2016 12:27:16 +0200
|
||||||
|
Subject: [PATCH] build: link with libatomic on powerpc-linux
|
||||||
|
|
||||||
|
Building on powerpc-linux fails with undefined reference to
|
||||||
|
__atomic_load_8 in icount_warp_rt(). Force linking to -latomic.
|
||||||
|
|
||||||
|
Fixes a0aa44b ("include/qemu/atomic.h: default to __atomic functions")
|
||||||
|
|
||||||
|
Signed-off-by: Olaf Hering <olaf@aepfle.de>
|
||||||
|
---
|
||||||
|
configure | 27 +++++++++++++++++++++++++++
|
||||||
|
1 file changed, 27 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/configure b/configure
|
||||||
|
index 81caff6..2589044 100755
|
||||||
|
--- a/configure
|
||||||
|
+++ b/configure
|
||||||
|
@@ -4025,6 +4025,33 @@ if test "$usb_redir" != "no" ; then
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
+if test "$linux_user" = "no" -a "$cpu" = "ppc" -a "$targetos" = "Linux" ; then
|
||||||
|
+ # Do we need libm
|
||||||
|
+ cat > $TMPC << EOF
|
||||||
|
+ #include <unistd.h>
|
||||||
|
+ #include <stdint.h>
|
||||||
|
+ #include <qemu/atomic.h>
|
||||||
|
+ int64_t val;
|
||||||
|
+ int main(int argc, char **argv)
|
||||||
|
+ {
|
||||||
|
+ val = (int64_t)read(0, NULL, 0);
|
||||||
|
+ if (atomic_read(&val) == -1) {
|
||||||
|
+ return 0;
|
||||||
|
+ }
|
||||||
|
+ return 1;
|
||||||
|
+ }
|
||||||
|
+EOF
|
||||||
|
+ if compile_prog "-Iinclude" "" ; then
|
||||||
|
+ :
|
||||||
|
+ echo "No need to link with -latomic on powerpc-linux"
|
||||||
|
+ elif compile_prog "-Iinclude" "-latomic" ; then
|
||||||
|
+ echo "Link with -latomic on powerpc-linux"
|
||||||
|
+ libs_softmmu="$libs_softmmu -latomic"
|
||||||
|
+ else
|
||||||
|
+ error_exit "libatomic check failed"
|
||||||
|
+ fi
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
##########################################
|
||||||
|
# check if we have VSS SDK headers for win
|
||||||
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:3443887401619fe33bfa5d900a4f2d6a79425ae2b7e43d5b8c36eb7a683772d4
|
|
||||||
size 25464996
|
|
Binary file not shown.
3
qemu-2.6.0-rc0.tar.bz2
Normal file
3
qemu-2.6.0-rc0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:9eb223cb01207e8f1130f05af627e2708311db8322fec066b97d94c749c2315c
|
||||||
|
size 25761212
|
BIN
qemu-2.6.0-rc0.tar.bz2.sig
Normal file
BIN
qemu-2.6.0-rc0.tar.bz2.sig
Normal file
Binary file not shown.
@ -1,3 +1,20 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 1 11:13:07 UTC 2016 - olaf@aepfle.de
|
||||||
|
|
||||||
|
- Update to v2.6.0-rc0: See http://wiki.qemu-project.org/ChangeLog/2.6
|
||||||
|
* Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||||
|
* Accept every size in DISCARD request from a guest (bsc#964427)
|
||||||
|
0039-block-split-large-discard-requests-.patch
|
||||||
|
* Recognize libxl flag to disable flush in block device (bsc#879425)
|
||||||
|
0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||||
|
* Use correct flag for crypto tests
|
||||||
|
0041-tests-Use-correct-config-param-for-.patch
|
||||||
|
* Fix build on powerpc:
|
||||||
|
0042-build-link-with-libatomic-on-powerp.patch
|
||||||
|
* Patches dropped (upstreamed):
|
||||||
|
seabios_checkrom_typo.patch
|
||||||
|
seabios_avoid_smbios_signature_string.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Jan 8 14:54:26 UTC 2016 - afaerber@suse.de
|
Fri Jan 8 14:54:26 UTC 2016 - afaerber@suse.de
|
||||||
|
|
||||||
|
@ -21,9 +21,9 @@ Url: http://www.qemu.org/
|
|||||||
Summary: Universal CPU emulator
|
Summary: Universal CPU emulator
|
||||||
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
|
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
|
||||||
Group: System/Emulators/PC
|
Group: System/Emulators/PC
|
||||||
Version: 2.5.0
|
Version: 2.5.90
|
||||||
Release: 0
|
Release: 0
|
||||||
Source: http://wiki.qemu.org/download/qemu-2.5.0.tar.bz2
|
Source: http://wiki.qemu.org/download/qemu-2.6.0-rc0.tar.bz2
|
||||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||||
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
|
Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch
|
||||||
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
|
Patch0002: 0002-XXX-work-around-SA_RESTART-race-wit.patch
|
||||||
@ -63,6 +63,10 @@ Patch0035: 0035-qtest-Increase-socket-timeout.patch
|
|||||||
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
|
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
|
||||||
Patch0037: 0037-configure-Enable-libseccomp-for-ppc.patch
|
Patch0037: 0037-configure-Enable-libseccomp-for-ppc.patch
|
||||||
Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
||||||
|
Patch0039: 0039-block-split-large-discard-requests-.patch
|
||||||
|
Patch0040: 0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||||
|
Patch0041: 0041-tests-Use-correct-config-param-for-.patch
|
||||||
|
Patch0042: 0042-build-link-with-libatomic-on-powerp.patch
|
||||||
# Please do not add patches manually here, run update_git.sh.
|
# Please do not add patches manually here, run update_git.sh.
|
||||||
# this is to make lint happy
|
# this is to make lint happy
|
||||||
Source300: qemu-rpmlintrc
|
Source300: qemu-rpmlintrc
|
||||||
@ -115,7 +119,7 @@ emulations. This can be used together with the OBS build script to
|
|||||||
run cross-architecture builds.
|
run cross-architecture builds.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n qemu-2.5.0
|
%setup -q -n qemu-2.6.0-rc0
|
||||||
%patch0001 -p1
|
%patch0001 -p1
|
||||||
%patch0002 -p1
|
%patch0002 -p1
|
||||||
%patch0003 -p1
|
%patch0003 -p1
|
||||||
@ -154,6 +158,10 @@ run cross-architecture builds.
|
|||||||
%patch0036 -p1
|
%patch0036 -p1
|
||||||
%patch0037 -p1
|
%patch0037 -p1
|
||||||
%patch0038 -p1
|
%patch0038 -p1
|
||||||
|
%patch0039 -p1
|
||||||
|
%patch0040 -p1
|
||||||
|
%patch0041 -p1
|
||||||
|
%patch0042 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
|
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
|
||||||
|
@ -23,7 +23,7 @@ License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
|
|||||||
Group: System/Emulators/PC
|
Group: System/Emulators/PC
|
||||||
QEMU_VERSION
|
QEMU_VERSION
|
||||||
Release: 0
|
Release: 0
|
||||||
Source: http://wiki.qemu.org/download/qemu-2.5.0.tar.bz2
|
Source: http://wiki.qemu.org/download/qemu-2.6.0-rc0.tar.bz2
|
||||||
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
# This patch queue is auto-generated from https://github.com/openSUSE/qemu
|
||||||
PATCH_FILES
|
PATCH_FILES
|
||||||
# Please do not add patches manually here, run update_git.sh.
|
# Please do not add patches manually here, run update_git.sh.
|
||||||
@ -78,7 +78,7 @@ emulations. This can be used together with the OBS build script to
|
|||||||
run cross-architecture builds.
|
run cross-architecture builds.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n qemu-2.5.0
|
%setup -q -n qemu-2.6.0-rc0
|
||||||
PATCH_EXEC
|
PATCH_EXEC
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
@ -1,3 +1,20 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 1 11:13:07 UTC 2016 - olaf@aepfle.de
|
||||||
|
|
||||||
|
- Update to v2.6.0-rc0: See http://wiki.qemu-project.org/ChangeLog/2.6
|
||||||
|
* Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||||
|
* Accept every size in DISCARD request from a guest (bsc#964427)
|
||||||
|
0039-block-split-large-discard-requests-.patch
|
||||||
|
* Recognize libxl flag to disable flush in block device (bsc#879425)
|
||||||
|
0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||||
|
* Use correct flag for crypto tests
|
||||||
|
0041-tests-Use-correct-config-param-for-.patch
|
||||||
|
* Fix build on powerpc:
|
||||||
|
0042-build-link-with-libatomic-on-powerp.patch
|
||||||
|
* Patches dropped (upstreamed):
|
||||||
|
seabios_checkrom_typo.patch
|
||||||
|
seabios_avoid_smbios_signature_string.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Feb 9 17:08:21 UTC 2016 - afaerber@suse.de
|
Tue Feb 9 17:08:21 UTC 2016 - afaerber@suse.de
|
||||||
|
|
||||||
|
@ -51,10 +51,10 @@ Url: http://www.qemu.org/
|
|||||||
Summary: Universal CPU emulator
|
Summary: Universal CPU emulator
|
||||||
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
|
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
|
||||||
Group: System/Emulators/PC
|
Group: System/Emulators/PC
|
||||||
Version: 2.5.0
|
Version: 2.5.90
|
||||||
Release: 0
|
Release: 0
|
||||||
Source: http://wiki.qemu.org/download/qemu-2.5.0.tar.bz2
|
Source: http://wiki.qemu.org/download/qemu-2.6.0-rc0.tar.bz2
|
||||||
Source99: http://wiki.qemu.org/download/qemu-2.5.0.tar.bz2.sig
|
Source99: http://wiki.qemu.org/download/qemu-2.6.0-rc0.tar.bz2.sig
|
||||||
Source1: 80-kvm.rules
|
Source1: 80-kvm.rules
|
||||||
Source2: qemu-ifup
|
Source2: qemu-ifup
|
||||||
Source3: kvm_stat
|
Source3: kvm_stat
|
||||||
@ -104,6 +104,10 @@ Patch0035: 0035-qtest-Increase-socket-timeout.patch
|
|||||||
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
|
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
|
||||||
Patch0037: 0037-configure-Enable-libseccomp-for-ppc.patch
|
Patch0037: 0037-configure-Enable-libseccomp-for-ppc.patch
|
||||||
Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
||||||
|
Patch0039: 0039-block-split-large-discard-requests-.patch
|
||||||
|
Patch0040: 0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||||
|
Patch0041: 0041-tests-Use-correct-config-param-for-.patch
|
||||||
|
Patch0042: 0042-build-link-with-libatomic-on-powerp.patch
|
||||||
# Please do not add QEMU patches manually here.
|
# Please do not add QEMU patches manually here.
|
||||||
# Run update_git.sh to regenerate this queue.
|
# Run update_git.sh to regenerate this queue.
|
||||||
|
|
||||||
@ -111,9 +115,6 @@ Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
|||||||
%if %{build_x86_fw_from_source}
|
%if %{build_x86_fw_from_source}
|
||||||
# PATCH-FIX-OPENSUSE seabios_128kb.patch brogers@suse.com -- make it fit
|
# PATCH-FIX-OPENSUSE seabios_128kb.patch brogers@suse.com -- make it fit
|
||||||
Patch1000: seabios_128kb.patch
|
Patch1000: seabios_128kb.patch
|
||||||
# PATCH-FIX-UPSTREAM seabios_checkrom_typo.patch afaerber@suse.de -- tidy error message
|
|
||||||
Patch1001: seabios_checkrom_typo.patch
|
|
||||||
Patch1002: seabios_avoid_smbios_signature_string.patch
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# this is to make lint happy
|
# this is to make lint happy
|
||||||
@ -279,8 +280,8 @@ Suggests: qemu-lang
|
|||||||
Recommends: qemu-ksm = %{version}
|
Recommends: qemu-ksm = %{version}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%define built_firmware_files {acpi-dsdt.aml bios.bin bios-256k.bin \
|
%define built_firmware_files {bios.bin bios-256k.bin \
|
||||||
q35-acpi-dsdt.aml sgabios.bin vgabios.bin vgabios-cirrus.bin \
|
sgabios.bin vgabios.bin vgabios-cirrus.bin \
|
||||||
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
|
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
|
||||||
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
|
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
|
||||||
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
|
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
|
||||||
@ -518,7 +519,7 @@ This sub-package contains the guest agent.
|
|||||||
%package seabios
|
%package seabios
|
||||||
Summary: X86 BIOS for QEMU
|
Summary: X86 BIOS for QEMU
|
||||||
Group: System/Emulators/PC
|
Group: System/Emulators/PC
|
||||||
Version: 1.8.2
|
Version: 1.9.1
|
||||||
Release: 0
|
Release: 0
|
||||||
%if 0%{?suse_version} > %{noarch_supported}
|
%if 0%{?suse_version} > %{noarch_supported}
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
@ -532,7 +533,7 @@ is the default BIOS for QEMU.
|
|||||||
%package vgabios
|
%package vgabios
|
||||||
Summary: VGA BIOSes for QEMU
|
Summary: VGA BIOSes for QEMU
|
||||||
Group: System/Emulators/PC
|
Group: System/Emulators/PC
|
||||||
Version: 1.8.2
|
Version: 1.9.1
|
||||||
Release: 0
|
Release: 0
|
||||||
%if 0%{?suse_version} > %{noarch_supported}
|
%if 0%{?suse_version} > %{noarch_supported}
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
@ -589,7 +590,7 @@ This package provides a service file for starting and stopping KSM.
|
|||||||
%endif # !qemu-testsuite
|
%endif # !qemu-testsuite
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n qemu-2.5.0
|
%setup -q -n qemu-2.6.0-rc0
|
||||||
%patch0001 -p1
|
%patch0001 -p1
|
||||||
%patch0002 -p1
|
%patch0002 -p1
|
||||||
%patch0003 -p1
|
%patch0003 -p1
|
||||||
@ -628,12 +629,14 @@ This package provides a service file for starting and stopping KSM.
|
|||||||
%patch0036 -p1
|
%patch0036 -p1
|
||||||
%patch0037 -p1
|
%patch0037 -p1
|
||||||
%patch0038 -p1
|
%patch0038 -p1
|
||||||
|
%patch0039 -p1
|
||||||
|
%patch0040 -p1
|
||||||
|
%patch0041 -p1
|
||||||
|
%patch0042 -p1
|
||||||
|
|
||||||
%if %{build_x86_fw_from_source}
|
%if %{build_x86_fw_from_source}
|
||||||
pushd roms/seabios
|
pushd roms/seabios
|
||||||
%patch1000 -p1
|
%patch1000 -p1
|
||||||
%patch1001 -p1
|
|
||||||
%patch1002 -p1
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# as a safeguard, delete the firmware files that we intend to build
|
# as a safeguard, delete the firmware files that we intend to build
|
||||||
@ -648,12 +651,13 @@ rm -f pc-bios/slof.bin
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%build
|
%build
|
||||||
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
|
./configure \
|
||||||
|
--prefix=%_prefix \
|
||||||
|
--sysconfdir=%_sysconfdir \
|
||||||
--libdir=%_libdir \
|
--libdir=%_libdir \
|
||||||
--libexecdir=%_libexecdir \
|
--libexecdir=%_libexecdir \
|
||||||
--localstatedir=%_localstatedir \
|
--localstatedir=%_localstatedir \
|
||||||
--extra-cflags="%{optflags}" \
|
--extra-cflags="%{optflags}" \
|
||||||
--disable-strip \
|
|
||||||
--enable-system --disable-linux-user \
|
--enable-system --disable-linux-user \
|
||||||
--enable-tools --enable-guest-agent \
|
--enable-tools --enable-guest-agent \
|
||||||
--enable-modules \
|
--enable-modules \
|
||||||
@ -778,9 +782,12 @@ rm -f pc-bios/slof.bin
|
|||||||
%ifarch x86_64
|
%ifarch x86_64
|
||||||
--enable-xen \
|
--enable-xen \
|
||||||
--enable-xen-pci-passthrough \
|
--enable-xen-pci-passthrough \
|
||||||
|
--enable-xen-pv-domain-build \
|
||||||
%else
|
%else
|
||||||
--disable-xen \
|
--disable-xen \
|
||||||
%endif
|
%endif
|
||||||
|
\
|
||||||
|
--disable-strip
|
||||||
|
|
||||||
%if "%{name}" != "qemu-testsuite"
|
%if "%{name}" != "qemu-testsuite"
|
||||||
|
|
||||||
@ -788,13 +795,13 @@ make %{?_smp_mflags} V=1
|
|||||||
|
|
||||||
# Firmware
|
# Firmware
|
||||||
%if %{build_x86_fw_from_source}
|
%if %{build_x86_fw_from_source}
|
||||||
make -C roms bios
|
make %{?_smp_mflags} -C roms bios
|
||||||
make -C roms seavgabios
|
make %{?_smp_mflags} -C roms seavgabios
|
||||||
make -C roms pxerom
|
make %{?_smp_mflags} -C roms pxerom
|
||||||
make -C roms sgabios
|
make -C roms sgabios
|
||||||
%endif
|
%endif
|
||||||
%if %{build_slof_from_source}
|
%if %{build_slof_from_source}
|
||||||
make -C roms slof
|
make %{?_smp_mflags} -C roms slof
|
||||||
%endif
|
%endif
|
||||||
%ifarch s390x
|
%ifarch s390x
|
||||||
cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img
|
cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img
|
||||||
@ -869,7 +876,7 @@ format=`qemu-img info test.tar | grep "file format:" | cut -d ':' -f 2 | tr -d '
|
|||||||
make install DESTDIR=$RPM_BUILD_ROOT
|
make install DESTDIR=$RPM_BUILD_ROOT
|
||||||
rm -fr $RPM_BUILD_ROOT/%_datadir/doc
|
rm -fr $RPM_BUILD_ROOT/%_datadir/doc
|
||||||
%if ! %{build_x86_fw_from_source}
|
%if ! %{build_x86_fw_from_source}
|
||||||
for f in acpi-dsdt.aml q35-acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
|
for f in acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
|
||||||
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
|
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
|
||||||
vgabios.bin; do
|
vgabios.bin; do
|
||||||
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
|
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
|
||||||
@ -1026,7 +1033,6 @@ fi
|
|||||||
%files s390
|
%files s390
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
%_bindir/qemu-system-s390x
|
%_bindir/qemu-system-s390x
|
||||||
%_datadir/%name/s390-zipl.rom
|
|
||||||
%_datadir/%name/s390-ccw.img
|
%_datadir/%name/s390-ccw.img
|
||||||
|
|
||||||
%files arm
|
%files arm
|
||||||
@ -1101,7 +1107,6 @@ fi
|
|||||||
%_datadir/%name/bios.bin
|
%_datadir/%name/bios.bin
|
||||||
%_datadir/%name/bios-256k.bin
|
%_datadir/%name/bios-256k.bin
|
||||||
%_datadir/%name/acpi-dsdt.aml
|
%_datadir/%name/acpi-dsdt.aml
|
||||||
%_datadir/%name/q35-acpi-dsdt.aml
|
|
||||||
|
|
||||||
%files vgabios
|
%files vgabios
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
|
17
qemu.changes
17
qemu.changes
@ -1,3 +1,20 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 1 11:13:07 UTC 2016 - olaf@aepfle.de
|
||||||
|
|
||||||
|
- Update to v2.6.0-rc0: See http://wiki.qemu-project.org/ChangeLog/2.6
|
||||||
|
* Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.6
|
||||||
|
* Accept every size in DISCARD request from a guest (bsc#964427)
|
||||||
|
0039-block-split-large-discard-requests-.patch
|
||||||
|
* Recognize libxl flag to disable flush in block device (bsc#879425)
|
||||||
|
0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||||
|
* Use correct flag for crypto tests
|
||||||
|
0041-tests-Use-correct-config-param-for-.patch
|
||||||
|
* Fix build on powerpc:
|
||||||
|
0042-build-link-with-libatomic-on-powerp.patch
|
||||||
|
* Patches dropped (upstreamed):
|
||||||
|
seabios_checkrom_typo.patch
|
||||||
|
seabios_avoid_smbios_signature_string.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Feb 9 17:08:21 UTC 2016 - afaerber@suse.de
|
Tue Feb 9 17:08:21 UTC 2016 - afaerber@suse.de
|
||||||
|
|
||||||
|
51
qemu.spec
51
qemu.spec
@ -51,10 +51,10 @@ Url: http://www.qemu.org/
|
|||||||
Summary: Universal CPU emulator
|
Summary: Universal CPU emulator
|
||||||
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
|
License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
|
||||||
Group: System/Emulators/PC
|
Group: System/Emulators/PC
|
||||||
Version: 2.5.0
|
Version: 2.5.90
|
||||||
Release: 0
|
Release: 0
|
||||||
Source: http://wiki.qemu.org/download/qemu-2.5.0.tar.bz2
|
Source: http://wiki.qemu.org/download/qemu-2.6.0-rc0.tar.bz2
|
||||||
Source99: http://wiki.qemu.org/download/qemu-2.5.0.tar.bz2.sig
|
Source99: http://wiki.qemu.org/download/qemu-2.6.0-rc0.tar.bz2.sig
|
||||||
Source1: 80-kvm.rules
|
Source1: 80-kvm.rules
|
||||||
Source2: qemu-ifup
|
Source2: qemu-ifup
|
||||||
Source3: kvm_stat
|
Source3: kvm_stat
|
||||||
@ -104,6 +104,10 @@ Patch0035: 0035-qtest-Increase-socket-timeout.patch
|
|||||||
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
|
Patch0036: 0036-AIO-Reduce-number-of-threads-for-32.patch
|
||||||
Patch0037: 0037-configure-Enable-libseccomp-for-ppc.patch
|
Patch0037: 0037-configure-Enable-libseccomp-for-ppc.patch
|
||||||
Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
||||||
|
Patch0039: 0039-block-split-large-discard-requests-.patch
|
||||||
|
Patch0040: 0040-xen_disk-Add-suse-specific-flush-di.patch
|
||||||
|
Patch0041: 0041-tests-Use-correct-config-param-for-.patch
|
||||||
|
Patch0042: 0042-build-link-with-libatomic-on-powerp.patch
|
||||||
# Please do not add QEMU patches manually here.
|
# Please do not add QEMU patches manually here.
|
||||||
# Run update_git.sh to regenerate this queue.
|
# Run update_git.sh to regenerate this queue.
|
||||||
|
|
||||||
@ -111,9 +115,6 @@ Patch0038: 0038-dictzip-Fix-on-big-endian-systems.patch
|
|||||||
%if %{build_x86_fw_from_source}
|
%if %{build_x86_fw_from_source}
|
||||||
# PATCH-FIX-OPENSUSE seabios_128kb.patch brogers@suse.com -- make it fit
|
# PATCH-FIX-OPENSUSE seabios_128kb.patch brogers@suse.com -- make it fit
|
||||||
Patch1000: seabios_128kb.patch
|
Patch1000: seabios_128kb.patch
|
||||||
# PATCH-FIX-UPSTREAM seabios_checkrom_typo.patch afaerber@suse.de -- tidy error message
|
|
||||||
Patch1001: seabios_checkrom_typo.patch
|
|
||||||
Patch1002: seabios_avoid_smbios_signature_string.patch
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# this is to make lint happy
|
# this is to make lint happy
|
||||||
@ -279,8 +280,8 @@ Suggests: qemu-lang
|
|||||||
Recommends: qemu-ksm = %{version}
|
Recommends: qemu-ksm = %{version}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%define built_firmware_files {acpi-dsdt.aml bios.bin bios-256k.bin \
|
%define built_firmware_files {bios.bin bios-256k.bin \
|
||||||
q35-acpi-dsdt.aml sgabios.bin vgabios.bin vgabios-cirrus.bin \
|
sgabios.bin vgabios.bin vgabios-cirrus.bin \
|
||||||
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
|
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
|
||||||
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
|
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
|
||||||
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
|
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
|
||||||
@ -518,7 +519,7 @@ This sub-package contains the guest agent.
|
|||||||
%package seabios
|
%package seabios
|
||||||
Summary: X86 BIOS for QEMU
|
Summary: X86 BIOS for QEMU
|
||||||
Group: System/Emulators/PC
|
Group: System/Emulators/PC
|
||||||
Version: 1.8.2
|
Version: 1.9.1
|
||||||
Release: 0
|
Release: 0
|
||||||
%if 0%{?suse_version} > %{noarch_supported}
|
%if 0%{?suse_version} > %{noarch_supported}
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
@ -532,7 +533,7 @@ is the default BIOS for QEMU.
|
|||||||
%package vgabios
|
%package vgabios
|
||||||
Summary: VGA BIOSes for QEMU
|
Summary: VGA BIOSes for QEMU
|
||||||
Group: System/Emulators/PC
|
Group: System/Emulators/PC
|
||||||
Version: 1.8.2
|
Version: 1.9.1
|
||||||
Release: 0
|
Release: 0
|
||||||
%if 0%{?suse_version} > %{noarch_supported}
|
%if 0%{?suse_version} > %{noarch_supported}
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
@ -589,7 +590,7 @@ This package provides a service file for starting and stopping KSM.
|
|||||||
%endif # !qemu-testsuite
|
%endif # !qemu-testsuite
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n qemu-2.5.0
|
%setup -q -n qemu-2.6.0-rc0
|
||||||
%patch0001 -p1
|
%patch0001 -p1
|
||||||
%patch0002 -p1
|
%patch0002 -p1
|
||||||
%patch0003 -p1
|
%patch0003 -p1
|
||||||
@ -628,12 +629,14 @@ This package provides a service file for starting and stopping KSM.
|
|||||||
%patch0036 -p1
|
%patch0036 -p1
|
||||||
%patch0037 -p1
|
%patch0037 -p1
|
||||||
%patch0038 -p1
|
%patch0038 -p1
|
||||||
|
%patch0039 -p1
|
||||||
|
%patch0040 -p1
|
||||||
|
%patch0041 -p1
|
||||||
|
%patch0042 -p1
|
||||||
|
|
||||||
%if %{build_x86_fw_from_source}
|
%if %{build_x86_fw_from_source}
|
||||||
pushd roms/seabios
|
pushd roms/seabios
|
||||||
%patch1000 -p1
|
%patch1000 -p1
|
||||||
%patch1001 -p1
|
|
||||||
%patch1002 -p1
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# as a safeguard, delete the firmware files that we intend to build
|
# as a safeguard, delete the firmware files that we intend to build
|
||||||
@ -648,12 +651,13 @@ rm -f pc-bios/slof.bin
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%build
|
%build
|
||||||
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
|
./configure \
|
||||||
|
--prefix=%_prefix \
|
||||||
|
--sysconfdir=%_sysconfdir \
|
||||||
--libdir=%_libdir \
|
--libdir=%_libdir \
|
||||||
--libexecdir=%_libexecdir \
|
--libexecdir=%_libexecdir \
|
||||||
--localstatedir=%_localstatedir \
|
--localstatedir=%_localstatedir \
|
||||||
--extra-cflags="%{optflags}" \
|
--extra-cflags="%{optflags}" \
|
||||||
--disable-strip \
|
|
||||||
--enable-system --disable-linux-user \
|
--enable-system --disable-linux-user \
|
||||||
--enable-tools --enable-guest-agent \
|
--enable-tools --enable-guest-agent \
|
||||||
--enable-modules \
|
--enable-modules \
|
||||||
@ -778,9 +782,12 @@ rm -f pc-bios/slof.bin
|
|||||||
%ifarch x86_64
|
%ifarch x86_64
|
||||||
--enable-xen \
|
--enable-xen \
|
||||||
--enable-xen-pci-passthrough \
|
--enable-xen-pci-passthrough \
|
||||||
|
--enable-xen-pv-domain-build \
|
||||||
%else
|
%else
|
||||||
--disable-xen \
|
--disable-xen \
|
||||||
%endif
|
%endif
|
||||||
|
\
|
||||||
|
--disable-strip
|
||||||
|
|
||||||
%if "%{name}" != "qemu-testsuite"
|
%if "%{name}" != "qemu-testsuite"
|
||||||
|
|
||||||
@ -788,13 +795,13 @@ make %{?_smp_mflags} V=1
|
|||||||
|
|
||||||
# Firmware
|
# Firmware
|
||||||
%if %{build_x86_fw_from_source}
|
%if %{build_x86_fw_from_source}
|
||||||
make -C roms bios
|
make %{?_smp_mflags} -C roms bios
|
||||||
make -C roms seavgabios
|
make %{?_smp_mflags} -C roms seavgabios
|
||||||
make -C roms pxerom
|
make %{?_smp_mflags} -C roms pxerom
|
||||||
make -C roms sgabios
|
make -C roms sgabios
|
||||||
%endif
|
%endif
|
||||||
%if %{build_slof_from_source}
|
%if %{build_slof_from_source}
|
||||||
make -C roms slof
|
make %{?_smp_mflags} -C roms slof
|
||||||
%endif
|
%endif
|
||||||
%ifarch s390x
|
%ifarch s390x
|
||||||
cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img
|
cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img
|
||||||
@ -869,7 +876,7 @@ format=`qemu-img info test.tar | grep "file format:" | cut -d ':' -f 2 | tr -d '
|
|||||||
make install DESTDIR=$RPM_BUILD_ROOT
|
make install DESTDIR=$RPM_BUILD_ROOT
|
||||||
rm -fr $RPM_BUILD_ROOT/%_datadir/doc
|
rm -fr $RPM_BUILD_ROOT/%_datadir/doc
|
||||||
%if ! %{build_x86_fw_from_source}
|
%if ! %{build_x86_fw_from_source}
|
||||||
for f in acpi-dsdt.aml q35-acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
|
for f in acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
|
||||||
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
|
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
|
||||||
vgabios.bin; do
|
vgabios.bin; do
|
||||||
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
|
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
|
||||||
@ -1026,7 +1033,6 @@ fi
|
|||||||
%files s390
|
%files s390
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
%_bindir/qemu-system-s390x
|
%_bindir/qemu-system-s390x
|
||||||
%_datadir/%name/s390-zipl.rom
|
|
||||||
%_datadir/%name/s390-ccw.img
|
%_datadir/%name/s390-ccw.img
|
||||||
|
|
||||||
%files arm
|
%files arm
|
||||||
@ -1101,7 +1107,6 @@ fi
|
|||||||
%_datadir/%name/bios.bin
|
%_datadir/%name/bios.bin
|
||||||
%_datadir/%name/bios-256k.bin
|
%_datadir/%name/bios-256k.bin
|
||||||
%_datadir/%name/acpi-dsdt.aml
|
%_datadir/%name/acpi-dsdt.aml
|
||||||
%_datadir/%name/q35-acpi-dsdt.aml
|
|
||||||
|
|
||||||
%files vgabios
|
%files vgabios
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
|
37
qemu.spec.in
37
qemu.spec.in
@ -53,8 +53,8 @@ License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT
|
|||||||
Group: System/Emulators/PC
|
Group: System/Emulators/PC
|
||||||
QEMU_VERSION
|
QEMU_VERSION
|
||||||
Release: 0
|
Release: 0
|
||||||
Source: http://wiki.qemu.org/download/qemu-2.5.0.tar.bz2
|
Source: http://wiki.qemu.org/download/qemu-2.6.0-rc0.tar.bz2
|
||||||
Source99: http://wiki.qemu.org/download/qemu-2.5.0.tar.bz2.sig
|
Source99: http://wiki.qemu.org/download/qemu-2.6.0-rc0.tar.bz2.sig
|
||||||
Source1: 80-kvm.rules
|
Source1: 80-kvm.rules
|
||||||
Source2: qemu-ifup
|
Source2: qemu-ifup
|
||||||
Source3: kvm_stat
|
Source3: kvm_stat
|
||||||
@ -74,9 +74,6 @@ PATCH_FILES
|
|||||||
%if %{build_x86_fw_from_source}
|
%if %{build_x86_fw_from_source}
|
||||||
# PATCH-FIX-OPENSUSE seabios_128kb.patch brogers@suse.com -- make it fit
|
# PATCH-FIX-OPENSUSE seabios_128kb.patch brogers@suse.com -- make it fit
|
||||||
Patch1000: seabios_128kb.patch
|
Patch1000: seabios_128kb.patch
|
||||||
# PATCH-FIX-UPSTREAM seabios_checkrom_typo.patch afaerber@suse.de -- tidy error message
|
|
||||||
Patch1001: seabios_checkrom_typo.patch
|
|
||||||
Patch1002: seabios_avoid_smbios_signature_string.patch
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# this is to make lint happy
|
# this is to make lint happy
|
||||||
@ -242,8 +239,8 @@ Suggests: qemu-lang
|
|||||||
Recommends: qemu-ksm = %{version}
|
Recommends: qemu-ksm = %{version}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%define built_firmware_files {acpi-dsdt.aml bios.bin bios-256k.bin \
|
%define built_firmware_files {bios.bin bios-256k.bin \
|
||||||
q35-acpi-dsdt.aml sgabios.bin vgabios.bin vgabios-cirrus.bin \
|
sgabios.bin vgabios.bin vgabios-cirrus.bin \
|
||||||
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
|
vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin vgabios-qxl.bin \
|
||||||
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
|
optionrom/linuxboot.bin optionrom/multiboot.bin optionrom/kvmvapic.bin \
|
||||||
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
|
pxe-e1000.rom pxe-pcnet.rom pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom}
|
||||||
@ -552,14 +549,12 @@ This package provides a service file for starting and stopping KSM.
|
|||||||
%endif # !qemu-testsuite
|
%endif # !qemu-testsuite
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n qemu-2.5.0
|
%setup -q -n qemu-2.6.0-rc0
|
||||||
PATCH_EXEC
|
PATCH_EXEC
|
||||||
|
|
||||||
%if %{build_x86_fw_from_source}
|
%if %{build_x86_fw_from_source}
|
||||||
pushd roms/seabios
|
pushd roms/seabios
|
||||||
%patch1000 -p1
|
%patch1000 -p1
|
||||||
%patch1001 -p1
|
|
||||||
%patch1002 -p1
|
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# as a safeguard, delete the firmware files that we intend to build
|
# as a safeguard, delete the firmware files that we intend to build
|
||||||
@ -574,12 +569,13 @@ rm -f pc-bios/slof.bin
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%build
|
%build
|
||||||
./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \
|
./configure \
|
||||||
|
--prefix=%_prefix \
|
||||||
|
--sysconfdir=%_sysconfdir \
|
||||||
--libdir=%_libdir \
|
--libdir=%_libdir \
|
||||||
--libexecdir=%_libexecdir \
|
--libexecdir=%_libexecdir \
|
||||||
--localstatedir=%_localstatedir \
|
--localstatedir=%_localstatedir \
|
||||||
--extra-cflags="%{optflags}" \
|
--extra-cflags="%{optflags}" \
|
||||||
--disable-strip \
|
|
||||||
--enable-system --disable-linux-user \
|
--enable-system --disable-linux-user \
|
||||||
--enable-tools --enable-guest-agent \
|
--enable-tools --enable-guest-agent \
|
||||||
--enable-modules \
|
--enable-modules \
|
||||||
@ -704,9 +700,12 @@ rm -f pc-bios/slof.bin
|
|||||||
%ifarch x86_64
|
%ifarch x86_64
|
||||||
--enable-xen \
|
--enable-xen \
|
||||||
--enable-xen-pci-passthrough \
|
--enable-xen-pci-passthrough \
|
||||||
|
--enable-xen-pv-domain-build \
|
||||||
%else
|
%else
|
||||||
--disable-xen \
|
--disable-xen \
|
||||||
%endif
|
%endif
|
||||||
|
\
|
||||||
|
--disable-strip
|
||||||
|
|
||||||
%if "%{name}" != "qemu-testsuite"
|
%if "%{name}" != "qemu-testsuite"
|
||||||
|
|
||||||
@ -714,13 +713,13 @@ make %{?_smp_mflags} V=1
|
|||||||
|
|
||||||
# Firmware
|
# Firmware
|
||||||
%if %{build_x86_fw_from_source}
|
%if %{build_x86_fw_from_source}
|
||||||
make -C roms bios
|
make %{?_smp_mflags} -C roms bios
|
||||||
make -C roms seavgabios
|
make %{?_smp_mflags} -C roms seavgabios
|
||||||
make -C roms pxerom
|
make %{?_smp_mflags} -C roms pxerom
|
||||||
make -C roms sgabios
|
make -C roms sgabios
|
||||||
%endif
|
%endif
|
||||||
%if %{build_slof_from_source}
|
%if %{build_slof_from_source}
|
||||||
make -C roms slof
|
make %{?_smp_mflags} -C roms slof
|
||||||
%endif
|
%endif
|
||||||
%ifarch s390x
|
%ifarch s390x
|
||||||
cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img
|
cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img
|
||||||
@ -795,7 +794,7 @@ format=`qemu-img info test.tar | grep "file format:" | cut -d ':' -f 2 | tr -d '
|
|||||||
make install DESTDIR=$RPM_BUILD_ROOT
|
make install DESTDIR=$RPM_BUILD_ROOT
|
||||||
rm -fr $RPM_BUILD_ROOT/%_datadir/doc
|
rm -fr $RPM_BUILD_ROOT/%_datadir/doc
|
||||||
%if ! %{build_x86_fw_from_source}
|
%if ! %{build_x86_fw_from_source}
|
||||||
for f in acpi-dsdt.aml q35-acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
|
for f in acpi-dsdt.aml bios-256k.bin bios.bin efi-*.rom pxe-*.rom sgabios.bin \
|
||||||
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
|
vgabios-cirrus.bin vgabios-qxl.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \
|
||||||
vgabios.bin; do
|
vgabios.bin; do
|
||||||
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
|
rm $RPM_BUILD_ROOT/%_datadir/%name/$f
|
||||||
@ -953,7 +952,6 @@ fi
|
|||||||
%files s390
|
%files s390
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
%_bindir/qemu-system-s390x
|
%_bindir/qemu-system-s390x
|
||||||
%_datadir/%name/s390-zipl.rom
|
|
||||||
%_datadir/%name/s390-ccw.img
|
%_datadir/%name/s390-ccw.img
|
||||||
|
|
||||||
%files arm
|
%files arm
|
||||||
@ -1028,7 +1026,6 @@ fi
|
|||||||
%_datadir/%name/bios.bin
|
%_datadir/%name/bios.bin
|
||||||
%_datadir/%name/bios-256k.bin
|
%_datadir/%name/bios-256k.bin
|
||||||
%_datadir/%name/acpi-dsdt.aml
|
%_datadir/%name/acpi-dsdt.aml
|
||||||
%_datadir/%name/q35-acpi-dsdt.aml
|
|
||||||
|
|
||||||
%files vgabios
|
%files vgabios
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
|
@ -1,70 +0,0 @@
|
|||||||
From 9d3c06336ec443b6763c92f929013afcfce70c4a Mon Sep 17 00:00:00 2001
|
|
||||||
From: Kevin O'Connor <kevin@koconnor.net>
|
|
||||||
Date: Thu, 9 Apr 2015 11:57:44 -0400
|
|
||||||
Subject: [PATCH] smbios: Use integer signature instead of string signature
|
|
||||||
|
|
||||||
Change the smbios structure to use a 4 byte u32 signature field
|
|
||||||
instead of a 4 byte character string field. In practice, this allows
|
|
||||||
the compiler to place the signature in the initialize code segment and
|
|
||||||
thus makes it less likely the signature would be found in the
|
|
||||||
f-segment. (If the smbios signature is found in the f-segment it can
|
|
||||||
confuse some table scans.)
|
|
||||||
|
|
||||||
Reviewed-by: Bruce Rogers <brogers@suse.com>
|
|
||||||
Tested-by: Bruce Rogers <brogers@suse.com>
|
|
||||||
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
|
|
||||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
|
||||||
---
|
|
||||||
src/fw/biostables.c | 2 +-
|
|
||||||
src/fw/smbios.c | 2 +-
|
|
||||||
src/std/smbios.h | 4 +++-
|
|
||||||
3 files changed, 5 insertions(+), 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/fw/biostables.c b/src/fw/biostables.c
|
|
||||||
index 50a891b..450aca2 100644
|
|
||||||
--- a/src/fw/biostables.c
|
|
||||||
+++ b/src/fw/biostables.c
|
|
||||||
@@ -271,7 +271,7 @@ copy_smbios(void *pos)
|
|
||||||
if (SMBiosAddr)
|
|
||||||
return;
|
|
||||||
struct smbios_entry_point *p = pos;
|
|
||||||
- if (memcmp(p->anchor_string, "_SM_", 4))
|
|
||||||
+ if (p->signature != SMBIOS_SIGNATURE)
|
|
||||||
return;
|
|
||||||
if (checksum(pos, 0x10) != 0)
|
|
||||||
return;
|
|
||||||
diff --git a/src/fw/smbios.c b/src/fw/smbios.c
|
|
||||||
index dba0541..f3b5ad9 100644
|
|
||||||
--- a/src/fw/smbios.c
|
|
||||||
+++ b/src/fw/smbios.c
|
|
||||||
@@ -37,7 +37,7 @@ smbios_entry_point_setup(u16 max_structure_size,
|
|
||||||
|
|
||||||
struct smbios_entry_point ep;
|
|
||||||
memset(&ep, 0, sizeof(ep));
|
|
||||||
- memcpy(ep.anchor_string, "_SM_", 4);
|
|
||||||
+ ep.signature = SMBIOS_SIGNATURE;
|
|
||||||
ep.length = 0x1f;
|
|
||||||
ep.smbios_major_version = 2;
|
|
||||||
ep.smbios_minor_version = 4;
|
|
||||||
diff --git a/src/std/smbios.h b/src/std/smbios.h
|
|
||||||
index 0513716..4ccf2ea 100644
|
|
||||||
--- a/src/std/smbios.h
|
|
||||||
+++ b/src/std/smbios.h
|
|
||||||
@@ -3,11 +3,13 @@
|
|
||||||
|
|
||||||
#include "types.h" // u32
|
|
||||||
|
|
||||||
+#define SMBIOS_SIGNATURE 0x5f4d535f // "_SM_"
|
|
||||||
+
|
|
||||||
/* SMBIOS entry point -- must be written to a 16-bit aligned address
|
|
||||||
between 0xf0000 and 0xfffff.
|
|
||||||
*/
|
|
||||||
struct smbios_entry_point {
|
|
||||||
- char anchor_string[4];
|
|
||||||
+ u32 signature;
|
|
||||||
u8 checksum;
|
|
||||||
u8 length;
|
|
||||||
u8 smbios_major_version;
|
|
||||||
--
|
|
||||||
2.1.4
|
|
||||||
|
|
@ -1,32 +0,0 @@
|
|||||||
From 6b0e2bd9d914f6421c015ec28d96cf069fb8015f Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?Andreas=20F=C3=A4rber?= <afaerber@suse.de>
|
|
||||||
Date: Thu, 19 Mar 2015 17:13:00 +0100
|
|
||||||
Subject: [PATCH] checkrom: Fix typo in error message
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
increate -> increase
|
|
||||||
|
|
||||||
Reviewed-by: Alistair Francis <alistair.francis@xilinx.com>
|
|
||||||
Signed-off-by: Andreas Färber <afaerber@suse.de>
|
|
||||||
---
|
|
||||||
scripts/checkrom.py | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/checkrom.py b/scripts/checkrom.py
|
|
||||||
index 377277d..aced5e2 100755
|
|
||||||
--- a/scripts/checkrom.py
|
|
||||||
+++ b/scripts/checkrom.py
|
|
||||||
@@ -39,7 +39,7 @@ def main():
|
|
||||||
finalsize = 256*1024
|
|
||||||
if datasize > finalsize:
|
|
||||||
print("Error! ROM doesn't fit (%d > %d)" % (datasize, finalsize))
|
|
||||||
- print(" You have to either increate the size (CONFIG_ROM_SIZE)")
|
|
||||||
+ print(" You have to either increase the size (CONFIG_ROM_SIZE)")
|
|
||||||
print(" or turn off some features (such as hardware support not")
|
|
||||||
print(" needed) to make it fit. Trying a more recent gcc version")
|
|
||||||
print(" might work too.")
|
|
||||||
--
|
|
||||||
2.1.4
|
|
||||||
|
|
@ -11,8 +11,8 @@
|
|||||||
|
|
||||||
GIT_TREE=git://github.com/openSUSE/qemu.git
|
GIT_TREE=git://github.com/openSUSE/qemu.git
|
||||||
GIT_LOCAL_TREE=~/git/qemu-opensuse
|
GIT_LOCAL_TREE=~/git/qemu-opensuse
|
||||||
GIT_BRANCH=opensuse-2.5
|
GIT_BRANCH=opensuse-2.6
|
||||||
GIT_UPSTREAM_TAG=v2.5.0
|
GIT_UPSTREAM_TAG=v2.6.0-rc0
|
||||||
GIT_DIR=/dev/shm/qemu-factory-git-dir
|
GIT_DIR=/dev/shm/qemu-factory-git-dir
|
||||||
CMP_DIR=/dev/shm/qemu-factory-cmp-dir
|
CMP_DIR=/dev/shm/qemu-factory-cmp-dir
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user