diff --git a/0001-XXX-dont-dump-core-on-sigabort.patch b/0001-XXX-dont-dump-core-on-sigabort.patch index 0482d530..4ffe55b6 100644 --- a/0001-XXX-dont-dump-core-on-sigabort.patch +++ b/0001-XXX-dont-dump-core-on-sigabort.patch @@ -1,4 +1,4 @@ -From 9a439be9ee06d6d254e5350551e7159a31a90aa4 Mon Sep 17 00:00:00 2001 +From 82c6cbb1f23954476a1bfc5f7d2e4601daeab35b Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Mon, 21 Nov 2011 23:50:36 +0100 Subject: [PATCH] XXX dont dump core on sigabort @@ -8,7 +8,7 @@ Subject: [PATCH] XXX dont dump core on sigabort 1 file changed, 6 insertions(+) diff --git a/linux-user/signal.c b/linux-user/signal.c -index a67db04..a11728f 100644 +index a67db04e1a..a11728f6e0 100644 --- a/linux-user/signal.c +++ b/linux-user/signal.c @@ -560,6 +560,10 @@ static void QEMU_NORETURN dump_core_and_abort(int target_sig) diff --git a/0002-qemu-binfmt-conf-Modify-default-pat.patch b/0002-qemu-binfmt-conf-Modify-default-pat.patch index a0c1f072..30004ec6 100644 --- a/0002-qemu-binfmt-conf-Modify-default-pat.patch +++ b/0002-qemu-binfmt-conf-Modify-default-pat.patch @@ -1,4 +1,4 @@ -From 5805a02046a5e706406c29b7e595cb5aa54b4a2c Mon Sep 17 00:00:00 2001 +From fdfe99fea22a42069fbcab6146568e017e8b5b0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Wed, 10 Aug 2016 19:00:24 +0200 Subject: [PATCH] qemu-binfmt-conf: Modify default path @@ -14,7 +14,7 @@ Signed-off-by: Andreas Färber 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/qemu-binfmt-conf.sh b/scripts/qemu-binfmt-conf.sh -index 0f1aa63..9fcd95a 100755 +index 0f1aa63872..9fcd95a435 100755 --- a/scripts/qemu-binfmt-conf.sh +++ b/scripts/qemu-binfmt-conf.sh @@ -264,7 +264,7 @@ BINFMT_SET=qemu_register_interpreter diff --git a/0003-qemu-cvs-alsa_bitfield.patch b/0003-qemu-cvs-alsa_bitfield.patch index f010087a..84b4d3c8 100644 --- a/0003-qemu-cvs-alsa_bitfield.patch +++ b/0003-qemu-cvs-alsa_bitfield.patch @@ -1,4 +1,4 @@ -From 0d14edc19f2112a2d61f835c9664c388cbf14246 Mon Sep 17 00:00:00 2001 +From ee895d40c6978168921fb4306e60c0db21e801da Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Tue, 14 Apr 2009 16:20:50 +0200 Subject: [PATCH] qemu-cvs-alsa_bitfield @@ -13,7 +13,7 @@ Signed-off-by: Ulrich Hecht 2 files changed, 24 insertions(+) diff --git a/include/exec/user/thunk.h b/include/exec/user/thunk.h -index f19ef4b..b2659e0 100644 +index f19ef4b230..b2659e0def 100644 --- a/include/exec/user/thunk.h +++ b/include/exec/user/thunk.h @@ -37,6 +37,7 @@ typedef enum argtype { @@ -41,7 +41,7 @@ index f19ef4b..b2659e0 100644 case TYPE_LONGLONG: case TYPE_ULONGLONG: diff --git a/thunk.c b/thunk.c -index 2dac366..0eb7286 100644 +index 2dac36666d..0eb72861fe 100644 --- a/thunk.c +++ b/thunk.c @@ -37,6 +37,7 @@ static inline const argtype *thunk_type_next(const argtype *type_ptr) diff --git a/0004-qemu-cvs-alsa_ioctl.patch b/0004-qemu-cvs-alsa_ioctl.patch index 98e57fca..4c37b31d 100644 --- a/0004-qemu-cvs-alsa_ioctl.patch +++ b/0004-qemu-cvs-alsa_ioctl.patch @@ -1,4 +1,4 @@ -From 2764219a17c0d494f2dd66e7b4c1c5b3dd75e5be Mon Sep 17 00:00:00 2001 +From 0b2db023e1c9dba46cc86234b5a232f84b699519 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Tue, 14 Apr 2009 16:23:27 +0200 Subject: [PATCH] qemu-cvs-alsa_ioctl @@ -27,7 +27,7 @@ Signed-off-by: Bruce Rogers create mode 100644 linux-user/syscall_types_alsa.h diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h -index e6997ff..ea335de 100644 +index e6997ff230..ea335de680 100644 --- a/linux-user/ioctls.h +++ b/linux-user/ioctls.h @@ -359,6 +359,11 @@ @@ -44,7 +44,7 @@ index e6997ff..ea335de 100644 IOCTL(LOOP_SET_STATUS, IOC_W, MK_PTR(MK_STRUCT(STRUCT_loop_info))) diff --git a/linux-user/ioctls_alsa.h b/linux-user/ioctls_alsa.h new file mode 100644 -index 0000000..c2aa542 +index 0000000000..c2aa542c3b --- /dev/null +++ b/linux-user/ioctls_alsa.h @@ -0,0 +1,467 @@ @@ -517,7 +517,7 @@ index 0000000..c2aa542 +IOCTL( SND_SSCAPE_LOAD_MCODE , IOC_W, MK_PTR(MK_STRUCT(STRUCT_sscape_microcode)) ) diff --git a/linux-user/ioctls_alsa_structs.h b/linux-user/ioctls_alsa_structs.h new file mode 100644 -index 0000000..e09a30d +index 0000000000..e09a30defb --- /dev/null +++ b/linux-user/ioctls_alsa_structs.h @@ -0,0 +1,1740 @@ @@ -2262,7 +2262,7 @@ index 0000000..e09a30d + unsigned char *code; +}; diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h -index 40c5027..a34551d 100644 +index 40c5027e93..a34551debc 100644 --- a/linux-user/syscall_defs.h +++ b/linux-user/syscall_defs.h @@ -2802,6 +2802,8 @@ struct target_ucred { @@ -2275,7 +2275,7 @@ index 40c5027..a34551d 100644 #define TARGET_SIGEV_MAX_SIZE 64 diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h -index 24631b0..80ac53a 100644 +index 24631b09be..80ac53a8ed 100644 --- a/linux-user/syscall_types.h +++ b/linux-user/syscall_types.h @@ -89,6 +89,11 @@ STRUCT(buffmem_desc, @@ -2292,7 +2292,7 @@ index 24631b0..80ac53a 100644 TYPE_INT, /* lo_number */ diff --git a/linux-user/syscall_types_alsa.h b/linux-user/syscall_types_alsa.h new file mode 100644 -index 0000000..fa7a18d +index 0000000000..fa7a18d755 --- /dev/null +++ b/linux-user/syscall_types_alsa.h @@ -0,0 +1,1330 @@ diff --git a/0005-qemu-cvs-alsa_mmap.patch b/0005-qemu-cvs-alsa_mmap.patch index 5cf4abf2..6c9ef13a 100644 --- a/0005-qemu-cvs-alsa_mmap.patch +++ b/0005-qemu-cvs-alsa_mmap.patch @@ -1,4 +1,4 @@ -From 0262c673779795a2284e961df4c174578385dbe9 Mon Sep 17 00:00:00 2001 +From d7bdbb6c509224e3d281789c8c70a30f6755cc82 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Tue, 14 Apr 2009 16:24:15 +0200 Subject: [PATCH] qemu-cvs-alsa_mmap @@ -12,7 +12,7 @@ Signed-off-by: Ulrich Hecht 1 file changed, 14 insertions(+) diff --git a/linux-user/mmap.c b/linux-user/mmap.c -index 4888f53..a3fcea2 100644 +index 4888f53139..a3fcea263f 100644 --- a/linux-user/mmap.c +++ b/linux-user/mmap.c @@ -357,6 +357,9 @@ abi_ulong mmap_find_vma(abi_ulong start, abi_ulong size) diff --git a/0006-qemu-cvs-gettimeofday.patch b/0006-qemu-cvs-gettimeofday.patch index e9177be7..2e91935d 100644 --- a/0006-qemu-cvs-gettimeofday.patch +++ b/0006-qemu-cvs-gettimeofday.patch @@ -1,4 +1,4 @@ -From 269c7c470e1f6202ed68556ac10c743b5d4e1e8c Mon Sep 17 00:00:00 2001 +From 2771136c1ace89dd22934fbb7ba26323aad7ecfd Mon Sep 17 00:00:00 2001 From: Ulrich Hecht Date: Tue, 14 Apr 2009 16:25:41 +0200 Subject: [PATCH] qemu-cvs-gettimeofday @@ -9,7 +9,7 @@ No clue what this is for. 1 file changed, 2 insertions(+) diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index cec8428..03c3576 100644 +index cec8428589..03c3576dab 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -8914,6 +8914,8 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1, diff --git a/0007-qemu-cvs-ioctl_debug.patch b/0007-qemu-cvs-ioctl_debug.patch index 6576ee83..af5b8181 100644 --- a/0007-qemu-cvs-ioctl_debug.patch +++ b/0007-qemu-cvs-ioctl_debug.patch @@ -1,4 +1,4 @@ -From c3db48bec691ea5dea3d7d08208964ae7c5beb10 Mon Sep 17 00:00:00 2001 +From 053f8332b7efff944f2ef44e09cb895216a1a194 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Tue, 14 Apr 2009 16:26:33 +0200 Subject: [PATCH] qemu-cvs-ioctl_debug @@ -12,7 +12,7 @@ Signed-off-by: Ulrich Hecht 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index 03c3576..891ee1c 100644 +index 03c3576dab..891ee1c6ea 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -5611,7 +5611,12 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg) diff --git a/0008-qemu-cvs-ioctl_nodirection.patch b/0008-qemu-cvs-ioctl_nodirection.patch index 8042606e..3909d8e4 100644 --- a/0008-qemu-cvs-ioctl_nodirection.patch +++ b/0008-qemu-cvs-ioctl_nodirection.patch @@ -1,4 +1,4 @@ -From 8744f4873ee2eda65d9914c2c5f83bb094220808 Mon Sep 17 00:00:00 2001 +From 551aca5f7e7a604d202dab434140804e5d6ac6eb Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Tue, 14 Apr 2009 16:27:36 +0200 Subject: [PATCH] qemu-cvs-ioctl_nodirection @@ -15,7 +15,7 @@ Signed-off-by: Ulrich Hecht 1 file changed, 6 insertions(+) diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index 891ee1c..2f82a7d 100644 +index 891ee1c6ea..2f82a7d1a6 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -5648,6 +5648,11 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg) diff --git a/0009-linux-user-add-binfmt-wrapper-for-a.patch b/0009-linux-user-add-binfmt-wrapper-for-a.patch index 883f5c82..fee60e04 100644 --- a/0009-linux-user-add-binfmt-wrapper-for-a.patch +++ b/0009-linux-user-add-binfmt-wrapper-for-a.patch @@ -1,4 +1,4 @@ -From 7cb4f5e2f3a0f9dc7b988dda01fb73aaf306b476 Mon Sep 17 00:00:00 2001 +From 87ff6f499e7dbfa9f059703bcebf4a09d1c65578 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 30 Sep 2011 19:40:36 +0200 Subject: [PATCH] linux-user: add binfmt wrapper for argv[0] handling @@ -37,7 +37,7 @@ Signed-off-by: Andreas Färber create mode 100644 linux-user/binfmt.c diff --git a/Makefile.target b/Makefile.target -index 7df2b8c..85ae084 100644 +index 7df2b8c149..85ae084545 100644 --- a/Makefile.target +++ b/Makefile.target @@ -36,6 +36,10 @@ endif @@ -83,7 +83,7 @@ index 7df2b8c..85ae084 100644 $(call quiet-command,rm -f $@ && $(SHELL) $(SRC_PATH)/scripts/feature_to_c.sh $@ $(TARGET_XML_FILES),"GEN","$(TARGET_DIR)$@") diff --git a/linux-user/Makefile.objs b/linux-user/Makefile.objs -index 8c93058..607ca2d 100644 +index 8c93058100..607ca2dc92 100644 --- a/linux-user/Makefile.objs +++ b/linux-user/Makefile.objs @@ -6,3 +6,5 @@ obj-$(TARGET_HAS_BFLT) += flatload.o @@ -94,7 +94,7 @@ index 8c93058..607ca2d 100644 +obj-binfmt-y = binfmt.o diff --git a/linux-user/binfmt.c b/linux-user/binfmt.c new file mode 100644 -index 0000000..cd1f513 +index 0000000000..cd1f513b33 --- /dev/null +++ b/linux-user/binfmt.c @@ -0,0 +1,42 @@ diff --git a/0010-PPC-KVM-Disable-mmu-notifier-check.patch b/0010-PPC-KVM-Disable-mmu-notifier-check.patch index 609c0662..6db76e27 100644 --- a/0010-PPC-KVM-Disable-mmu-notifier-check.patch +++ b/0010-PPC-KVM-Disable-mmu-notifier-check.patch @@ -1,4 +1,4 @@ -From ec63fe3f838d5c9937ff99aff30d2d18a3e24688 Mon Sep 17 00:00:00 2001 +From e2b7bb58389b436d0c4627ff246abeab14cf02a2 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 6 Jan 2012 01:05:55 +0100 Subject: [PATCH] PPC: KVM: Disable mmu notifier check @@ -13,7 +13,7 @@ KVM guests work there, even if possibly racy in some odd circumstances. 1 file changed, 2 insertions(+) diff --git a/exec.c b/exec.c -index e57a8a2..ab5f669 100644 +index c97ef4a8da..b47b3f9096 100644 --- a/exec.c +++ b/exec.c @@ -1362,11 +1362,13 @@ static void *file_ram_alloc(RAMBlock *block, diff --git a/0011-linux-user-fix-segfault-deadlock.patch b/0011-linux-user-fix-segfault-deadlock.patch index 5e4d0120..7f6c7fa4 100644 --- a/0011-linux-user-fix-segfault-deadlock.patch +++ b/0011-linux-user-fix-segfault-deadlock.patch @@ -1,4 +1,4 @@ -From 5537031543a234dba1fdfe7b3b535b9860b2c7db Mon Sep 17 00:00:00 2001 +From 08ad46a51cbf155d68047b4dad660687aff9996b Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Fri, 13 Jan 2012 17:05:41 +0100 Subject: [PATCH] linux-user: fix segfault deadlock @@ -26,7 +26,7 @@ Signed-off-by: Andreas Färber 1 file changed, 4 insertions(+) diff --git a/user-exec.c b/user-exec.c -index a8f95fa..c262653 100644 +index a8f95fa1e1..c262653604 100644 --- a/user-exec.c +++ b/user-exec.c @@ -78,6 +78,10 @@ static inline int handle_cpu_signal(uintptr_t pc, unsigned long address, diff --git a/0012-linux-user-binfmt-support-host-bina.patch b/0012-linux-user-binfmt-support-host-bina.patch index ff6a7b02..b8188d9a 100644 --- a/0012-linux-user-binfmt-support-host-bina.patch +++ b/0012-linux-user-binfmt-support-host-bina.patch @@ -1,4 +1,4 @@ -From 5ab2bfcf900a3c7edaf643680c20004e5d6a8b88 Mon Sep 17 00:00:00 2001 +From de4c78727b69b2aa7c2db3ff8cd50c8ae08c1dc5 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Thu, 2 Feb 2012 18:02:33 +0100 Subject: [PATCH] linux-user: binfmt: support host binaries @@ -12,7 +12,7 @@ Signed-off-by: Alexander Graf 1 file changed, 26 insertions(+) diff --git a/linux-user/binfmt.c b/linux-user/binfmt.c -index cd1f513..458f136 100644 +index cd1f513b33..458f136fb4 100644 --- a/linux-user/binfmt.c +++ b/linux-user/binfmt.c @@ -5,6 +5,9 @@ diff --git a/0013-linux-user-Fake-proc-cpuinfo.patch b/0013-linux-user-Fake-proc-cpuinfo.patch index 31a03316..7ff7f18a 100644 --- a/0013-linux-user-Fake-proc-cpuinfo.patch +++ b/0013-linux-user-Fake-proc-cpuinfo.patch @@ -1,4 +1,4 @@ -From 24f3dfda51d8aefb4dfa4324427e93c8151b952c Mon Sep 17 00:00:00 2001 +From 41932af364763d6df4add286120a76a0744e9a70 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Mon, 23 Jul 2012 10:24:14 +0200 Subject: [PATCH] linux-user: Fake /proc/cpuinfo @@ -22,7 +22,7 @@ Signed-off-by: Andreas Färber 1 file changed, 20 insertions(+) diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index 2f82a7d..37b49bd 100644 +index 2f82a7d1a6..37b49bd406 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -7503,6 +7503,25 @@ static int open_self_stat(void *cpu_env, int fd) diff --git a/0014-linux-user-XXX-disable-fiemap.patch b/0014-linux-user-XXX-disable-fiemap.patch index ca12c356..58d16653 100644 --- a/0014-linux-user-XXX-disable-fiemap.patch +++ b/0014-linux-user-XXX-disable-fiemap.patch @@ -1,4 +1,4 @@ -From 95225537f8eb894d41321962740a0703b6fd5770 Mon Sep 17 00:00:00 2001 +From fae8f01d48b0d07e07d230e0c775e1e8b385966b Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Tue, 21 Aug 2012 14:20:40 +0200 Subject: [PATCH] linux-user: XXX disable fiemap @@ -9,7 +9,7 @@ agraf: fiemap breaks in libarchive. Disable it for now. 1 file changed, 5 insertions(+) diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index 37b49bd..983475a 100644 +index 37b49bd406..983475a0b9 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -5076,6 +5076,11 @@ static abi_long do_ioctl_fs_ioc_fiemap(const IOCTLEntry *ie, uint8_t *buf_temp, diff --git a/0015-slirp-nooutgoing.patch b/0015-slirp-nooutgoing.patch index a775e1e1..312dbdd1 100644 --- a/0015-slirp-nooutgoing.patch +++ b/0015-slirp-nooutgoing.patch @@ -1,4 +1,4 @@ -From f79d37417fbd003ab5f0b8d35043fd05f80cf940 Mon Sep 17 00:00:00 2001 +From 789139fbc94dee4839b29c511816c6e3398407b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Wed, 29 Aug 2012 18:42:56 +0200 Subject: [PATCH] slirp: -nooutgoing @@ -12,7 +12,7 @@ TBD (from SUSE Studio team) 4 files changed, 39 insertions(+) diff --git a/qemu-options.hx b/qemu-options.hx -index 99af8ed..4712277 100644 +index 99af8edf5f..4712277d7c 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -3215,6 +3215,16 @@ Store the QEMU process PID in @var{file}. It is useful if you launch QEMU @@ -33,7 +33,7 @@ index 99af8ed..4712277 100644 "-singlestep always run in singlestep mode\n", QEMU_ARCH_ALL) STEXI diff --git a/slirp/socket.c b/slirp/socket.c -index 8692772..5c89064 100644 +index 86927722e1..5c89064e15 100644 --- a/slirp/socket.c +++ b/slirp/socket.c @@ -625,6 +625,8 @@ sorecvfrom(struct socket *so) @@ -59,7 +59,7 @@ index 8692772..5c89064 100644 ret = sendto(so->s, m->m_data, m->m_len, 0, (struct sockaddr *)&addr, sockaddr_size(&addr)); diff --git a/slirp/tcp_subr.c b/slirp/tcp_subr.c -index ed16e18..b2c7a8c 100644 +index ed16e1807f..b2c7a8cba0 100644 --- a/slirp/tcp_subr.c +++ b/slirp/tcp_subr.c @@ -391,6 +391,8 @@ tcp_sockclosed(struct tcpcb *tp) @@ -96,7 +96,7 @@ index ed16e18..b2c7a8c 100644 socket_set_fast_reuse(s); opt = 1; diff --git a/vl.c b/vl.c -index 0b4ed52..e0f2ec8 100644 +index 0b4ed5241c..e0f2ec86a9 100644 --- a/vl.c +++ b/vl.c @@ -168,6 +168,7 @@ int smp_threads = 1; diff --git a/0016-vnc-password-file-and-incoming-conn.patch b/0016-vnc-password-file-and-incoming-conn.patch index b8b6c4af..0f8cb277 100644 --- a/0016-vnc-password-file-and-incoming-conn.patch +++ b/0016-vnc-password-file-and-incoming-conn.patch @@ -1,4 +1,4 @@ -From 2c5e7c494f9650874da430015a2a99c68efc28fb Mon Sep 17 00:00:00 2001 +From e73fd05e787ed513b2a25629ba2f446c7769a406 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Wed, 29 Aug 2012 20:06:01 +0200 Subject: [PATCH] vnc: password-file= and incoming-connections= @@ -9,7 +9,7 @@ TBD (from SUSE Studio team) 1 file changed, 55 insertions(+) diff --git a/ui/vnc.c b/ui/vnc.c -index 821acdd..5e0189a 100644 +index 349cfc9d86..486d2759e4 100644 --- a/ui/vnc.c +++ b/ui/vnc.c @@ -59,6 +59,8 @@ static const struct timeval VNC_REFRESH_LOSSY = { 2, 0 }; @@ -21,7 +21,7 @@ index 821acdd..5e0189a 100644 static int vnc_cursor_define(VncState *vs); static void vnc_release_modifiers(VncState *vs); -@@ -1124,6 +1126,7 @@ static void vnc_disconnect_start(VncState *vs) +@@ -1130,6 +1132,7 @@ static void vnc_disconnect_start(VncState *vs) void vnc_disconnect_finish(VncState *vs) { int i; @@ -29,7 +29,7 @@ index 821acdd..5e0189a 100644 vnc_jobs_join(vs); /* Wait encoding jobs */ -@@ -1172,6 +1175,13 @@ void vnc_disconnect_finish(VncState *vs) +@@ -1178,6 +1181,13 @@ void vnc_disconnect_finish(VncState *vs) object_unref(OBJECT(vs->sioc)); vs->sioc = NULL; g_free(vs); @@ -43,7 +43,7 @@ index 821acdd..5e0189a 100644 } ssize_t vnc_client_io_error(VncState *vs, ssize_t ret, Error **errp) -@@ -3165,6 +3175,39 @@ static void vnc_display_print_local_addr(VncDisplay *vd) +@@ -3171,6 +3181,39 @@ static void vnc_display_print_local_addr(VncDisplay *vd) qapi_free_SocketAddress(addr); } @@ -83,7 +83,7 @@ index 821acdd..5e0189a 100644 static QemuOptsList qemu_vnc_opts = { .name = "vnc", .head = QTAILQ_HEAD_INITIALIZER(qemu_vnc_opts.head), -@@ -3196,6 +3239,9 @@ static QemuOptsList qemu_vnc_opts = { +@@ -3202,6 +3245,9 @@ static QemuOptsList qemu_vnc_opts = { .name = "connections", .type = QEMU_OPT_NUMBER, },{ @@ -93,7 +93,7 @@ index 821acdd..5e0189a 100644 .name = "to", .type = QEMU_OPT_NUMBER, },{ -@@ -3208,6 +3254,9 @@ static QemuOptsList qemu_vnc_opts = { +@@ -3214,6 +3260,9 @@ static QemuOptsList qemu_vnc_opts = { .name = "password", .type = QEMU_OPT_BOOL, },{ @@ -103,7 +103,7 @@ index 821acdd..5e0189a 100644 .name = "reverse", .type = QEMU_OPT_BOOL, },{ -@@ -3759,6 +3808,7 @@ void vnc_display_open(const char *id, Error **errp) +@@ -3766,6 +3815,7 @@ void vnc_display_open(const char *id, Error **errp) const char *share, *device_id; QemuConsole *con; bool password = false; @@ -111,7 +111,7 @@ index 821acdd..5e0189a 100644 bool reverse = false; const char *credid; bool sasl = false; -@@ -3806,6 +3856,10 @@ void vnc_display_open(const char *id, Error **errp) +@@ -3809,6 +3859,10 @@ void vnc_display_open(const char *id, Error **errp) goto fail; } } @@ -122,7 +122,7 @@ index 821acdd..5e0189a 100644 lock_key_sync = qemu_opt_get_bool(opts, "lock-key-sync", true); key_delay_ms = qemu_opt_get_number(opts, "key-delay-ms", 1); -@@ -3894,6 +3948,7 @@ void vnc_display_open(const char *id, Error **errp) +@@ -3897,6 +3951,7 @@ void vnc_display_open(const char *id, Error **errp) vd->share_policy = VNC_SHARE_POLICY_ALLOW_EXCLUSIVE; } vd->connections_limit = qemu_opt_get_number(opts, "connections", 32); diff --git a/0017-linux-user-use-target_ulong.patch b/0017-linux-user-use-target_ulong.patch index d993f2bc..e681c710 100644 --- a/0017-linux-user-use-target_ulong.patch +++ b/0017-linux-user-use-target_ulong.patch @@ -1,4 +1,4 @@ -From 0e87373394b75fd3db927367b4b456d412f9f9c0 Mon Sep 17 00:00:00 2001 +From 49263ce643d817546f7ee05969eca1795f748bb2 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Tue, 9 Oct 2012 09:06:49 +0200 Subject: [PATCH] linux-user: use target_ulong @@ -17,7 +17,7 @@ Signed-off-by: Alexander Graf 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/linux-user/qemu.h b/linux-user/qemu.h -index 4edd7d0..2520864 100644 +index 4edd7d0c08..25208645e9 100644 --- a/linux-user/qemu.h +++ b/linux-user/qemu.h @@ -196,10 +196,10 @@ abi_long memcpy_to_target(abi_ulong dest, const void *src, @@ -36,7 +36,7 @@ index 4edd7d0..2520864 100644 extern THREAD CPUState *thread_cpu; void cpu_loop(CPUArchState *env); diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index 983475a..1472d72 100644 +index 983475a0b9..1472d72f27 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -7710,10 +7710,10 @@ static target_timer_t get_timer_id(abi_long arg) diff --git a/0018-block-Add-support-for-DictZip-enabl.patch b/0018-block-Add-support-for-DictZip-enabl.patch index f742d47b..40dba8d1 100644 --- a/0018-block-Add-support-for-DictZip-enabl.patch +++ b/0018-block-Add-support-for-DictZip-enabl.patch @@ -1,4 +1,4 @@ -From d899092fe4f00c7f9fe922940a8244b4557c9729 Mon Sep 17 00:00:00 2001 +From 77135d9465aa36c6701fddebde13bed0f94a3be4 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Wed, 5 Aug 2009 09:49:37 +0200 Subject: [PATCH] block: Add support for DictZip enabled gzip files @@ -47,7 +47,7 @@ Signed-off-by: Andreas Färber create mode 100644 block/dictzip.c diff --git a/block/Makefile.objs b/block/Makefile.objs -index de96f8e..bab24da 100644 +index de96f8ee80..bab24da2fb 100644 --- a/block/Makefile.objs +++ b/block/Makefile.objs @@ -21,6 +21,7 @@ block-obj-$(CONFIG_RBD) += rbd.o @@ -60,7 +60,7 @@ index de96f8e..bab24da 100644 block-obj-$(CONFIG_REPLICATION) += replication.o diff --git a/block/dictzip.c b/block/dictzip.c new file mode 100644 -index 0000000..4b7e2db +index 0000000000..4b7e2db817 --- /dev/null +++ b/block/dictzip.c @@ -0,0 +1,580 @@ diff --git a/0019-block-Add-tar-container-format.patch b/0019-block-Add-tar-container-format.patch index 554f6b21..9aa5adf3 100644 --- a/0019-block-Add-tar-container-format.patch +++ b/0019-block-Add-tar-container-format.patch @@ -1,4 +1,4 @@ -From db57917e50e35b24d8a281429436155725eb1da9 Mon Sep 17 00:00:00 2001 +From b047b8fdd9bebe7d4b80f1c1f9b00d6b8403dc7b Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Wed, 5 Aug 2009 17:28:38 +0200 Subject: [PATCH] block: Add tar container format @@ -48,7 +48,7 @@ Signed-off-by: Andreas Färber create mode 100644 block/tar.c diff --git a/block/Makefile.objs b/block/Makefile.objs -index bab24da..73c7b55 100644 +index bab24da2fb..73c7b55871 100644 --- a/block/Makefile.objs +++ b/block/Makefile.objs @@ -22,6 +22,7 @@ block-obj-$(CONFIG_GLUSTERFS) += gluster.o @@ -61,7 +61,7 @@ index bab24da..73c7b55 100644 block-obj-$(CONFIG_REPLICATION) += replication.o diff --git a/block/tar.c b/block/tar.c new file mode 100644 -index 0000000..508265e +index 0000000000..508265ed5e --- /dev/null +++ b/block/tar.c @@ -0,0 +1,370 @@ diff --git a/0020-Legacy-Patch-kvm-qemu-preXX-dictzip.patch b/0020-Legacy-Patch-kvm-qemu-preXX-dictzip.patch index 12ad217b..859fa3a8 100644 --- a/0020-Legacy-Patch-kvm-qemu-preXX-dictzip.patch +++ b/0020-Legacy-Patch-kvm-qemu-preXX-dictzip.patch @@ -1,4 +1,4 @@ -From 1a949de28ecc6685d9b4e6090caf5f927dd1b6a5 Mon Sep 17 00:00:00 2001 +From b3371af8655024f15d9f56cc2726aeab5931f419 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Wed, 12 Dec 2012 19:11:30 +0100 Subject: [PATCH] Legacy Patch kvm-qemu-preXX-dictzip3.patch @@ -8,7 +8,7 @@ Subject: [PATCH] Legacy Patch kvm-qemu-preXX-dictzip3.patch 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/block/tar.c b/block/tar.c -index 508265e..734082a 100644 +index 508265ed5e..734082a011 100644 --- a/block/tar.c +++ b/block/tar.c @@ -73,7 +73,8 @@ static int str_ends(char *str, const char *end) diff --git a/0021-console-add-question-mark-escape-op.patch b/0021-console-add-question-mark-escape-op.patch index fa3959ca..8617d435 100644 --- a/0021-console-add-question-mark-escape-op.patch +++ b/0021-console-add-question-mark-escape-op.patch @@ -1,4 +1,4 @@ -From b5506d1f37450b29113776120dfe0c17b7e264bc Mon Sep 17 00:00:00 2001 +From f66f06c7e12e09fcaee258f6ca95b878d3fd4402 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Mon, 6 Jun 2011 06:53:52 +0200 Subject: [PATCH] console: add question-mark escape operator @@ -16,7 +16,7 @@ Signed-off-by: Alexander Graf 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/console.c b/ui/console.c -index 419b098..9688457 100644 +index 419b098c11..9688457480 100644 --- a/ui/console.c +++ b/ui/console.c @@ -880,7 +880,7 @@ static void console_putchar(QemuConsole *s, int ch) diff --git a/0022-Make-char-muxer-more-robust-wrt-sma.patch b/0022-Make-char-muxer-more-robust-wrt-sma.patch index 080e382d..888e42b8 100644 --- a/0022-Make-char-muxer-more-robust-wrt-sma.patch +++ b/0022-Make-char-muxer-more-robust-wrt-sma.patch @@ -1,4 +1,4 @@ -From a1893eb93c3e6a59108e3b2d6db315323b44bb39 Mon Sep 17 00:00:00 2001 +From be14c29dd7ad4fdad5b19583d9264e26536aebd1 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Thu, 1 Apr 2010 17:36:23 +0200 Subject: [PATCH] Make char muxer more robust wrt small FIFOs @@ -25,7 +25,7 @@ This patch fixes input when using -nographic on s390 for me. 2 files changed, 16 insertions(+) diff --git a/chardev/char-mux.c b/chardev/char-mux.c -index 5547a36..7b80dc8 100644 +index 5547a36a0a..7b80dc8ad7 100644 --- a/chardev/char-mux.c +++ b/chardev/char-mux.c @@ -179,6 +179,15 @@ static void mux_chr_accept_input(Chardev *chr) @@ -56,7 +56,7 @@ index 5547a36..7b80dc8 100644 * set of muxes */ diff --git a/chardev/char-mux.h b/chardev/char-mux.h -index 9a2fffc..d5f419c 100644 +index 9a2fffce91..d5f419c8a9 100644 --- a/chardev/char-mux.h +++ b/chardev/char-mux.h @@ -35,6 +35,9 @@ typedef struct MuxChardev { diff --git a/0023-linux-user-lseek-explicitly-cast-no.patch b/0023-linux-user-lseek-explicitly-cast-no.patch index 8a502b31..2d4d7f39 100644 --- a/0023-linux-user-lseek-explicitly-cast-no.patch +++ b/0023-linux-user-lseek-explicitly-cast-no.patch @@ -1,4 +1,4 @@ -From a69c5a8d473c9a59f3059279171781752b6cc968 Mon Sep 17 00:00:00 2001 +From 0fbc227da772ac6f19bba6812311f2855a1d7a11 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Thu, 13 Dec 2012 14:29:22 +0100 Subject: [PATCH] linux-user: lseek: explicitly cast non-set offsets to signed @@ -16,7 +16,7 @@ Signed-off-by: Alexander Graf 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index 1472d72..71d4f06 100644 +index 1472d72f27..71d4f06bdb 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -8076,9 +8076,14 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1, diff --git a/0024-configure-Enable-PIE-for-ppc-and-pp.patch b/0024-configure-Enable-PIE-for-ppc-and-pp.patch index baac5d9a..39879dd6 100644 --- a/0024-configure-Enable-PIE-for-ppc-and-pp.patch +++ b/0024-configure-Enable-PIE-for-ppc-and-pp.patch @@ -1,4 +1,4 @@ -From 9553c9a4140d8fe2140806cb082e19b225cdc88f Mon Sep 17 00:00:00 2001 +From e1fd61d6c95957d1901059c8ce81c71c08a0e072 Mon Sep 17 00:00:00 2001 From: Dinar Valeev Date: Wed, 2 Oct 2013 17:56:03 +0200 Subject: [PATCH] configure: Enable PIE for ppc and ppc64 hosts @@ -14,10 +14,10 @@ Signed-off-by: Andreas Färber 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure b/configure -index d1ce33b..64b31aa 100755 +index be4d326ae0..3308560f78 100755 --- a/configure +++ b/configure -@@ -1587,7 +1587,7 @@ fi +@@ -1600,7 +1600,7 @@ fi if test "$pie" = ""; then case "$cpu-$targetos" in diff --git a/0025-AIO-Reduce-number-of-threads-for-32.patch b/0025-AIO-Reduce-number-of-threads-for-32.patch index eafedf8f..01ca34da 100644 --- a/0025-AIO-Reduce-number-of-threads-for-32.patch +++ b/0025-AIO-Reduce-number-of-threads-for-32.patch @@ -1,4 +1,4 @@ -From ad45d67741788641e8be04db71d364c0f46b5d73 Mon Sep 17 00:00:00 2001 +From a511e713d55d924531525a332170c10c12a53ec8 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Wed, 14 Jan 2015 01:32:11 +0100 Subject: [PATCH] AIO: Reduce number of threads for 32bit hosts @@ -21,7 +21,7 @@ Signed-off-by: Alexander Graf 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/util/thread-pool.c b/util/thread-pool.c -index 610646d..2e34e98 100644 +index 610646d131..2e34e9846d 100644 --- a/util/thread-pool.c +++ b/util/thread-pool.c @@ -308,7 +308,12 @@ static void thread_pool_init_one(ThreadPool *pool, AioContext *ctx) diff --git a/0026-dictzip-Fix-on-big-endian-systems.patch b/0026-dictzip-Fix-on-big-endian-systems.patch index 6405e78f..51092b7e 100644 --- a/0026-dictzip-Fix-on-big-endian-systems.patch +++ b/0026-dictzip-Fix-on-big-endian-systems.patch @@ -1,4 +1,4 @@ -From 2a737b7666622c49e849172a57e66e9ffe33fe31 Mon Sep 17 00:00:00 2001 +From 8c5d2cbc8d285a2f094383b61184385da29b2952 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Mon, 15 Jun 2015 17:36:32 +0200 Subject: [PATCH] dictzip: Fix on big endian systems @@ -21,7 +21,7 @@ Signed-off-by: Andreas Färber 1 file changed, 28 insertions(+), 22 deletions(-) diff --git a/block/dictzip.c b/block/dictzip.c -index 4b7e2db..3235337 100644 +index 4b7e2db817..3235337164 100644 --- a/block/dictzip.c +++ b/block/dictzip.c @@ -156,6 +156,7 @@ static int dictzip_open(BlockDriverState *bs, QDict *options, int flags, Error * diff --git a/0027-xen_disk-Add-suse-specific-flush-di.patch b/0027-xen_disk-Add-suse-specific-flush-di.patch index 0c197a07..bcad29f1 100644 --- a/0027-xen_disk-Add-suse-specific-flush-di.patch +++ b/0027-xen_disk-Add-suse-specific-flush-di.patch @@ -1,4 +1,4 @@ -From 2d8f077b0bc869de923029f7a789486091b6b00c Mon Sep 17 00:00:00 2001 +From 057006621bae63e016910d0125366faa3792eaeb Mon Sep 17 00:00:00 2001 From: Bruce Rogers Date: Wed, 9 Mar 2016 15:18:11 -0700 Subject: [PATCH] xen_disk: Add suse specific flush disable handling and map to @@ -17,7 +17,7 @@ Signed-off-by: Olaf Hering 1 file changed, 15 insertions(+) diff --git a/hw/block/xen_disk.c b/hw/block/xen_disk.c -index 456a2d5..94e755d 100644 +index 456a2d5694..94e755d3e8 100644 --- a/hw/block/xen_disk.c +++ b/hw/block/xen_disk.c @@ -111,6 +111,7 @@ struct XenBlkDev { diff --git a/0028-qemu-bridge-helper-reduce-security-.patch b/0028-qemu-bridge-helper-reduce-security-.patch index caf8216b..243533d3 100644 --- a/0028-qemu-bridge-helper-reduce-security-.patch +++ b/0028-qemu-bridge-helper-reduce-security-.patch @@ -1,4 +1,4 @@ -From 582bf7659533dde0ba3274bd5fbc239dcb2341af Mon Sep 17 00:00:00 2001 +From 24a2a58f20802a36f06bd2e74339714b4f1831fb Mon Sep 17 00:00:00 2001 From: Bruce Rogers Date: Tue, 2 Aug 2016 11:36:02 -0600 Subject: [PATCH] qemu-bridge-helper: reduce security profile @@ -19,7 +19,7 @@ Signed-off-by: Andreas Färber 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/qemu-bridge-helper.c b/qemu-bridge-helper.c -index 5396fbf..f3710b8 100644 +index 5396fbfbb6..f3710b80a3 100644 --- a/qemu-bridge-helper.c +++ b/qemu-bridge-helper.c @@ -110,7 +110,12 @@ static int parse_acl_file(const char *filename, ACLList *acl_list) diff --git a/0029-qemu-binfmt-conf-use-qemu-ARCH-binf.patch b/0029-qemu-binfmt-conf-use-qemu-ARCH-binf.patch index af8c915c..17e9d857 100644 --- a/0029-qemu-binfmt-conf-use-qemu-ARCH-binf.patch +++ b/0029-qemu-binfmt-conf-use-qemu-ARCH-binf.patch @@ -1,4 +1,4 @@ -From ef8a949c37e62b108c00b028f2e24652cf4a1391 Mon Sep 17 00:00:00 2001 +From 2ba93a896d205d50e70dbf548ed7716b3b7c598d Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Fri, 12 Aug 2016 18:20:49 +0200 Subject: [PATCH] qemu-binfmt-conf: use qemu-ARCH-binfmt @@ -13,7 +13,7 @@ Signed-off-by: Andreas Färber 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/qemu-binfmt-conf.sh b/scripts/qemu-binfmt-conf.sh -index 9fcd95a..f14a6ef 100755 +index 9fcd95a435..f14a6ef37b 100755 --- a/scripts/qemu-binfmt-conf.sh +++ b/scripts/qemu-binfmt-conf.sh @@ -206,7 +206,7 @@ qemu_check_systemd() { diff --git a/0030-configure-Fix-detection-of-seccomp-.patch b/0030-configure-Fix-detection-of-seccomp-.patch index 50038be2..e5d8a092 100644 --- a/0030-configure-Fix-detection-of-seccomp-.patch +++ b/0030-configure-Fix-detection-of-seccomp-.patch @@ -1,4 +1,4 @@ -From b1730d9bde196e25b803bc3d5eab4eff946b0afe Mon Sep 17 00:00:00 2001 +From 7d69d701785cfae12d0151836062e5a2876978a0 Mon Sep 17 00:00:00 2001 From: markkp Date: Thu, 11 Aug 2016 16:28:39 -0400 Subject: [PATCH] configure: Fix detection of seccomp on s390x @@ -13,10 +13,10 @@ Signed-off-by: Andreas Färber 1 file changed, 3 insertions(+) diff --git a/configure b/configure -index 64b31aa..866cd15 100755 +index 3308560f78..cb7589a8e7 100755 --- a/configure +++ b/configure -@@ -1948,6 +1948,9 @@ if test "$seccomp" != "no" ; then +@@ -1961,6 +1961,9 @@ if test "$seccomp" != "no" ; then ppc|ppc64) libseccomp_minver="2.3.0" ;; diff --git a/0031-linux-user-properly-test-for-infini.patch b/0031-linux-user-properly-test-for-infini.patch index 38b43897..6e5b1328 100644 --- a/0031-linux-user-properly-test-for-infini.patch +++ b/0031-linux-user-properly-test-for-infini.patch @@ -1,4 +1,4 @@ -From acf69d83c150761a8016e2f68a642b781808a6c6 Mon Sep 17 00:00:00 2001 +From b2984b260fcfb17f1552677de75609c149bda521 Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Thu, 8 Sep 2016 11:21:05 +0200 Subject: [PATCH] linux-user: properly test for infinite timeout in poll (#8) @@ -16,7 +16,7 @@ Signed-off-by: Andreas Schwab 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index 71d4f06..78f0ea4 100644 +index 71d4f06bdb..78f0ea4c58 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -10204,7 +10204,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_ulong arg1, diff --git a/0032-linux-user-remove-all-traces-of-qem.patch b/0032-linux-user-remove-all-traces-of-qem.patch index 84c4b114..3f639cd3 100644 --- a/0032-linux-user-remove-all-traces-of-qem.patch +++ b/0032-linux-user-remove-all-traces-of-qem.patch @@ -1,4 +1,4 @@ -From 4503b8396f04c12152cb1249a4d4254af8b39fd5 Mon Sep 17 00:00:00 2001 +From d7fe454d33bbf1c7b37715677de9071eddb7daa6 Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Wed, 28 Sep 2016 16:36:40 +0200 Subject: [PATCH] linux-user: remove all traces of qemu from /proc/self/cmdline @@ -17,7 +17,7 @@ Signed-off-by: Andreas Färber 1 file changed, 7 insertions(+), 40 deletions(-) diff --git a/linux-user/syscall.c b/linux-user/syscall.c -index 78f0ea4..1e56583 100644 +index 78f0ea4c58..1e56583d63 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -7374,52 +7374,19 @@ int host_to_target_waitstatus(int status) diff --git a/0033-roms-Makefile-pass-a-packaging-time.patch b/0033-roms-Makefile-pass-a-packaging-time.patch index e8819b8e..e2d4f70e 100644 --- a/0033-roms-Makefile-pass-a-packaging-time.patch +++ b/0033-roms-Makefile-pass-a-packaging-time.patch @@ -1,4 +1,4 @@ -From af6206af2b2f64af4bc0cb371387ec3bfb9db51f Mon Sep 17 00:00:00 2001 +From d6c8e580b22d96a84b4239c197fff42bb74a8cf8 Mon Sep 17 00:00:00 2001 From: Bruce Rogers Date: Sat, 19 Nov 2016 08:06:30 -0700 Subject: [PATCH] roms/Makefile: pass a packaging timestamp to subpackages with @@ -20,7 +20,7 @@ Signed-off-by: Bruce Rogers 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/roms/Makefile b/roms/Makefile -index b5e5a69..89d69eb 100644 +index b5e5a69e91..89d69eb350 100644 --- a/roms/Makefile +++ b/roms/Makefile @@ -52,6 +52,12 @@ SEABIOS_EXTRAVERSION="-prebuilt.qemu-project.org" diff --git a/0034-Raise-soft-address-space-limit-to-h.patch b/0034-Raise-soft-address-space-limit-to-h.patch index c87ec4e2..9b134329 100644 --- a/0034-Raise-soft-address-space-limit-to-h.patch +++ b/0034-Raise-soft-address-space-limit-to-h.patch @@ -1,4 +1,4 @@ -From 78ee8131d8c9e60b92f4799d8732bd47f6ed2d18 Mon Sep 17 00:00:00 2001 +From 09045d68d919c0cabd36e0313b6d83ed57d328b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Sun, 15 Jan 2012 19:53:49 +0100 Subject: [PATCH] Raise soft address space limit to hard limit @@ -17,7 +17,7 @@ Signed-off-by: Bruce Rogers 1 file changed, 12 insertions(+) diff --git a/vl.c b/vl.c -index e0f2ec8..caad3f9 100644 +index e0f2ec86a9..caad3f93b3 100644 --- a/vl.c +++ b/vl.c @@ -26,6 +26,7 @@ diff --git a/0035-increase-x86_64-physical-bits-to-42.patch b/0035-increase-x86_64-physical-bits-to-42.patch index fe619327..d4bbe0b8 100644 --- a/0035-increase-x86_64-physical-bits-to-42.patch +++ b/0035-increase-x86_64-physical-bits-to-42.patch @@ -1,4 +1,4 @@ -From 60a200a500b0e3875cae15343e5ccac88ad07c7d Mon Sep 17 00:00:00 2001 +From 82f178c9113e267811a081aa958fb9718cc9bf2c Mon Sep 17 00:00:00 2001 From: Bruce Rogers Date: Fri, 17 May 2013 16:49:58 -0600 Subject: [PATCH] increase x86_64 physical bits to 42 @@ -19,10 +19,10 @@ Signed-off-by: Andreas Färber 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/i386/cpu.h b/target/i386/cpu.h -index 07401ad..64545b2 100644 +index c4602ca80d..81c02c5a3b 100644 --- a/target/i386/cpu.h +++ b/target/i386/cpu.h -@@ -1486,7 +1486,7 @@ uint64_t cpu_get_tsc(CPUX86State *env); +@@ -1488,7 +1488,7 @@ uint64_t cpu_get_tsc(CPUX86State *env); /* XXX: This value should match the one returned by CPUID * and in exec.c */ # if defined(TARGET_X86_64) diff --git a/0036-vga-Raise-VRAM-to-16-MiB-for-pc-0.1.patch b/0036-vga-Raise-VRAM-to-16-MiB-for-pc-0.1.patch index 4abde357..a9ad370a 100644 --- a/0036-vga-Raise-VRAM-to-16-MiB-for-pc-0.1.patch +++ b/0036-vga-Raise-VRAM-to-16-MiB-for-pc-0.1.patch @@ -1,4 +1,4 @@ -From 5732f064b36dc13cf47bc25e2dd1d96e9e68e5ff Mon Sep 17 00:00:00 2001 +From c413dbffc09cf5383e64d4829ff7c94a37e89739 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Wed, 12 Jun 2013 19:26:37 +0200 Subject: [PATCH] vga: Raise VRAM to 16 MiB for pc-0.15 and below @@ -25,7 +25,7 @@ Signed-off-by: Bruce Rogers 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c -index 9f102aa..1c09005 100644 +index 9f102aa388..1c09005293 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c @@ -779,7 +779,32 @@ DEFINE_I440FX_MACHINE(v1_0, "pc-1.0", pc_compat_1_2, diff --git a/0037-i8254-Fix-migration-from-SLE11-SP2.patch b/0037-i8254-Fix-migration-from-SLE11-SP2.patch index 62c94501..13f4c889 100644 --- a/0037-i8254-Fix-migration-from-SLE11-SP2.patch +++ b/0037-i8254-Fix-migration-from-SLE11-SP2.patch @@ -1,4 +1,4 @@ -From 27917a0843c1130a9caeb15e43fabf7c728e1f21 Mon Sep 17 00:00:00 2001 +From 740d7f465e36577043b568971faaefa511474524 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Wed, 31 Jul 2013 17:05:29 +0200 Subject: [PATCH] i8254: Fix migration from SLE11 SP2 @@ -17,7 +17,7 @@ Signed-off-by: Andreas Färber 1 file changed, 7 insertions(+) diff --git a/hw/timer/i8254_common.c b/hw/timer/i8254_common.c -index e18299a..bc676c4 100644 +index e18299a482..bc676c4664 100644 --- a/hw/timer/i8254_common.c +++ b/hw/timer/i8254_common.c @@ -258,6 +258,12 @@ static int pit_dispatch_post_load(void *opaque, int version_id) diff --git a/0038-acpi_piix4-Fix-migration-from-SLE11.patch b/0038-acpi_piix4-Fix-migration-from-SLE11.patch index c3281780..3a1fb18a 100644 --- a/0038-acpi_piix4-Fix-migration-from-SLE11.patch +++ b/0038-acpi_piix4-Fix-migration-from-SLE11.patch @@ -1,4 +1,4 @@ -From d4005dc15370486a71c28c3e9b7c933feff84fd7 Mon Sep 17 00:00:00 2001 +From dfed13951b3cf32679ce13f54132707466bf62c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Wed, 31 Jul 2013 17:32:35 +0200 Subject: [PATCH] acpi_piix4: Fix migration from SLE11 SP2 @@ -17,7 +17,7 @@ Signed-off-by: Andreas Färber 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/acpi/piix4.c b/hw/acpi/piix4.c -index a553a7e..c34f761 100644 +index a553a7e110..c34f761175 100644 --- a/hw/acpi/piix4.c +++ b/hw/acpi/piix4.c @@ -311,7 +311,7 @@ static const VMStateDescription vmstate_cpuhp_state = { diff --git a/0039-Fix-tigervnc-long-press-issue.patch b/0039-Fix-tigervnc-long-press-issue.patch index 413cb076..662a20ad 100644 --- a/0039-Fix-tigervnc-long-press-issue.patch +++ b/0039-Fix-tigervnc-long-press-issue.patch @@ -1,4 +1,4 @@ -From 59470109fd7b6d5f8e9c5dd62d49f68061fa1756 Mon Sep 17 00:00:00 2001 +From f39de4c31131d5380aa53bbd7462c1f2c1eb1578 Mon Sep 17 00:00:00 2001 From: Chunyan Liu Date: Thu, 3 Mar 2016 16:48:17 +0800 Subject: [PATCH] Fix tigervnc long press issue @@ -24,10 +24,10 @@ Signed-off-by: Chunyan Liu 1 file changed, 19 insertions(+) diff --git a/ui/vnc.c b/ui/vnc.c -index 5e0189a..a18ccf4 100644 +index 486d2759e4..51d6f2353f 100644 --- a/ui/vnc.c +++ b/ui/vnc.c -@@ -1662,6 +1662,25 @@ static void do_key_event(VncState *vs, int down, int keycode, int sym) +@@ -1668,6 +1668,25 @@ static void do_key_event(VncState *vs, int down, int keycode, int sym) if (down) vs->modifiers_state[keycode] ^= 1; break; diff --git a/0040-fix-xen-hvm-direct-kernel-boot.patch b/0040-fix-xen-hvm-direct-kernel-boot.patch index 1cdec7fb..2aede28a 100644 --- a/0040-fix-xen-hvm-direct-kernel-boot.patch +++ b/0040-fix-xen-hvm-direct-kernel-boot.patch @@ -1,4 +1,4 @@ -From 3373827d428eee5350a210e14b8ba8fda8fc83f4 Mon Sep 17 00:00:00 2001 +From 7af74a9c07beeef705f3ac4eb9506edbfae3e074 Mon Sep 17 00:00:00 2001 From: Chunyan Liu Date: Fri, 29 Apr 2016 11:17:08 +0800 Subject: [PATCH] fix xen hvm direct kernel boot @@ -29,7 +29,7 @@ Signed-off-by: Chunyan Liu 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/hw/core/loader.c b/hw/core/loader.c -index bf17b42..14dc6e1 100644 +index bf17b42cbe..14dc6e116f 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -55,6 +55,7 @@ diff --git a/0041-ARM-KVM-Enable-in-kernel-timers-wit.patch b/0041-ARM-KVM-Enable-in-kernel-timers-wit.patch deleted file mode 100644 index c73157be..00000000 --- a/0041-ARM-KVM-Enable-in-kernel-timers-wit.patch +++ /dev/null @@ -1,236 +0,0 @@ -From afc51239827b010f266a7411981dd3c99014ea49 Mon Sep 17 00:00:00 2001 -From: Alexander Graf -Date: Mon, 19 Sep 2016 10:02:55 +0200 -Subject: [PATCH] ARM: KVM: Enable in-kernel timers with user space gic - -When running with KVM enabled, you can choose between emulating the -gic in kernel or user space. If the kernel supports in-kernel virtualization -of the interrupt controller, it will default to that. If not, if will -default to user space emulation. - -Unfortunately when running in user mode gic emulation, we miss out on -timer events which are only available from kernel space. This patch leverages -the new kernel/user space notification mechanism for those timer events. - -Signed-off-by: Alexander Graf ---- - hw/arm/virt.c | 18 ++++++++++++++++++ - hw/intc/Makefile.objs | 2 +- - hw/intc/arm_gic.c | 16 ++++++++++++++++ - linux-headers/linux/kvm.h | 14 ++++++++++++++ - target/arm/kvm.c | 29 ++++++++++++++++++++++++++++- - target/arm/kvm_arm.h | 11 +++++++++++ - 6 files changed, 88 insertions(+), 2 deletions(-) - -diff --git a/hw/arm/virt.c b/hw/arm/virt.c -index 5f62a03..44e1170 100644 ---- a/hw/arm/virt.c -+++ b/hw/arm/virt.c -@@ -609,6 +609,24 @@ static void create_gic(VirtMachineState *vms, qemu_irq *pic) - } else if (type == 2) { - create_v2m(vms, pic); - } -+ -+#ifdef CONFIG_KVM -+ if (kvm_enabled() && !kvm_irqchip_in_kernel()) { -+ for (i = 0; i < smp_cpus; i++) { -+ CPUState *cs = qemu_get_cpu(i); -+ int ret; -+ -+ ret = kvm_vcpu_enable_cap(cs, KVM_CAP_ARM_TIMER, 0, -+ KVM_ARM_TIMER_VTIMER); -+ -+ if (ret) { -+ error_report("KVM with user space irqchip only works when the " -+ "host kernel supports KVM_CAP_ARM_TIMER"); -+ exit(1); -+ } -+ } -+ } -+#endif - } - - static void create_uart(const VirtMachineState *vms, qemu_irq *pic, int uart, -diff --git a/hw/intc/Makefile.objs b/hw/intc/Makefile.objs -index adedd0d..6434f2c 100644 ---- a/hw/intc/Makefile.objs -+++ b/hw/intc/Makefile.objs -@@ -10,7 +10,6 @@ common-obj-$(CONFIG_REALVIEW) += realview_gic.o - common-obj-$(CONFIG_SLAVIO) += slavio_intctl.o - common-obj-$(CONFIG_IOAPIC) += ioapic_common.o - common-obj-$(CONFIG_ARM_GIC) += arm_gic_common.o --common-obj-$(CONFIG_ARM_GIC) += arm_gic.o - common-obj-$(CONFIG_ARM_GIC) += arm_gicv2m.o - common-obj-$(CONFIG_ARM_GIC) += arm_gicv3_common.o - common-obj-$(CONFIG_ARM_GIC) += arm_gicv3.o -@@ -21,6 +20,7 @@ common-obj-$(CONFIG_OPENPIC) += openpic.o - common-obj-y += intc.o - - obj-$(CONFIG_APIC) += apic.o apic_common.o -+obj-$(CONFIG_ARM_GIC) += arm_gic.o - obj-$(CONFIG_ARM_GIC_KVM) += arm_gic_kvm.o - obj-$(call land,$(CONFIG_ARM_GIC_KVM),$(TARGET_AARCH64)) += arm_gicv3_kvm.o - obj-$(call land,$(CONFIG_ARM_GIC_KVM),$(TARGET_AARCH64)) += arm_gicv3_its_kvm.o -diff --git a/hw/intc/arm_gic.c b/hw/intc/arm_gic.c -index b305d90..396bfab 100644 ---- a/hw/intc/arm_gic.c -+++ b/hw/intc/arm_gic.c -@@ -25,6 +25,7 @@ - #include "qom/cpu.h" - #include "qemu/log.h" - #include "trace.h" -+#include "kvm_arm.h" - - /* #define DEBUG_GIC */ - -@@ -549,6 +550,11 @@ static void gic_deactivate_irq(GICState *s, int cpu, int irq, MemTxAttrs attrs) - return; - } - -+ /* Tell KVM that we want to know about timer IRQs again */ -+ if (kvm_enabled()) { -+ kvm_arm_eoi_notify(cpu); -+ } -+ - GIC_CLEAR_ACTIVE(irq, cm); - } - -@@ -558,6 +564,12 @@ void gic_complete_irq(GICState *s, int cpu, int irq, MemTxAttrs attrs) - int group; - - DPRINTF("EOI %d\n", irq); -+ -+ /* Tell KVM that we want to know about timer IRQs again */ -+ if (kvm_enabled()) { -+ kvm_arm_eoi_notify(cpu); -+ } -+ - if (irq >= s->num_irq) { - /* This handles two cases: - * 1. If software writes the ID of a spurious interrupt [ie 1023] -@@ -899,6 +911,10 @@ static void gic_dist_writeb(void *opaque, hwaddr offset, - trace_gic_enable_irq(irq + i); - } - GIC_SET_ENABLED(irq + i, cm); -+ /* Tell KVM that we want to know about timer IRQs again */ -+ if (kvm_enabled()) { -+ kvm_arm_eoi_notify(cpu); -+ } - /* If a raised level triggered IRQ enabled then mark - is as pending. */ - if (GIC_TEST_LEVEL(irq + i, mask) -diff --git a/linux-headers/linux/kvm.h b/linux-headers/linux/kvm.h -index 4e082a8..41b6296 100644 ---- a/linux-headers/linux/kvm.h -+++ b/linux-headers/linux/kvm.h -@@ -205,6 +205,7 @@ struct kvm_hyperv_exit { - #define KVM_EXIT_S390_STSI 25 - #define KVM_EXIT_IOAPIC_EOI 26 - #define KVM_EXIT_HYPERV 27 -+#define KVM_EXIT_ARM_TIMER 28 - - /* For KVM_EXIT_INTERNAL_ERROR */ - /* Emulate instruction failed. */ -@@ -362,6 +363,10 @@ struct kvm_run { - } eoi; - /* KVM_EXIT_HYPERV */ - struct kvm_hyperv_exit hyperv; -+ /* KVM_EXIT_ARM_TIMER */ -+ struct { -+ __u8 timesource; -+ } arm_timer; - /* Fix the size of the union. */ - char padding[256]; - }; -@@ -883,6 +888,7 @@ struct kvm_ppc_resize_hpt { - #define KVM_CAP_PPC_MMU_RADIX 134 - #define KVM_CAP_PPC_MMU_HASH_V3 135 - #define KVM_CAP_IMMEDIATE_EXIT 136 -+#define KVM_CAP_ARM_TIMER 137 - - #ifdef KVM_CAP_IRQ_ROUTING - -@@ -1354,4 +1360,12 @@ struct kvm_assigned_msix_entry { - #define KVM_X2APIC_API_USE_32BIT_IDS (1ULL << 0) - #define KVM_X2APIC_API_DISABLE_BROADCAST_QUIRK (1ULL << 1) - -+/* Available with KVM_CAP_ARM_TIMER */ -+ -+/* Bits for run->request_interrupt_window */ -+#define KVM_IRQWINDOW_VTIMER (1 << 0) -+ -+/* Bits for run->arm_timer.timesource */ -+#define KVM_ARM_TIMER_VTIMER (1 << 0) -+ - #endif /* __LINUX_KVM_H */ -diff --git a/target/arm/kvm.c b/target/arm/kvm.c -index 4555468..15d157c 100644 ---- a/target/arm/kvm.c -+++ b/target/arm/kvm.c -@@ -531,7 +531,6 @@ MemTxAttrs kvm_arch_post_run(CPUState *cs, struct kvm_run *run) - return MEMTXATTRS_UNSPECIFIED; - } - -- - int kvm_arch_handle_exit(CPUState *cs, struct kvm_run *run) - { - int ret = 0; -@@ -542,6 +541,23 @@ int kvm_arch_handle_exit(CPUState *cs, struct kvm_run *run) - ret = EXCP_DEBUG; - } /* otherwise return to guest */ - break; -+ case KVM_EXIT_ARM_TIMER: -+ /* We only support the vtimer today */ -+ if (run->arm_timer.timesource != KVM_ARM_TIMER_VTIMER) { -+ return -EINVAL; -+ } -+ -+ /* -+ * We ask the kernel to not tell us about pending virtual timer irqs, -+ * so that we can process the IRQ until we get an EOI for it. Once the -+ * EOI hits, we unset and unmask the interrupt again and if it is still -+ * pending, we set the line high again -+ */ -+ run->request_interrupt_window = KVM_IRQWINDOW_VTIMER; -+ -+ /* Internally trigger virtual timer IRQ */ -+ qemu_set_irq(ARM_CPU(cs)->gt_timer_outputs[GTIMER_VIRT], 1); -+ break; - default: - qemu_log_mask(LOG_UNIMP, "%s: un-handled exit reason %d\n", - __func__, run->exit_reason); -@@ -629,3 +645,14 @@ int kvm_arch_msi_data_to_gsi(uint32_t data) - { - return (data - 32) & 0xffff; - } -+ -+void kvm_arm_eoi_notify(int cpu) -+{ -+ CPUState *cs; -+ -+ cs = qemu_get_cpu(cpu); -+ -+ /* Disable vtimer - if it's still pending we get notified again */ -+ cs->kvm_run->request_interrupt_window &= ~KVM_ARM_TIMER_VTIMER; -+ qemu_set_irq(ARM_CPU(cs)->gt_timer_outputs[GTIMER_VIRT], 0); -+} -diff --git a/target/arm/kvm_arm.h b/target/arm/kvm_arm.h -index 633d088..eeec8c5 100644 ---- a/target/arm/kvm_arm.h -+++ b/target/arm/kvm_arm.h -@@ -288,4 +288,15 @@ static inline const char *its_class_name(void) - } - } - -+/** -+ * kvm_arm_eoi_notify: -+ * -+ * @cpu: CPU index the EOI is for -+ * -+ * Notify KVM that we're done processing an interrupt. This is -+ * used to unmask any pending timer interrupts and potentially -+ * learn about the fact that the level is still high. -+ */ -+void kvm_arm_eoi_notify(int cpu); -+ - #endif diff --git a/0042-string-input-visitor-Fix-uint64-par.patch b/0041-string-input-visitor-Fix-uint64-par.patch similarity index 97% rename from 0042-string-input-visitor-Fix-uint64-par.patch rename to 0041-string-input-visitor-Fix-uint64-par.patch index b6c507b8..4257e631 100644 --- a/0042-string-input-visitor-Fix-uint64-par.patch +++ b/0041-string-input-visitor-Fix-uint64-par.patch @@ -1,4 +1,4 @@ -From 5c82643987fdf900c8fb679e89d5b2807685946a Mon Sep 17 00:00:00 2001 +From 75fb607cbe540bcd522adf7ac69429d3faadb9ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Thu, 24 Sep 2015 19:21:11 +0200 Subject: [PATCH] string-input-visitor: Fix uint64 parsing @@ -22,7 +22,7 @@ Signed-off-by: Andreas Färber 1 file changed, 50 insertions(+), 13 deletions(-) diff --git a/qapi/string-input-visitor.c b/qapi/string-input-visitor.c -index c089491..fedbda7 100644 +index c089491c24..fedbda7895 100644 --- a/qapi/string-input-visitor.c +++ b/qapi/string-input-visitor.c @@ -43,7 +43,8 @@ static void free_range(void *range, void *dummy) diff --git a/0043-test-string-input-visitor-Add-int-t.patch b/0042-test-string-input-visitor-Add-int-t.patch similarity index 91% rename from 0043-test-string-input-visitor-Add-int-t.patch rename to 0042-test-string-input-visitor-Add-int-t.patch index 85c8859b..09b3c243 100644 --- a/0043-test-string-input-visitor-Add-int-t.patch +++ b/0042-test-string-input-visitor-Add-int-t.patch @@ -1,4 +1,4 @@ -From ff8c69fadd0e7eb8a941d0822ce31e8a0ac257a0 Mon Sep 17 00:00:00 2001 +From e3f1fee454cdb89288a37583fc4b28a62121dd0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Thu, 24 Sep 2015 19:23:50 +0200 Subject: [PATCH] test-string-input-visitor: Add int test case @@ -14,7 +14,7 @@ Signed-off-by: Andreas Färber 1 file changed, 8 insertions(+) diff --git a/tests/test-string-input-visitor.c b/tests/test-string-input-visitor.c -index 79313a7..e00194a 100644 +index 79313a7f7a..e00194a649 100644 --- a/tests/test-string-input-visitor.c +++ b/tests/test-string-input-visitor.c @@ -58,6 +58,14 @@ static void test_visitor_in_int(TestInputVisitorData *data, diff --git a/0044-test-string-input-visitor-Add-uint6.patch b/0043-test-string-input-visitor-Add-uint6.patch similarity index 95% rename from 0044-test-string-input-visitor-Add-uint6.patch rename to 0043-test-string-input-visitor-Add-uint6.patch index b134e1e8..af8ca713 100644 --- a/0044-test-string-input-visitor-Add-uint6.patch +++ b/0043-test-string-input-visitor-Add-uint6.patch @@ -1,4 +1,4 @@ -From 18b870e802add854c6e43f5e8cb1312dad449b89 Mon Sep 17 00:00:00 2001 +From 3b37e7faad7964e52ccc9f802c1d387d1edfad6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Thu, 24 Sep 2015 19:24:23 +0200 Subject: [PATCH] test-string-input-visitor: Add uint64 test @@ -15,7 +15,7 @@ Signed-off-by: Andreas Färber 1 file changed, 23 insertions(+) diff --git a/tests/test-string-input-visitor.c b/tests/test-string-input-visitor.c -index e00194a..5587827 100644 +index e00194a649..558782796a 100644 --- a/tests/test-string-input-visitor.c +++ b/tests/test-string-input-visitor.c @@ -78,6 +78,27 @@ static void test_visitor_in_int(TestInputVisitorData *data, diff --git a/0045-tests-Add-QOM-property-unit-tests.patch b/0044-tests-Add-QOM-property-unit-tests.patch similarity index 97% rename from 0045-tests-Add-QOM-property-unit-tests.patch rename to 0044-tests-Add-QOM-property-unit-tests.patch index 43b4d29f..b51bc096 100644 --- a/0045-tests-Add-QOM-property-unit-tests.patch +++ b/0044-tests-Add-QOM-property-unit-tests.patch @@ -1,4 +1,4 @@ -From 42e6f0ded433ad82d1d5e816d36e03be247e1daa Mon Sep 17 00:00:00 2001 +From 23bd9ec4751967ba949157f00f1e35de1a8b712c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Sun, 6 Sep 2015 20:12:42 +0200 Subject: [PATCH] tests: Add QOM property unit tests @@ -17,7 +17,7 @@ Signed-off-by: Andreas Färber create mode 100644 tests/check-qom-props.c diff --git a/MAINTAINERS b/MAINTAINERS -index c60235e..a023f5d 100644 +index c60235eaf6..a023f5d70e 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1419,6 +1419,7 @@ F: qom/ @@ -29,7 +29,7 @@ index c60235e..a023f5d 100644 QMP diff --git a/tests/Makefile.include b/tests/Makefile.include -index f3de81f..ca8f859 100644 +index f3de81fcfb..ca8f859f79 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -92,6 +92,8 @@ check-unit-y += tests/check-qom-interface$(EXESUF) @@ -51,7 +51,7 @@ index f3de81f..ca8f859 100644 tests/test-coroutine$(EXESUF): tests/test-coroutine.o $(test-block-obj-y) diff --git a/tests/check-qom-props.c b/tests/check-qom-props.c new file mode 100644 -index 0000000..681e121 +index 0000000000..681e121c07 --- /dev/null +++ b/tests/check-qom-props.c @@ -0,0 +1,122 @@ diff --git a/0046-tests-Add-scsi-disk-test.patch b/0045-tests-Add-scsi-disk-test.patch similarity index 96% rename from 0046-tests-Add-scsi-disk-test.patch rename to 0045-tests-Add-scsi-disk-test.patch index 58ce1ea2..20c2673d 100644 --- a/0046-tests-Add-scsi-disk-test.patch +++ b/0045-tests-Add-scsi-disk-test.patch @@ -1,4 +1,4 @@ -From 99cd029413e71606d3cc099ef2edbb2137c988e0 Mon Sep 17 00:00:00 2001 +From f398179d2713f9622308636c99a8ac433cac3300 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Fri, 25 Sep 2015 12:31:11 +0200 Subject: [PATCH] tests: Add scsi-disk test @@ -20,7 +20,7 @@ Signed-off-by: Andreas Färber create mode 100644 tests/scsi-disk-test.c diff --git a/MAINTAINERS b/MAINTAINERS -index a023f5d..9840d5b 100644 +index a023f5d70e..9840d5bb68 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -957,6 +957,7 @@ M: Paolo Bonzini @@ -32,7 +32,7 @@ index a023f5d..9840d5b 100644 T: git git://github.com/bonzini/qemu.git scsi-next diff --git a/tests/Makefile.include b/tests/Makefile.include -index ca8f859..85187d4 100644 +index ca8f859f79..85187d4b8c 100644 --- a/tests/Makefile.include +++ b/tests/Makefile.include @@ -161,6 +161,8 @@ check-qtest-virtio-y += tests/virtio-rng-test$(EXESUF) @@ -54,7 +54,7 @@ index ca8f859..85187d4 100644 tests/test-keyval$(EXESUF): tests/test-keyval.o $(test-util-obj-y) $(test-qapi-obj-y) diff --git a/tests/scsi-disk-test.c b/tests/scsi-disk-test.c new file mode 100644 -index 0000000..f19f93d +index 0000000000..f19f93d97a --- /dev/null +++ b/tests/scsi-disk-test.c @@ -0,0 +1,82 @@ diff --git a/0046-RFC-update-Linux-headers-from-irqs-.patch b/0046-RFC-update-Linux-headers-from-irqs-.patch new file mode 100644 index 00000000..4b56a0c1 --- /dev/null +++ b/0046-RFC-update-Linux-headers-from-irqs-.patch @@ -0,0 +1,66 @@ +From 2b83bb94e1c4d3bcfa14a632f5f89da50e40c50a Mon Sep 17 00:00:00 2001 +From: Christoffer Dall +Date: Tue, 28 Mar 2017 16:12:03 +0200 +Subject: [PATCH] RFC: update Linux headers from irqs-to-user-v3 + +Get ioctl number and definitions for KVM_CAP_ARM_USER_IRQ. + +Signed-off-by: Christoffer Dall +[agraf: change cap to indicate downstream status] +Signed-off-by: Alexander Graf +--- + linux-headers/asm-arm/kvm.h | 2 ++ + linux-headers/asm-arm64/kvm.h | 2 ++ + linux-headers/linux/kvm.h | 8 ++++++++ + 3 files changed, 12 insertions(+) + +diff --git a/linux-headers/asm-arm/kvm.h b/linux-headers/asm-arm/kvm.h +index 1101d55d2f..8a1654a55b 100644 +--- a/linux-headers/asm-arm/kvm.h ++++ b/linux-headers/asm-arm/kvm.h +@@ -114,6 +114,8 @@ struct kvm_debug_exit_arch { + }; + + struct kvm_sync_regs { ++ /* Used with KVM_CAP_ARM_USER_IRQ */ ++ __u64 device_irq_level; + }; + + struct kvm_arch_memory_slot { +diff --git a/linux-headers/asm-arm64/kvm.h b/linux-headers/asm-arm64/kvm.h +index 651ec30040..1bc8346f0d 100644 +--- a/linux-headers/asm-arm64/kvm.h ++++ b/linux-headers/asm-arm64/kvm.h +@@ -143,6 +143,8 @@ struct kvm_debug_exit_arch { + #define KVM_GUESTDBG_USE_HW (1 << 17) + + struct kvm_sync_regs { ++ /* Used with KVM_CAP_ARM_USER_IRQ */ ++ __u64 device_irq_level; + }; + + struct kvm_arch_memory_slot { +diff --git a/linux-headers/linux/kvm.h b/linux-headers/linux/kvm.h +index 4e082a81b4..72f0d21103 100644 +--- a/linux-headers/linux/kvm.h ++++ b/linux-headers/linux/kvm.h +@@ -883,6 +883,7 @@ struct kvm_ppc_resize_hpt { + #define KVM_CAP_PPC_MMU_RADIX 134 + #define KVM_CAP_PPC_MMU_HASH_V3 135 + #define KVM_CAP_IMMEDIATE_EXIT 136 ++#define KVM_CAP_ARM_USER_IRQ (0x1000 | 137) + + #ifdef KVM_CAP_IRQ_ROUTING + +@@ -1354,4 +1355,11 @@ struct kvm_assigned_msix_entry { + #define KVM_X2APIC_API_USE_32BIT_IDS (1ULL << 0) + #define KVM_X2APIC_API_DISABLE_BROADCAST_QUIRK (1ULL << 1) + ++/* Available with KVM_CAP_ARM_USER_IRQ */ ++ ++/* Bits for run->s.regs.device_irq_level */ ++#define KVM_ARM_DEV_EL1_VTIMER (1 << 0) ++#define KVM_ARM_DEV_EL1_PTIMER (1 << 1) ++#define KVM_ARM_DEV_PMU (1 << 2) ++ + #endif /* __LINUX_KVM_H */ diff --git a/0047-ARM-KVM-Enable-in-kernel-timers-wit.patch b/0047-ARM-KVM-Enable-in-kernel-timers-wit.patch new file mode 100644 index 00000000..fd9ceb94 --- /dev/null +++ b/0047-ARM-KVM-Enable-in-kernel-timers-wit.patch @@ -0,0 +1,108 @@ +From 000ea43f23d170f09ad71d0c7353ceb201789607 Mon Sep 17 00:00:00 2001 +From: Alexander Graf +Date: Mon, 19 Sep 2016 10:02:55 +0200 +Subject: [PATCH] ARM: KVM: Enable in-kernel timers with user space gic + +When running with KVM enabled, you can choose between emulating the +gic in kernel or user space. If the kernel supports in-kernel virtualization +of the interrupt controller, it will default to that. If not, if will +default to user space emulation. + +Unfortunately when running in user mode gic emulation, we miss out on +timer events which are only available from kernel space. This patch leverages +the new kernel/user space pending line synchronization for those timer events. + +Signed-off-by: Alexander Graf +--- + hw/arm/virt.c | 10 ++++++++++ + target/arm/cpu.h | 3 +++ + target/arm/kvm.c | 31 ++++++++++++++++++++++++++++++- + 3 files changed, 43 insertions(+), 1 deletion(-) + +diff --git a/hw/arm/virt.c b/hw/arm/virt.c +index 5f62a0321e..a1d24a4db6 100644 +--- a/hw/arm/virt.c ++++ b/hw/arm/virt.c +@@ -609,6 +609,16 @@ static void create_gic(VirtMachineState *vms, qemu_irq *pic) + } else if (type == 2) { + create_v2m(vms, pic); + } ++ ++#ifdef CONFIG_KVM ++ if (kvm_enabled() && !kvm_irqchip_in_kernel()) { ++ if (!kvm_check_extension(kvm_state, KVM_CAP_ARM_USER_IRQ)) { ++ error_report("KVM with user space irqchip only works when the " ++ "host kernel supports KVM_CAP_ARM_USER_IRQ"); ++ exit(1); ++ } ++ } ++#endif + } + + static void create_uart(const VirtMachineState *vms, qemu_irq *pic, int uart, +diff --git a/target/arm/cpu.h b/target/arm/cpu.h +index a8aabce7dd..19cb596449 100644 +--- a/target/arm/cpu.h ++++ b/target/arm/cpu.h +@@ -702,6 +702,9 @@ struct ARMCPU { + + ARMELChangeHook *el_change_hook; + void *el_change_hook_opaque; ++ ++ /* Used to synchronize KVM and QEMU timer levels */ ++ uint64_t device_irq_level; + }; + + static inline ARMCPU *arm_env_get_cpu(CPUARMState *env) +diff --git a/target/arm/kvm.c b/target/arm/kvm.c +index 45554682f2..dccb326615 100644 +--- a/target/arm/kvm.c ++++ b/target/arm/kvm.c +@@ -174,6 +174,12 @@ int kvm_arch_init(MachineState *ms, KVMState *s) + */ + kvm_async_interrupts_allowed = true; + ++ /* ++ * PSCI wakes up secondary cores, so we always need to ++ * have vCPUs waiting in kernel space ++ */ ++ kvm_halt_in_kernel_allowed = true; ++ + cap_has_mp_state = kvm_check_extension(s, KVM_CAP_MP_STATE); + + type_register_static(&host_arm_cpu_type_info); +@@ -528,10 +534,33 @@ void kvm_arch_pre_run(CPUState *cs, struct kvm_run *run) + + MemTxAttrs kvm_arch_post_run(CPUState *cs, struct kvm_run *run) + { ++ ARMCPU *cpu; ++ ++ if (kvm_irqchip_in_kernel()) { ++ /* ++ * We only need to sync timer states with user-space interrupt ++ * controllers, so return early and save cycles if we don't. ++ */ ++ return MEMTXATTRS_UNSPECIFIED; ++ } ++ ++ cpu = ARM_CPU(cs); ++ ++ /* Synchronize our internal vtimer irq line with the kvm one */ ++ if (run->s.regs.device_irq_level != cpu->device_irq_level) { ++ qemu_mutex_lock_iothread(); ++ qemu_set_irq(cpu->gt_timer_outputs[GTIMER_VIRT], ++ run->s.regs.device_irq_level & KVM_ARM_DEV_EL1_VTIMER); ++ qemu_set_irq(cpu->gt_timer_outputs[GTIMER_PHYS], ++ run->s.regs.device_irq_level & KVM_ARM_DEV_EL1_PTIMER); ++ /* TODO: Handle changes in PMU as well */ ++ cpu->device_irq_level = run->s.regs.device_irq_level; ++ qemu_mutex_unlock_iothread(); ++ } ++ + return MEMTXATTRS_UNSPECIFIED; + } + +- + int kvm_arch_handle_exit(CPUState *cs, struct kvm_run *run) + { + int ret = 0; diff --git a/0047-hw-intc-arm_gicv3_kvm-Check-KVM_DEV.patch b/0047-hw-intc-arm_gicv3_kvm-Check-KVM_DEV.patch deleted file mode 100644 index 30f7e262..00000000 --- a/0047-hw-intc-arm_gicv3_kvm-Check-KVM_DEV.patch +++ /dev/null @@ -1,54 +0,0 @@ -From e46f223e5fadfeaeecc7a4744733184130b5dd0d Mon Sep 17 00:00:00 2001 -From: Eric Auger -Date: Tue, 28 Mar 2017 19:20:40 +0200 -Subject: [PATCH] hw/intc/arm_gicv3_kvm: Check KVM_DEV_ARM_VGIC_GRP_CPU_SYSREGS - in reset - -KVM_DEV_ARM_VGIC_GRP_CPU_SYSREGS needs to be checked before -attempting to read ICC_CTLR_EL1; otherwise kernel versions not -exposing this kvm device group will be incompatible with qemu 2.9. - -Fixes: 07a5628 ("hw/intc/arm_gicv3_kvm: Reset GICv3 cpu interface registers") -Signed-off-by: Eric Auger -Reported-by: Prakash B -(agraf: Fixes gicv3 KVM on SP2 kernel) -Signed-off-by: Alexander Graf ---- - hw/intc/arm_gicv3_kvm.c | 17 +++++++++++------ - 1 file changed, 11 insertions(+), 6 deletions(-) - -diff --git a/hw/intc/arm_gicv3_kvm.c b/hw/intc/arm_gicv3_kvm.c -index 81f0403..19aab56 100644 ---- a/hw/intc/arm_gicv3_kvm.c -+++ b/hw/intc/arm_gicv3_kvm.c -@@ -614,12 +614,6 @@ static void arm_gicv3_icc_reset(CPUARMState *env, const ARMCPRegInfo *ri) - s = c->gic; - cpu = ARM_CPU(c->cpu); - -- /* Initialize to actual HW supported configuration */ -- kvm_device_access(s->dev_fd, KVM_DEV_ARM_VGIC_GRP_CPU_SYSREGS, -- KVM_VGIC_ATTR(ICC_CTLR_EL1, cpu->mp_affinity), -- &c->icc_ctlr_el1[GICV3_NS], false); -- -- c->icc_ctlr_el1[GICV3_S] = c->icc_ctlr_el1[GICV3_NS]; - c->icc_pmr_el1 = 0; - c->icc_bpr[GICV3_G0] = GIC_MIN_BPR; - c->icc_bpr[GICV3_G1] = GIC_MIN_BPR; -@@ -628,6 +622,17 @@ static void arm_gicv3_icc_reset(CPUARMState *env, const ARMCPRegInfo *ri) - c->icc_sre_el1 = 0x7; - memset(c->icc_apr, 0, sizeof(c->icc_apr)); - memset(c->icc_igrpen, 0, sizeof(c->icc_igrpen)); -+ -+ if (s->migration_blocker) { -+ return; -+ } -+ -+ /* Initialize to actual HW supported configuration */ -+ kvm_device_access(s->dev_fd, KVM_DEV_ARM_VGIC_GRP_CPU_SYSREGS, -+ KVM_VGIC_ATTR(ICC_CTLR_EL1, cpu->mp_affinity), -+ &c->icc_ctlr_el1[GICV3_NS], false); -+ -+ c->icc_ctlr_el1[GICV3_S] = c->icc_ctlr_el1[GICV3_NS]; - } - - static void kvm_arm_gicv3_reset(DeviceState *dev) diff --git a/0048-i386-Replace-uint32_t-with-FeatureW.patch b/0048-i386-Replace-uint32_t-with-FeatureW.patch deleted file mode 100644 index 231929e3..00000000 --- a/0048-i386-Replace-uint32_t-with-FeatureW.patch +++ /dev/null @@ -1,99 +0,0 @@ -From d6b04856c99c5c9f896e324214643566ba35ed9a Mon Sep 17 00:00:00 2001 -From: Eduardo Habkost -Date: Mon, 27 Mar 2017 11:48:14 -0300 -Subject: [PATCH] i386: Replace uint32_t* with FeatureWord on feature - getter/setter - -Instead of passing a pointer to the feature property getter and -setter functions, pass a FeatureWord enum so they can perform -other actions related to the feature flag. - -This will be used to add a new "user_features" field to keep -track of features that were explicitly set by the user. - -Signed-off-by: Eduardo Habkost -Message-Id: <20170327144815.8043-2-ehabkost@redhat.com> -Reviewed-by: Igor Mammedov -Tested-by: Jiri Denemark -Signed-off-by: Eduardo Habkost -Signed-off-by: Bruce Rogers ---- - target/i386/cpu.c | 19 +++++++++++-------- - 1 file changed, 11 insertions(+), 8 deletions(-) - -diff --git a/target/i386/cpu.c b/target/i386/cpu.c -index 7aa7622..feefa5b 100644 ---- a/target/i386/cpu.c -+++ b/target/i386/cpu.c -@@ -3692,15 +3692,17 @@ static void x86_cpu_unrealizefn(DeviceState *dev, Error **errp) - } - - typedef struct BitProperty { -- uint32_t *ptr; -+ FeatureWord w; - uint32_t mask; - } BitProperty; - - static void x86_cpu_get_bit_prop(Object *obj, Visitor *v, const char *name, - void *opaque, Error **errp) - { -+ X86CPU *cpu = X86_CPU(obj); - BitProperty *fp = opaque; -- bool value = (*fp->ptr & fp->mask) == fp->mask; -+ uint32_t f = cpu->env.features[fp->w]; -+ bool value = (f & fp->mask) == fp->mask; - visit_type_bool(v, name, &value, errp); - } - -@@ -3708,6 +3710,7 @@ static void x86_cpu_set_bit_prop(Object *obj, Visitor *v, const char *name, - void *opaque, Error **errp) - { - DeviceState *dev = DEVICE(obj); -+ X86CPU *cpu = X86_CPU(obj); - BitProperty *fp = opaque; - Error *local_err = NULL; - bool value; -@@ -3724,9 +3727,9 @@ static void x86_cpu_set_bit_prop(Object *obj, Visitor *v, const char *name, - } - - if (value) { -- *fp->ptr |= fp->mask; -+ cpu->env.features[fp->w] |= fp->mask; - } else { -- *fp->ptr &= ~fp->mask; -+ cpu->env.features[fp->w] &= ~fp->mask; - } - } - -@@ -3745,7 +3748,7 @@ static void x86_cpu_release_bit_prop(Object *obj, const char *name, - */ - static void x86_cpu_register_bit_prop(X86CPU *cpu, - const char *prop_name, -- uint32_t *field, -+ FeatureWord w, - int bitnr) - { - BitProperty *fp; -@@ -3755,11 +3758,11 @@ static void x86_cpu_register_bit_prop(X86CPU *cpu, - op = object_property_find(OBJECT(cpu), prop_name, NULL); - if (op) { - fp = op->opaque; -- assert(fp->ptr == field); -+ assert(fp->w == w); - fp->mask |= mask; - } else { - fp = g_new0(BitProperty, 1); -- fp->ptr = field; -+ fp->w = w; - fp->mask = mask; - object_property_add(OBJECT(cpu), prop_name, "bool", - x86_cpu_get_bit_prop, -@@ -3787,7 +3790,7 @@ static void x86_cpu_register_feature_bit_props(X86CPU *cpu, - /* aliases don't use "|" delimiters anymore, they are registered - * manually using object_property_add_alias() */ - assert(!strchr(name, '|')); -- x86_cpu_register_bit_prop(cpu, name, &cpu->env.features[w], bitnr); -+ x86_cpu_register_bit_prop(cpu, name, w, bitnr); - } - - static GuestPanicInformation *x86_cpu_get_crash_info(CPUState *cs) diff --git a/0048-input-Add-trace-event-for-empty-key.patch b/0048-input-Add-trace-event-for-empty-key.patch new file mode 100644 index 00000000..c6ffb40e --- /dev/null +++ b/0048-input-Add-trace-event-for-empty-key.patch @@ -0,0 +1,48 @@ +From 1337d5da71ac778f2eff10554d2de12c95d5e30e Mon Sep 17 00:00:00 2001 +From: Alexander Graf +Date: Thu, 30 Mar 2017 15:32:08 +0200 +Subject: [PATCH] input: Add trace event for empty keyboard queue + +When driving QEMU from the outside, we have basically no chance to +determine how quickly the guest OS picks up key events, so we usually +have to limit ourselves to very slow keyboard presses to make sure +the guest always has enough chance to pick them up. + +This patch adds a trace events when the keyboarde queue is drained. +An external driver can use that as hint that new keys can be pressed. + +Signed-off-by: Alexander Graf +[BR: BSC#1031692] +Signed-off-by: Bruce Rogers +--- + hw/input/hid.c | 4 ++++ + hw/input/trace-events | 1 + + 2 files changed, 5 insertions(+) + +diff --git a/hw/input/hid.c b/hw/input/hid.c +index fa9cc4c616..93887ecc43 100644 +--- a/hw/input/hid.c ++++ b/hw/input/hid.c +@@ -256,6 +256,10 @@ static void hid_keyboard_process_keycode(HIDState *hs) + slot = hs->head & QUEUE_MASK; QUEUE_INCR(hs->head); hs->n--; + keycode = hs->kbd.keycodes[slot]; + ++ if (!hs->n) { ++ trace_hid_kbd_queue_empty(); ++ } ++ + key = keycode & 0x7f; + index = key | ((hs->kbd.modifiers & (1 << 8)) >> 1); + hid_code = hid_usage_keys[index]; +diff --git a/hw/input/trace-events b/hw/input/trace-events +index f3bfbede5c..5a87818b49 100644 +--- a/hw/input/trace-events ++++ b/hw/input/trace-events +@@ -24,6 +24,7 @@ milkymist_softusb_pulse_irq(void) "Pulse IRQ" + + # hw/input/hid.c + hid_kbd_queue_full(void) "queue full" ++hid_kbd_queue_empty(void) "queue empty" + + # hw/input/virtio + virtio_input_queue_full(void) "queue full" diff --git a/0049-i386-Don-t-override-cpu-options-on-.patch b/0049-i386-Don-t-override-cpu-options-on-.patch deleted file mode 100644 index c758bd49..00000000 --- a/0049-i386-Don-t-override-cpu-options-on-.patch +++ /dev/null @@ -1,91 +0,0 @@ -From f29ffe6356b02ac5af7089e63b11ce22fd3313ed Mon Sep 17 00:00:00 2001 -From: Eduardo Habkost -Date: Mon, 27 Mar 2017 11:48:15 -0300 -Subject: [PATCH] i386: Don't override -cpu options on -cpu host/max - -The existing code for "host" and "max" CPU models overrides every -single feature in the CPU object at realize time, even the ones -that were explicitly enabled or disabled by the user using -"feat=on" or "feat=off", while features set using +feat/-feat are -kept. - -This means "-cpu host,+invtsc" works as expected, while -"-cpu host,invtsc=on" doesn't. - -This was a known bug, already documented in a comment inside -x86_cpu_expand_features(). What makes this bug worse now is that -libvirt 3.0.0 and newer now use "feat=on|off" instead of -+feat/-feat when it detects a QEMU version that supports it (see -libvirt commit d47db7b16dd5422c7e487c8c8ee5b181a2f9cd66). - -Change the feature property getter/setter to set a -env->user_features field, to keep track of features that were -explicitly changed using QOM properties. Then make the -max_features code not override user features when handling "-cpu -host" and "-cpu max". - -This will also allow us to remove the plus_features/minus_features -hack in the future, but I plan to do that after 2.9.0 is -released. - -Reported-by: Jiri Denemark -Signed-off-by: Eduardo Habkost -Message-Id: <20170327144815.8043-3-ehabkost@redhat.com> -Reviewed-by: Igor Mammedov -Tested-by: Jiri Denemark -Signed-off-by: Eduardo Habkost -Signed-off-by: Bruce Rogers ---- - target/i386/cpu.c | 13 +++++++++---- - target/i386/cpu.h | 2 ++ - 2 files changed, 11 insertions(+), 4 deletions(-) - -diff --git a/target/i386/cpu.c b/target/i386/cpu.c -index feefa5b..13c0985 100644 ---- a/target/i386/cpu.c -+++ b/target/i386/cpu.c -@@ -3373,15 +3373,19 @@ static void x86_cpu_expand_features(X86CPU *cpu, Error **errp) - GList *l; - Error *local_err = NULL; - -- /*TODO: cpu->max_features incorrectly overwrites features -- * set using "feat=on|off". Once we fix this, we can convert -+ /*TODO: Now cpu->max_features doesn't overwrite features -+ * set using QOM properties, and we can convert - * plus_features & minus_features to global properties - * inside x86_cpu_parse_featurestr() too. - */ - if (cpu->max_features) { - for (w = 0; w < FEATURE_WORDS; w++) { -- env->features[w] = -- x86_cpu_get_supported_feature_word(w, cpu->migratable); -+ /* Override only features that weren't set explicitly -+ * by the user. -+ */ -+ env->features[w] |= -+ x86_cpu_get_supported_feature_word(w, cpu->migratable) & -+ ~env->user_features[w]; - } - } - -@@ -3731,6 +3735,7 @@ static void x86_cpu_set_bit_prop(Object *obj, Visitor *v, const char *name, - } else { - cpu->env.features[fp->w] &= ~fp->mask; - } -+ cpu->env.user_features[fp->w] |= fp->mask; - } - - static void x86_cpu_release_bit_prop(Object *obj, const char *name, -diff --git a/target/i386/cpu.h b/target/i386/cpu.h -index 64545b2..81c02c5 100644 ---- a/target/i386/cpu.h -+++ b/target/i386/cpu.h -@@ -1147,6 +1147,8 @@ typedef struct CPUX86State { - uint32_t cpuid_vendor3; - uint32_t cpuid_version; - FeatureWordArray features; -+ /* Features that were explicitly enabled/disabled */ -+ FeatureWordArray user_features; - uint32_t cpuid_model[12]; - - /* MTRRs */ diff --git a/ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch b/ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch new file mode 100644 index 00000000..1241781a --- /dev/null +++ b/ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch @@ -0,0 +1,168 @@ +From 5f85cbb9ee1c00cec81a848a9e871ad5d1e7f53f Mon Sep 17 00:00:00 2001 +From: Michael Brown +Date: Wed, 29 Mar 2017 10:36:03 +0300 +Subject: [PATCH] [build] Avoid implicit-fallthrough warnings on GCC 7 + +Reported-by: Vinson Lee +Reported-by: Liang Yan +Signed-off-by: Michael Brown +[BR: BSC#1031340] +Signed-off-by: Bruce Rogers +--- + src/arch/x86/image/bzimage.c | 2 ++ + src/drivers/infiniband/golan.c | 1 + + src/drivers/net/ath/ath9k/ath9k_ar5008_phy.c | 2 ++ + src/drivers/net/ath/ath9k/ath9k_ar9002_phy.c | 1 + + src/drivers/net/ath/ath9k/ath9k_ar9003_phy.c | 1 + + src/drivers/net/igbvf/igbvf_vf.c | 1 + + src/drivers/net/tg3/tg3_hw.c | 12 ++++++++++++ + src/tests/setjmp_test.c | 5 +++-- + 8 files changed, 23 insertions(+), 2 deletions(-) + +diff --git a/src/arch/x86/image/bzimage.c b/src/arch/x86/image/bzimage.c +index e3c4cb83..51498bf9 100644 +--- a/src/arch/x86/image/bzimage.c ++++ b/src/arch/x86/image/bzimage.c +@@ -282,9 +282,11 @@ static int bzimage_parse_cmdline ( struct image *image, + case 'G': + case 'g': + bzimg->mem_limit <<= 10; ++ /* Fall through */ + case 'M': + case 'm': + bzimg->mem_limit <<= 10; ++ /* Fall through */ + case 'K': + case 'k': + bzimg->mem_limit <<= 10; +diff --git a/src/drivers/infiniband/golan.c b/src/drivers/infiniband/golan.c +index 30eaabab..61331d4c 100755 +--- a/src/drivers/infiniband/golan.c ++++ b/src/drivers/infiniband/golan.c +@@ -1956,6 +1956,7 @@ static inline void golan_handle_port_event(struct golan *golan, struct golan_eqe + case GOLAN_PORT_CHANGE_SUBTYPE_CLIENT_REREG: + case GOLAN_PORT_CHANGE_SUBTYPE_ACTIVE: + golan_ib_update ( ibdev ); ++ /* Fall through */ + case GOLAN_PORT_CHANGE_SUBTYPE_DOWN: + case GOLAN_PORT_CHANGE_SUBTYPE_LID: + case GOLAN_PORT_CHANGE_SUBTYPE_PKEY: +diff --git a/src/drivers/net/ath/ath9k/ath9k_ar5008_phy.c b/src/drivers/net/ath/ath9k/ath9k_ar5008_phy.c +index 2b6c133c..a98e4bb6 100644 +--- a/src/drivers/net/ath/ath9k/ath9k_ar5008_phy.c ++++ b/src/drivers/net/ath/ath9k/ath9k_ar5008_phy.c +@@ -640,12 +640,14 @@ static void ar5008_hw_init_chain_masks(struct ath_hw *ah) + case 0x5: + REG_SET_BIT(ah, AR_PHY_ANALOG_SWAP, + AR_PHY_SWAP_ALT_CHAIN); ++ /* Fall through */ + case 0x3: + if (ah->hw_version.macVersion == AR_SREV_REVISION_5416_10) { + REG_WRITE(ah, AR_PHY_RX_CHAINMASK, 0x7); + REG_WRITE(ah, AR_PHY_CAL_CHAINMASK, 0x7); + break; + } ++ /* Fall through */ + case 0x1: + case 0x2: + case 0x7: +diff --git a/src/drivers/net/ath/ath9k/ath9k_ar9002_phy.c b/src/drivers/net/ath/ath9k/ath9k_ar9002_phy.c +index 72203ba4..65cfad59 100644 +--- a/src/drivers/net/ath/ath9k/ath9k_ar9002_phy.c ++++ b/src/drivers/net/ath/ath9k/ath9k_ar9002_phy.c +@@ -122,6 +122,7 @@ static int ar9002_hw_set_channel(struct ath_hw *ah, struct ath9k_channel *chan) + aModeRefSel = 2; + if (aModeRefSel) + break; ++ /* Fall through */ + case 1: + default: + aModeRefSel = 0; +diff --git a/src/drivers/net/ath/ath9k/ath9k_ar9003_phy.c b/src/drivers/net/ath/ath9k/ath9k_ar9003_phy.c +index 2244b775..b66358b9 100644 +--- a/src/drivers/net/ath/ath9k/ath9k_ar9003_phy.c ++++ b/src/drivers/net/ath/ath9k/ath9k_ar9003_phy.c +@@ -539,6 +539,7 @@ void ar9003_hw_set_chain_masks(struct ath_hw *ah, u8 rx, u8 tx) + case 0x5: + REG_SET_BIT(ah, AR_PHY_ANALOG_SWAP, + AR_PHY_SWAP_ALT_CHAIN); ++ /* Fall through */ + case 0x3: + case 0x1: + case 0x2: +diff --git a/src/drivers/net/igbvf/igbvf_vf.c b/src/drivers/net/igbvf/igbvf_vf.c +index f2dac8be..f841d5e3 100644 +--- a/src/drivers/net/igbvf/igbvf_vf.c ++++ b/src/drivers/net/igbvf/igbvf_vf.c +@@ -357,6 +357,7 @@ s32 igbvf_promisc_set_vf(struct e1000_hw *hw, enum e1000_promisc_type type) + break; + case e1000_promisc_enabled: + msgbuf |= E1000_VF_SET_PROMISC_MULTICAST; ++ /* Fall through */ + case e1000_promisc_unicast: + msgbuf |= E1000_VF_SET_PROMISC_UNICAST; + case e1000_promisc_disabled: +diff --git a/src/drivers/net/tg3/tg3_hw.c b/src/drivers/net/tg3/tg3_hw.c +index 50353cf3..798f8519 100644 +--- a/src/drivers/net/tg3/tg3_hw.c ++++ b/src/drivers/net/tg3/tg3_hw.c +@@ -2518,28 +2518,40 @@ static int tg3_reset_hw(struct tg3 *tp, int reset_phy) + switch (limit) { + case 16: + tw32(MAC_RCV_RULE_15, 0); tw32(MAC_RCV_VALUE_15, 0); ++ /* Fall through */ + case 15: + tw32(MAC_RCV_RULE_14, 0); tw32(MAC_RCV_VALUE_14, 0); ++ /* Fall through */ + case 14: + tw32(MAC_RCV_RULE_13, 0); tw32(MAC_RCV_VALUE_13, 0); ++ /* Fall through */ + case 13: + tw32(MAC_RCV_RULE_12, 0); tw32(MAC_RCV_VALUE_12, 0); ++ /* Fall through */ + case 12: + tw32(MAC_RCV_RULE_11, 0); tw32(MAC_RCV_VALUE_11, 0); ++ /* Fall through */ + case 11: + tw32(MAC_RCV_RULE_10, 0); tw32(MAC_RCV_VALUE_10, 0); ++ /* Fall through */ + case 10: + tw32(MAC_RCV_RULE_9, 0); tw32(MAC_RCV_VALUE_9, 0); ++ /* Fall through */ + case 9: + tw32(MAC_RCV_RULE_8, 0); tw32(MAC_RCV_VALUE_8, 0); ++ /* Fall through */ + case 8: + tw32(MAC_RCV_RULE_7, 0); tw32(MAC_RCV_VALUE_7, 0); ++ /* Fall through */ + case 7: + tw32(MAC_RCV_RULE_6, 0); tw32(MAC_RCV_VALUE_6, 0); ++ /* Fall through */ + case 6: + tw32(MAC_RCV_RULE_5, 0); tw32(MAC_RCV_VALUE_5, 0); ++ /* Fall through */ + case 5: + tw32(MAC_RCV_RULE_4, 0); tw32(MAC_RCV_VALUE_4, 0); ++ /* Fall through */ + case 4: + /* tw32(MAC_RCV_RULE_3, 0); tw32(MAC_RCV_VALUE_3, 0); */ + case 3: +diff --git a/src/tests/setjmp_test.c b/src/tests/setjmp_test.c +index 50ad13f3..deafcee0 100644 +--- a/src/tests/setjmp_test.c ++++ b/src/tests/setjmp_test.c +@@ -111,8 +111,9 @@ static void setjmp_return_ok ( struct setjmp_test *test, int value ) { + * @v file Test code file + * @v line Test code line + */ +-static void longjmp_okx ( struct setjmp_test *test, int value, +- const char *file, unsigned int line ) { ++static void __attribute__ (( noreturn )) ++longjmp_okx ( struct setjmp_test *test, int value, ++ const char *file, unsigned int line ) { + + /* Record expected value. A zero passed to longjmp() should + * result in setjmp() returning a value of one. +-- +2.12.2 + diff --git a/qemu-2.9.0-rc2.tar.xz b/qemu-2.9.0-rc2.tar.xz deleted file mode 100644 index b1419688..00000000 --- a/qemu-2.9.0-rc2.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1c3e72b6b0aeca5c7dd9b5a788b676e7dfb6486f1256224cd2bda01fae0eace4 -size 22821160 diff --git a/qemu-2.9.0-rc2.tar.xz.sig b/qemu-2.9.0-rc2.tar.xz.sig deleted file mode 100644 index 2b359a42..00000000 Binary files a/qemu-2.9.0-rc2.tar.xz.sig and /dev/null differ diff --git a/qemu-2.9.0-rc4.tar.xz b/qemu-2.9.0-rc4.tar.xz new file mode 100644 index 00000000..8bb75829 --- /dev/null +++ b/qemu-2.9.0-rc4.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7001d2f3d9be087345bca403bda63272917870901a1a9cdd57eb96cb93f60d4 +size 22828764 diff --git a/qemu-2.9.0-rc4.tar.xz.sig b/qemu-2.9.0-rc4.tar.xz.sig new file mode 100644 index 00000000..d75d5e69 Binary files /dev/null and b/qemu-2.9.0-rc4.tar.xz.sig differ diff --git a/qemu-linux-user.changes b/qemu-linux-user.changes index f793cbe7..37bc62c6 100644 --- a/qemu-linux-user.changes +++ b/qemu-linux-user.changes @@ -1,3 +1,36 @@ +------------------------------------------------------------------- +Wed Apr 12 15:15:28 UTC 2017 - brogers@suse.com + +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 +* Patches added: + 0048-input-Add-trace-event-for-empty-key.patch + +------------------------------------------------------------------- +Tue Apr 11 19:32:00 UTC 2017 - brogers@suse.com + +- Updated to v2.9.0-rc4: See http://wiki.qemu-project.org/ChangeLog/2.9 +* Patches renamed: + 0041-ARM-KVM-Enable-in-kernel-timers-wit.patch -> 0047-ARM-KVM-Enable-in-kernel-timers-wit.patch + 0042-string-input-visitor-Fix-uint64-par.patch -> 0041-string-input-visitor-Fix-uint64-par.patch + 0043-test-string-input-visitor-Add-int-t.patch -> 0042-test-string-input-visitor-Add-int-t.patch + 0044-test-string-input-visitor-Add-uint6.patch -> 0043-test-string-input-visitor-Add-uint6.patch + 0045-tests-Add-QOM-property-unit-tests.patch -> 0044-tests-Add-QOM-property-unit-tests.patch + 0046-tests-Add-scsi-disk-test.patch -> 0045-tests-Add-scsi-disk-test.patch +* Patches added: + 0046-RFC-update-Linux-headers-from-irqs-.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 + +------------------------------------------------------------------- +Wed Apr 5 16:50:51 UTC 2017 - brogers@suse.com + +- Updated to v2.9.0-rc3: See http://wiki.qemu-project.org/ChangeLog/2.9 +* Patches dropped: + 0047-hw-intc-arm_gicv3_kvm-Check-KVM_DEV.patch + 0048-i386-Replace-uint32_t-with-FeatureW.patch + 0049-i386-Don-t-override-cpu-options-on-.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 +- Made miscellaneous spec file refinements + ------------------------------------------------------------------- Thu Mar 30 22:46:47 UTC 2017 - brogers@suse.com @@ -9,11 +42,12 @@ Thu Mar 30 22:46:47 UTC 2017 - brogers@suse.com ------------------------------------------------------------------- Tue Mar 28 22:12:56 UTC 2017 - brogers@suse.com -- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 +- Updated to v2.9.0-rc2: See http://wiki.qemu-project.org/ChangeLog/2.9 * Patches dropped: 0047-linux-user-exclude-cpu-model-code-w.patch * Patches added: 0047-hw-intc-arm_gicv3_kvm-Check-KVM_DEV.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 ------------------------------------------------------------------- Tue Mar 21 20:53:50 UTC 2017 - brogers@suse.com diff --git a/qemu-linux-user.spec b/qemu-linux-user.spec index 0a105bcf..b7d493ab 100644 --- a/qemu-linux-user.spec +++ b/qemu-linux-user.spec @@ -21,9 +21,9 @@ Url: http://www.qemu.org/ Summary: Universal CPU emulator License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT Group: System/Emulators/PC -Version: 2.8.92 +Version: 2.8.94 Release: 0 -Source: qemu-2.9.0-rc2.tar.xz +Source: qemu-2.9.0-rc4.tar.xz # Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch # This patch queue is auto-generated from https://github.com/openSUSE/qemu Patch0001: 0001-XXX-dont-dump-core-on-sigabort.patch @@ -66,15 +66,14 @@ Patch0037: 0037-i8254-Fix-migration-from-SLE11-SP2.patch Patch0038: 0038-acpi_piix4-Fix-migration-from-SLE11.patch Patch0039: 0039-Fix-tigervnc-long-press-issue.patch Patch0040: 0040-fix-xen-hvm-direct-kernel-boot.patch -Patch0041: 0041-ARM-KVM-Enable-in-kernel-timers-wit.patch -Patch0042: 0042-string-input-visitor-Fix-uint64-par.patch -Patch0043: 0043-test-string-input-visitor-Add-int-t.patch -Patch0044: 0044-test-string-input-visitor-Add-uint6.patch -Patch0045: 0045-tests-Add-QOM-property-unit-tests.patch -Patch0046: 0046-tests-Add-scsi-disk-test.patch -Patch0047: 0047-hw-intc-arm_gicv3_kvm-Check-KVM_DEV.patch -Patch0048: 0048-i386-Replace-uint32_t-with-FeatureW.patch -Patch0049: 0049-i386-Don-t-override-cpu-options-on-.patch +Patch0041: 0041-string-input-visitor-Fix-uint64-par.patch +Patch0042: 0042-test-string-input-visitor-Add-int-t.patch +Patch0043: 0043-test-string-input-visitor-Add-uint6.patch +Patch0044: 0044-tests-Add-QOM-property-unit-tests.patch +Patch0045: 0045-tests-Add-scsi-disk-test.patch +Patch0046: 0046-RFC-update-Linux-headers-from-irqs-.patch +Patch0047: 0047-ARM-KVM-Enable-in-kernel-timers-wit.patch +Patch0048: 0048-input-Add-trace-event-for-empty-key.patch # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. Source400: update_git.sh @@ -100,7 +99,6 @@ BuildRequires: libattr-devel %if 0%{?suse_version} > 1220 BuildRequires: makeinfo %endif -BuildRequires: ncurses-devel %if 0%{?suse_version} >= 1220 BuildRequires: pcre-devel-static %endif @@ -128,7 +126,7 @@ emulations. This can be used together with the OBS build script to run cross-architecture builds. %prep -%setup -q -n qemu-2.9.0-rc2 +%setup -q -n qemu-2.9.0-rc4 %patch0001 -p1 %patch0002 -p1 %patch0003 -p1 @@ -177,22 +175,74 @@ run cross-architecture builds. %patch0046 -p1 %patch0047 -p1 %patch0048 -p1 -%patch0049 -p1 %build -./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \ +./configure \ + --prefix=%_prefix \ + --sysconfdir=%_sysconfdir \ + --libdir=%_libdir \ --libexecdir=%_libexecdir \ - --enable-linux-user \ + --localstatedir=%_localstatedir \ + --extra-cflags="%{optflags}" \ --disable-stack-protector \ - --disable-system \ - --disable-tools \ - --disable-guest-agent \ - --static --disable-linux-aio \ - --disable-fdt \ - --without-pixman \ - --disable-blobs \ --disable-strip \ - --extra-cflags="%{optflags}" + --disable-system --enable-linux-user \ + --disable-tools --disable-guest-agent \ + --static \ + --disable-modules \ + --disable-pie \ + --disable-docs \ + --audio-drv-list="" \ + --enable-attr \ + --disable-blobs \ + --disable-bluez \ + --disable-brlapi \ + --disable-bzip2 \ + --disable-cap-ng \ + --enable-coroutine-pool \ + --disable-curl \ + --disable-curses \ + --disable-fdt \ + --disable-gcrypt \ + --disable-glusterfs \ + --disable-gnutls \ + --disable-gtk \ + --disable-hax \ + --disable-jemalloc \ + --disable-kvm \ + --disable-libiscsi \ + --disable-linux-aio \ + --disable-lzo \ + --disable-netmap \ + --disable-nettle \ + --disable-numa \ + --disable-opengl \ + --without-pixman \ + --disable-rbd \ + --disable-rdma \ + --disable-replication \ + --disable-sdl \ + --disable-seccomp \ + --disable-smartcard \ + --disable-snappy \ + --disable-spice \ + --disable-tcmalloc \ + --disable-tpm \ + --disable-usb-redir \ + --disable-vde \ + --disable-vhost-net \ + --disable-virglrenderer \ + --disable-virtfs \ + --disable-vnc \ + --disable-vnc-jpeg \ + --disable-vnc-png \ + --disable-vnc-sasl \ + --disable-vte \ + --disable-xen \ + --disable-xen-pci-passthrough \ + --disable-xen-pv-domain-build \ + --disable-xfsctl \ + %if 0%{?suse_version} == 1140 # -lrt needs to come after -lglib-2.0 to avoid undefined clock_gettime sed -i "s/-lglib-2.0/-lglib-2.0 -lrt/" config-host.mak @@ -233,26 +283,19 @@ make %{?_smp_mflags} V=1 %install make install DESTDIR=%{buildroot} -%{__rm} -rf %{buildroot}%_datadir/doc -%{__rm} -rf %{buildroot}%_mandir/man1/qemu.1 -%{__rm} -rf %{buildroot}%_mandir/man1/qemu-img.1 -%{__rm} -rf %{buildroot}%_mandir/man8/qemu-nbd.8 -%{__rm} -rf %{buildroot}%_datadir/qemu/keymaps -%{__rm} -rf %{buildroot}%_datadir/qemu/trace-events-all -%{__rm} -rf %{buildroot}%_sysconfdir/qemu/target-x86_64.conf -%{__rm} -rf %{buildroot}%_libexecdir/qemu-bridge-helper -%{__install} -d -m 755 %{buildroot}%_sbindir -%{__install} -m 755 scripts/qemu-binfmt-conf.sh %{buildroot}%_sbindir +rm -rf %{buildroot}%_datadir/qemu/keymaps +unlink %{buildroot}%_datadir/qemu/trace-events-all +unlink %{buildroot}%_libexecdir/qemu-bridge-helper +install -d -m 755 %{buildroot}%_sbindir +install -m 755 scripts/qemu-binfmt-conf.sh %{buildroot}%_sbindir %ifnarch %ix86 x86_64 ln -sf ../../../emul/ia32-linux %{buildroot}%_datadir/qemu/qemu-i386 %endif -%ifnarch ia64 -%{__mkdir} -p %{buildroot}/emul/ia32-linux -%endif +mkdir -p %{buildroot}/emul/ia32-linux %fdupes -s %{buildroot} %clean -%{__rm} -rf %{buildroot} +rm -rf %{buildroot} %files %defattr(-, root, root) @@ -288,13 +331,10 @@ ln -sf ../../../emul/ia32-linux %{buildroot}%_datadir/qemu/qemu-i386 %_bindir/qemu-x86_64 %_bindir/qemu-*-binfmt %_sbindir/qemu-binfmt-conf.sh -%ifnarch %ix86 x86_64 ia64 -%dir /emul/ia32-linux -%endif %ifnarch %ix86 x86_64 +%dir /emul/ia32-linux %dir %_datadir/qemu %_datadir/qemu/qemu-i386 %endif -%doc %_mandir/man7/qemu-qmp-ref.7.gz %changelog diff --git a/qemu-linux-user.spec.in b/qemu-linux-user.spec.in index a4d8de0d..39164a80 100644 --- a/qemu-linux-user.spec.in +++ b/qemu-linux-user.spec.in @@ -1,7 +1,7 @@ # # spec file for package qemu-linux-user # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -23,7 +23,7 @@ License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT Group: System/Emulators/PC QEMU_VERSION Release: 0 -Source: qemu-2.9.0-rc2.tar.xz +Source: qemu-2.9.0-rc4.tar.xz # Upstream First -- http://wiki.qemu-project.org/Contribute/SubmitAPatch # This patch queue is auto-generated from https://github.com/openSUSE/qemu PATCH_FILES @@ -52,7 +52,6 @@ BuildRequires: libattr-devel %if 0%{?suse_version} > 1220 BuildRequires: makeinfo %endif -BuildRequires: ncurses-devel %if 0%{?suse_version} >= 1220 BuildRequires: pcre-devel-static %endif @@ -80,23 +79,76 @@ emulations. This can be used together with the OBS build script to run cross-architecture builds. %prep -%setup -q -n qemu-2.9.0-rc2 +%setup -q -n qemu-2.9.0-rc4 PATCH_EXEC %build -./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \ +./configure \ + --prefix=%_prefix \ + --sysconfdir=%_sysconfdir \ + --libdir=%_libdir \ --libexecdir=%_libexecdir \ - --enable-linux-user \ + --localstatedir=%_localstatedir \ + --extra-cflags="%{optflags}" \ --disable-stack-protector \ - --disable-system \ - --disable-tools \ - --disable-guest-agent \ - --static --disable-linux-aio \ - --disable-fdt \ - --without-pixman \ - --disable-blobs \ --disable-strip \ - --extra-cflags="%{optflags}" + --disable-system --enable-linux-user \ + --disable-tools --disable-guest-agent \ + --static \ + --disable-modules \ + --disable-pie \ + --disable-docs \ + --audio-drv-list="" \ + --enable-attr \ + --disable-blobs \ + --disable-bluez \ + --disable-brlapi \ + --disable-bzip2 \ + --disable-cap-ng \ + --enable-coroutine-pool \ + --disable-curl \ + --disable-curses \ + --disable-fdt \ + --disable-gcrypt \ + --disable-glusterfs \ + --disable-gnutls \ + --disable-gtk \ + --disable-hax \ + --disable-jemalloc \ + --disable-kvm \ + --disable-libiscsi \ + --disable-linux-aio \ + --disable-lzo \ + --disable-netmap \ + --disable-nettle \ + --disable-numa \ + --disable-opengl \ + --without-pixman \ + --disable-rbd \ + --disable-rdma \ + --disable-replication \ + --disable-sdl \ + --disable-seccomp \ + --disable-smartcard \ + --disable-snappy \ + --disable-spice \ + --disable-tcmalloc \ + --disable-tpm \ + --disable-usb-redir \ + --disable-vde \ + --disable-vhost-net \ + --disable-virglrenderer \ + --disable-virtfs \ + --disable-vnc \ + --disable-vnc-jpeg \ + --disable-vnc-png \ + --disable-vnc-sasl \ + --disable-vte \ + --disable-xen \ + --disable-xen-pci-passthrough \ + --disable-xen-pv-domain-build \ + --disable-xfsctl \ + %if 0%{?suse_version} == 1140 # -lrt needs to come after -lglib-2.0 to avoid undefined clock_gettime sed -i "s/-lglib-2.0/-lglib-2.0 -lrt/" config-host.mak @@ -137,26 +189,19 @@ make %{?_smp_mflags} V=1 %install make install DESTDIR=%{buildroot} -%{__rm} -rf %{buildroot}%_datadir/doc -%{__rm} -rf %{buildroot}%_mandir/man1/qemu.1 -%{__rm} -rf %{buildroot}%_mandir/man1/qemu-img.1 -%{__rm} -rf %{buildroot}%_mandir/man8/qemu-nbd.8 -%{__rm} -rf %{buildroot}%_datadir/qemu/keymaps -%{__rm} -rf %{buildroot}%_datadir/qemu/trace-events-all -%{__rm} -rf %{buildroot}%_sysconfdir/qemu/target-x86_64.conf -%{__rm} -rf %{buildroot}%_libexecdir/qemu-bridge-helper -%{__install} -d -m 755 %{buildroot}%_sbindir -%{__install} -m 755 scripts/qemu-binfmt-conf.sh %{buildroot}%_sbindir +rm -rf %{buildroot}%_datadir/qemu/keymaps +unlink %{buildroot}%_datadir/qemu/trace-events-all +unlink %{buildroot}%_libexecdir/qemu-bridge-helper +install -d -m 755 %{buildroot}%_sbindir +install -m 755 scripts/qemu-binfmt-conf.sh %{buildroot}%_sbindir %ifnarch %ix86 x86_64 ln -sf ../../../emul/ia32-linux %{buildroot}%_datadir/qemu/qemu-i386 %endif -%ifnarch ia64 -%{__mkdir} -p %{buildroot}/emul/ia32-linux -%endif +mkdir -p %{buildroot}/emul/ia32-linux %fdupes -s %{buildroot} %clean -%{__rm} -rf %{buildroot} +rm -rf %{buildroot} %files %defattr(-, root, root) @@ -192,13 +237,10 @@ ln -sf ../../../emul/ia32-linux %{buildroot}%_datadir/qemu/qemu-i386 %_bindir/qemu-x86_64 %_bindir/qemu-*-binfmt %_sbindir/qemu-binfmt-conf.sh -%ifnarch %ix86 x86_64 ia64 -%dir /emul/ia32-linux -%endif %ifnarch %ix86 x86_64 +%dir /emul/ia32-linux %dir %_datadir/qemu %_datadir/qemu/qemu-i386 %endif -%doc %_mandir/man7/qemu-qmp-ref.7.gz %changelog diff --git a/qemu-testsuite.changes b/qemu-testsuite.changes index f8d9acbd..3a39a5cc 100644 --- a/qemu-testsuite.changes +++ b/qemu-testsuite.changes @@ -1,3 +1,43 @@ +------------------------------------------------------------------- +Wed Apr 12 15:15:25 UTC 2017 - brogers@suse.com + +- Add empty keyboard queue tracepoint to help openQA testing work + better (bsc#1031692) + 0048-input-Add-trace-event-for-empty-key.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 + +------------------------------------------------------------------- +Tue Apr 11 19:32:00 UTC 2017 - brogers@suse.com + +- Updated to v2.9.0-rc4: See http://wiki.qemu-project.org/ChangeLog/2.9 +- Enable ceph/rbd support for s390x (bsc#1030068) +- Enable ceph/rbd support for ppc* as available +- Update ARM in-kernel-timers patch (bsc#1033416) +* Patches renamed: + 0041-ARM-KVM-Enable-in-kernel-timers-wit.patch -> 0047-ARM-KVM-Enable-in-kernel-timers-wit.patch + 0042-string-input-visitor-Fix-uint64-par.patch -> 0041-string-input-visitor-Fix-uint64-par.patch + 0043-test-string-input-visitor-Add-int-t.patch -> 0042-test-string-input-visitor-Add-int-t.patch + 0044-test-string-input-visitor-Add-uint6.patch -> 0043-test-string-input-visitor-Add-uint6.patch + 0045-tests-Add-QOM-property-unit-tests.patch -> 0044-tests-Add-QOM-property-unit-tests.patch + 0046-tests-Add-scsi-disk-test.patch -> 0045-tests-Add-scsi-disk-test.patch +* Patches added (support patch): + 0046-RFC-update-Linux-headers-from-irqs-.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 + +------------------------------------------------------------------- +Wed Apr 5 16:50:48 UTC 2017 - brogers@suse.com + +- Updated to v2.9.0-rc3: See http://wiki.qemu-project.org/ChangeLog/2.9 +* Patches dropped (included in upstream source archive): + 0047-hw-intc-arm_gicv3_kvm-Check-KVM_DEV.patch + 0048-i386-Replace-uint32_t-with-FeatureW.patch + 0049-i386-Don-t-override-cpu-options-on-.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 +- Added additional documentation provided with v2.9.0 +- Fix build failure with gcc7 (bsc#1031340) + ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch +- Made miscellaneous spec file refinements + ------------------------------------------------------------------- Thu Mar 30 22:46:43 UTC 2017 - brogers@suse.com diff --git a/qemu-testsuite.spec b/qemu-testsuite.spec index e88850b3..939212a0 100644 --- a/qemu-testsuite.spec +++ b/qemu-testsuite.spec @@ -18,7 +18,7 @@ %define noarch_supported 1110 -%define build_x86_fw_from_source 0 +%define build_x86_firmware_from_source 0 %define build_slof_from_source 0 %define kvm_available 0 %define legacy_qemu_kvm 0 @@ -26,7 +26,7 @@ %ifarch %ix86 x86_64 # choice of building all from source or using provided binary x86 blobs %if 0%{?suse_version} >= 1310 -%define build_x86_fw_from_source 1 +%define build_x86_firmware_from_source 1 %endif %endif @@ -64,6 +64,24 @@ %endif %endif +%ifarch ppc64le +%if 0%{?suse_version} > 1320 || ( 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120200 ) +%define with_rbd 1 +%endif +%endif + +%ifarch s390x +%if 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120200 +%define with_rbd 1 +%endif +%endif + +%ifarch ppc64 +%if 0%{?is_opensuse} && 0%{?sle_version} > 120200 +%define with_rbd 1 +%endif +%endif + %if 0%{?suse_version} > 1320 %define with_seccomp 1 %endif @@ -91,10 +109,10 @@ Url: http://www.qemu.org/ Summary: Universal CPU emulator License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT Group: System/Emulators/PC -Version: 2.8.92 +Version: 2.8.94 Release: 0 -Source: http://wiki.qemu.org/download/qemu-2.9.0-rc2.tar.xz -Source99: http://wiki.qemu.org/download/qemu-2.9.0-rc2.tar.xz.sig +Source: http://wiki.qemu.org/download/qemu-2.9.0-rc4.tar.xz +Source99: http://wiki.qemu.org/download/qemu-2.9.0-rc4.tar.xz.sig Source1: 80-kvm.rules Source2: qemu-ifup Source3: kvm_stat @@ -152,34 +170,30 @@ Patch0037: 0037-i8254-Fix-migration-from-SLE11-SP2.patch Patch0038: 0038-acpi_piix4-Fix-migration-from-SLE11.patch Patch0039: 0039-Fix-tigervnc-long-press-issue.patch Patch0040: 0040-fix-xen-hvm-direct-kernel-boot.patch -Patch0041: 0041-ARM-KVM-Enable-in-kernel-timers-wit.patch -Patch0042: 0042-string-input-visitor-Fix-uint64-par.patch -Patch0043: 0043-test-string-input-visitor-Add-int-t.patch -Patch0044: 0044-test-string-input-visitor-Add-uint6.patch -Patch0045: 0045-tests-Add-QOM-property-unit-tests.patch -Patch0046: 0046-tests-Add-scsi-disk-test.patch -Patch0047: 0047-hw-intc-arm_gicv3_kvm-Check-KVM_DEV.patch -Patch0048: 0048-i386-Replace-uint32_t-with-FeatureW.patch -Patch0049: 0049-i386-Don-t-override-cpu-options-on-.patch +Patch0041: 0041-string-input-visitor-Fix-uint64-par.patch +Patch0042: 0042-test-string-input-visitor-Add-int-t.patch +Patch0043: 0043-test-string-input-visitor-Add-uint6.patch +Patch0044: 0044-tests-Add-QOM-property-unit-tests.patch +Patch0045: 0045-tests-Add-scsi-disk-test.patch +Patch0046: 0046-RFC-update-Linux-headers-from-irqs-.patch +Patch0047: 0047-ARM-KVM-Enable-in-kernel-timers-wit.patch +Patch0048: 0048-input-Add-trace-event-for-empty-key.patch # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. -%if %{build_x86_fw_from_source} # SeaBIOS / SeaVGABIOS (Currently no patches) # ipxe # PATCH-FIX-OPENSUSE ipxe-stable-buildid.patch brogers@suse.com -- reproducible builds Patch1100: ipxe-stable-buildid.patch Patch1101: ipxe-use-gcc6-for-more-compact-code.patch +Patch1102: ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch # sgabios # PATCH-FIX-OPENSUSE sgabios-stable-buildid.patch brogers@suse.com -- reproducible builds Patch1200: sgabios-stable-buildid.patch -%endif -%if %{build_slof_from_source} # SLOF (Currently no patches) -%endif # this is to make lint happy Source300: qemu-rpmlintrc @@ -196,7 +210,7 @@ BuildRequires: SDL-devel BuildRequires: SDL2-devel %endif BuildRequires: alsa-devel -%if %{?build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: binutils-devel %endif BuildRequires: bluez-devel @@ -205,13 +219,13 @@ BuildRequires: brlapi-devel %endif BuildRequires: curl-devel BuildRequires: cyrus-sasl-devel -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: iasl %endif BuildRequires: e2fsprogs-devel BuildRequires: fdupes BuildRequires: gcc-c++ -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: gcc6 %endif BuildRequires: glib2-devel @@ -299,7 +313,7 @@ BuildRequires: makeinfo %endif BuildRequires: Mesa-devel BuildRequires: ncurses-devel -%if %{?build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: ovmf-tools %endif BuildRequires: pkgconfig @@ -333,19 +347,33 @@ BuildRequires: vte2-devel BuildRequires: xen-devel %endif BuildRequires: xfsprogs-devel -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: xz-devel %endif BuildRequires: zlib-devel %if "%{name}" == "qemu-testsuite" BuildRequires: bc BuildRequires: qemu-arm = %version +BuildRequires: qemu-block-curl = %version +BuildRequires: qemu-block-dmg = %version BuildRequires: qemu-extra = %version BuildRequires: qemu-guest-agent = %version BuildRequires: qemu-ppc = %version BuildRequires: qemu-s390 = %version BuildRequires: qemu-tools = %version BuildRequires: qemu-x86 = %version +%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315 +BuildRequires: qemu-block-gluster = %version +%endif +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) +BuildRequires: qemu-block-iscsi = %version +%endif +%if 0%{?with_rbd} +BuildRequires: qemu-block-rbd = %version +%endif +%if 0%{?suse_version} > 1140 +BuildRequires: qemu-block-ssh = %version +%endif %endif Requires(pre): pwdutils Requires(post): coreutils @@ -397,16 +425,50 @@ Suggests: qemu-lang Recommends: qemu-ksm = %{version} %endif -%ifarch x86_64 -%define x86_64_only_b_f_f {efi-e1000.rom efi-e1000e.rom efi-eepro100.rom \ -efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom efi-vmxnet3.rom} +%if %{build_slof_from_source} +%define ppc_default_built_firmware {%nil} +%define ppc_extra_built_firmware {slof.bin} %endif -%define built_firmware_files {bios.bin bios-256k.bin sgabios.bin vgabios.bin \ -vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \ -vgabios-qxl.bin optionrom/linuxboot.bin optionrom/linuxboot_dma.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 \ -%{?x86_64_only_b_f_f}} + +%ifarch ppc64 +%define ppc64_only_default_built_firmware {spapr-rtas.bin} +%define ppc64_only_extra_built_firmware {%nil} +%endif + +%ifarch s390x +%define s390x_default_built_firmware {s390-ccw.img} +%define s390x_extra_built_firmware {%nil} +%endif + +%ifarch %ix86 x86_64 +%define x86_default_built_firmware {linuxboot.bin linuxboot_dma.bin \ +multiboot.bin kvmvapic.bin} +%ifarch x86_64 +%define x86_64_only_default_built_firmware {%nil} +%endif +%endif + +%define x86_extra_built_firmware_list {bios.bin bios-256k.bin sgabios.bin \ +vgabios.bin vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin \ +vgabios-vmware.bin vgabios-qxl.bin pxe-e1000.rom pxe-pcnet.rom \ +pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom} +%define x86_64_only_extra_built_firmware_list {efi-e1000.rom efi-e1000e.rom \ +efi-eepro100.rom efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom \ +efi-vmxnet3.rom} + +%if %{build_x86_firmware_from_source} +%define x86_extra_built_firmware %{x86_extra_built_firmware_list} +%ifarch x86_64 +%define x86_64_only_extra_built_firmware %{x86_64_only_extra_built_firmware_list} +%endif +%endif + +%define built_firmware { \ +%{?ppc_default_built_firmware} %{?ppc_extra_built_firmware} \ +%{?ppc64_only_default_built_firmware} %{?ppc64_only_extra_built_firmware} \ +%{?s390x_default_built_firmware} %{?s390x_extra_built_firmware} \ +%{?x86_default_built_firmware} %{?x86_extra_built_firmware} \ +%{?x86_64_only_default_built_firmware} %{?x86_64_only_extra_built_firmware} } %description QEMU is an extremely well-performing CPU emulator that allows you to @@ -755,7 +817,7 @@ This package provides a service file for starting and stopping KSM. %endif # !qemu-testsuite %prep -%setup -q -n qemu-2.9.0-rc2 +%setup -q -n qemu-2.9.0-rc4 %patch0001 -p1 %patch0002 -p1 %patch0003 -p1 @@ -804,29 +866,25 @@ This package provides a service file for starting and stopping KSM. %patch0046 -p1 %patch0047 -p1 %patch0048 -p1 -%patch0049 -p1 -%if %{build_x86_fw_from_source} pushd roms/ipxe %patch1100 -p1 %patch1101 -p1 +%patch1102 -p1 popd + pushd roms/sgabios %patch1200 -p1 popd -# as a safeguard, delete the firmware files that we intend to build -for i in %built_firmware_files -do - rm -f pc-bios/$i -done -%endif - -%if %{build_slof_from_source} pushd roms/SLOF popd -rm -f pc-bios/slof.bin -%endif + +# as a safeguard, delete the firmware files that we intend to build +for i in %built_firmware +do + unlink pc-bios/$i +done %build echo '%{version}' > roms/seabios/.version @@ -836,6 +894,7 @@ echo '%{version}' > roms/seabios/.version --libdir=%_libdir \ --libexecdir=%_libexecdir \ --localstatedir=%_localstatedir \ + --docdir=%_docdir/qemu \ --extra-cflags="%{optflags}" \ --disable-stack-protector \ --disable-strip \ @@ -918,6 +977,7 @@ echo '%{version}' > roms/seabios/.version %if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) --enable-opengl \ %endif + --with-system-pixman \ %if 0%{?with_rbd} --enable-rbd \ %else @@ -987,8 +1047,19 @@ echo '%{version}' > roms/seabios/.version make %{?_smp_mflags} V=1 # Firmware -%if %{build_x86_fw_from_source} + +%ifarch s390x +cp pc-bios/s390-ccw/s390-ccw.img pc-bios/ +%endif + +%ifarch ppc64 +cp pc-bios/spapr-rtas/spapr-rtas.bin pc-bios/ +%endif + +%if %{build_x86_firmware_from_source} +cp pc-bios/optionrom/{multiboot.bin,linuxboot.bin,linuxboot_dma.bin,kvmvapic.bin} pc-bios/ make %{?_smp_mflags} -C roms bios + make %{?_smp_mflags} -C roms seavgabios make %{?_smp_mflags} -C roms pxerom %ifarch x86_64 @@ -1022,24 +1093,21 @@ for i in %supported_nics_small fi done %endif + %if %{build_slof_from_source} make %{?_smp_mflags} -C roms slof %endif -%ifarch s390x -cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img -%endif %else # qemu-testsuite ln -s %{_bindir}/qemu-img qemu-img ln -s %{_bindir}/qemu-ga qemu-ga +ln -s %{_bindir}/qemu-io qemu-io -%if %{build_x86_fw_from_source} -for i in %built_firmware_files +for i in %built_firmware do ln -s %{_datadir}/qemu/$i pc-bios/$i done -%endif for conf in default-configs/*-softmmu.mak; do arch=`echo "$conf" | sed -e 's|default-configs/\(.*\)-softmmu.mak|\1|g'` @@ -1047,7 +1115,10 @@ for conf in default-configs/*-softmmu.mak; do done # Compile the QOM test binary first, so that ... + +touch -r config-host.mak pc-bios make tests/qom-test %{?_smp_mflags} V=1 +# Firmware # ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379) %if 0%{?suse_version} >= 1310 make check-report.html V=1 @@ -1094,16 +1165,14 @@ format=`qemu-img info test.tar | grep "file format:" | cut -d ':' -f 2 | tr -d ' %install %if "%{name}" != "qemu-testsuite" +touch -r config-host.mak pc-bios make install DESTDIR=%{buildroot} -rm -fr %{buildroot}%{_datadir}/doc -%if ! %{build_x86_fw_from_source} -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.bin; do - rm %{buildroot}%{_datadir}/%name/$f +%ifnarch %ix86 x86_64 +for f in acpi-dsdt.aml %{x86_extra_built_firmware_list} \ + %{x86_64_only_extra_built_firmware_list}; do + unlink %{buildroot}%{_datadir}/%name/$f done %endif -# rm -f %{buildroot}%{_datadir}/%{name}/u-boot.e500 %find_lang %name install -D -m 644 %{SOURCE302} %{buildroot}%{_sysconfdir}/qemu/bridge.conf install -D -m 755 %{SOURCE2} %{buildroot}/usr/share/qemu/qemu-ifup @@ -1257,10 +1326,16 @@ fi %files %defattr(-, root, root) %if "%{name}" != "qemu-testsuite" -%doc COPYING COPYING.LIB Changelog README VERSION qemu-doc.html -%doc %_mandir/man1/qemu.1.gz -%doc %_mandir/man7/qemu-qmp-ref.7.gz -%doc %_mandir/man7/qemu-ga-ref.7.gz +%doc COPYING COPYING.LIB Changelog README VERSION +%_docdir/%name/qemu-doc.txt +%_docdir/%name/qemu-doc.html +%_docdir/%name/qemu-qmp-ref.txt +%_docdir/%name/qemu-qmp-ref.html +%_docdir/%name/qemu-ga-ref.txt +%_docdir/%name/qemu-ga-ref.html +%_mandir/man1/qemu.1.gz +%_mandir/man7/qemu-qmp-ref.7.gz +%_mandir/man7/qemu-ga-ref.7.gz %dir %_datadir/%name %_datadir/%name/keymaps %_datadir/%name/trace-events-all @@ -1369,7 +1444,7 @@ fi %files kvm %defattr(-,root,root) %_bindir/qemu-kvm -%doc %_mandir/man1/qemu-kvm.1.gz +%_mandir/man1/qemu-kvm.1.gz %if 0%{?is_opensuse} == 0 %dir %_docdir/qemu-kvm %_docdir/qemu-kvm/kvm-supported.txt @@ -1417,7 +1492,7 @@ fi %files lang -f %name.lang %defattr(-, root, root) -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} %files seabios %defattr(-, root, root) %dir %_datadir/%name @@ -1461,9 +1536,9 @@ fi %files tools %defattr(-, root, root) -%doc %_mandir/man1/qemu-img.1.gz -%doc %_mandir/man1/virtfs-proxy-helper.1.gz -%doc %_mandir/man8/qemu-nbd.8.gz +%_mandir/man1/qemu-img.1.gz +%_mandir/man1/virtfs-proxy-helper.1.gz +%_mandir/man8/qemu-nbd.8.gz %_bindir/ivshmem-client %_bindir/ivshmem-server %_bindir/qemu-io @@ -1477,7 +1552,7 @@ fi %files guest-agent %defattr(-, root, root) -%doc %_mandir/man8/qemu-ga.8.gz +%_mandir/man8/qemu-ga.8.gz %attr(755,root,kvm) %_bindir/qemu-ga %if 0%{?with_systemd} %{_unitdir}/qemu-ga.service @@ -1491,9 +1566,9 @@ fi %endif %else # qemu-testsuite -%doc %_datadir/qemu/check-report.xml +%_datadir/qemu/check-report.xml %if 0%{?suse_version} >= 1310 -%doc %_datadir/qemu/check-report.html +%_datadir/qemu/check-report.html %endif %endif diff --git a/qemu.changes b/qemu.changes index f8d9acbd..3a39a5cc 100644 --- a/qemu.changes +++ b/qemu.changes @@ -1,3 +1,43 @@ +------------------------------------------------------------------- +Wed Apr 12 15:15:25 UTC 2017 - brogers@suse.com + +- Add empty keyboard queue tracepoint to help openQA testing work + better (bsc#1031692) + 0048-input-Add-trace-event-for-empty-key.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 + +------------------------------------------------------------------- +Tue Apr 11 19:32:00 UTC 2017 - brogers@suse.com + +- Updated to v2.9.0-rc4: See http://wiki.qemu-project.org/ChangeLog/2.9 +- Enable ceph/rbd support for s390x (bsc#1030068) +- Enable ceph/rbd support for ppc* as available +- Update ARM in-kernel-timers patch (bsc#1033416) +* Patches renamed: + 0041-ARM-KVM-Enable-in-kernel-timers-wit.patch -> 0047-ARM-KVM-Enable-in-kernel-timers-wit.patch + 0042-string-input-visitor-Fix-uint64-par.patch -> 0041-string-input-visitor-Fix-uint64-par.patch + 0043-test-string-input-visitor-Add-int-t.patch -> 0042-test-string-input-visitor-Add-int-t.patch + 0044-test-string-input-visitor-Add-uint6.patch -> 0043-test-string-input-visitor-Add-uint6.patch + 0045-tests-Add-QOM-property-unit-tests.patch -> 0044-tests-Add-QOM-property-unit-tests.patch + 0046-tests-Add-scsi-disk-test.patch -> 0045-tests-Add-scsi-disk-test.patch +* Patches added (support patch): + 0046-RFC-update-Linux-headers-from-irqs-.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 + +------------------------------------------------------------------- +Wed Apr 5 16:50:48 UTC 2017 - brogers@suse.com + +- Updated to v2.9.0-rc3: See http://wiki.qemu-project.org/ChangeLog/2.9 +* Patches dropped (included in upstream source archive): + 0047-hw-intc-arm_gicv3_kvm-Check-KVM_DEV.patch + 0048-i386-Replace-uint32_t-with-FeatureW.patch + 0049-i386-Don-t-override-cpu-options-on-.patch +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.9 +- Added additional documentation provided with v2.9.0 +- Fix build failure with gcc7 (bsc#1031340) + ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch +- Made miscellaneous spec file refinements + ------------------------------------------------------------------- Thu Mar 30 22:46:43 UTC 2017 - brogers@suse.com diff --git a/qemu.spec b/qemu.spec index 657cfa90..1dc09fcd 100644 --- a/qemu.spec +++ b/qemu.spec @@ -18,7 +18,7 @@ %define noarch_supported 1110 -%define build_x86_fw_from_source 0 +%define build_x86_firmware_from_source 0 %define build_slof_from_source 0 %define kvm_available 0 %define legacy_qemu_kvm 0 @@ -26,7 +26,7 @@ %ifarch %ix86 x86_64 # choice of building all from source or using provided binary x86 blobs %if 0%{?suse_version} >= 1310 -%define build_x86_fw_from_source 1 +%define build_x86_firmware_from_source 1 %endif %endif @@ -64,6 +64,24 @@ %endif %endif +%ifarch ppc64le +%if 0%{?suse_version} > 1320 || ( 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120200 ) +%define with_rbd 1 +%endif +%endif + +%ifarch s390x +%if 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120200 +%define with_rbd 1 +%endif +%endif + +%ifarch ppc64 +%if 0%{?is_opensuse} && 0%{?sle_version} > 120200 +%define with_rbd 1 +%endif +%endif + %if 0%{?suse_version} > 1320 %define with_seccomp 1 %endif @@ -91,10 +109,10 @@ Url: http://www.qemu.org/ Summary: Universal CPU emulator License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT Group: System/Emulators/PC -Version: 2.8.92 +Version: 2.8.94 Release: 0 -Source: http://wiki.qemu.org/download/qemu-2.9.0-rc2.tar.xz -Source99: http://wiki.qemu.org/download/qemu-2.9.0-rc2.tar.xz.sig +Source: http://wiki.qemu.org/download/qemu-2.9.0-rc4.tar.xz +Source99: http://wiki.qemu.org/download/qemu-2.9.0-rc4.tar.xz.sig Source1: 80-kvm.rules Source2: qemu-ifup Source3: kvm_stat @@ -152,34 +170,30 @@ Patch0037: 0037-i8254-Fix-migration-from-SLE11-SP2.patch Patch0038: 0038-acpi_piix4-Fix-migration-from-SLE11.patch Patch0039: 0039-Fix-tigervnc-long-press-issue.patch Patch0040: 0040-fix-xen-hvm-direct-kernel-boot.patch -Patch0041: 0041-ARM-KVM-Enable-in-kernel-timers-wit.patch -Patch0042: 0042-string-input-visitor-Fix-uint64-par.patch -Patch0043: 0043-test-string-input-visitor-Add-int-t.patch -Patch0044: 0044-test-string-input-visitor-Add-uint6.patch -Patch0045: 0045-tests-Add-QOM-property-unit-tests.patch -Patch0046: 0046-tests-Add-scsi-disk-test.patch -Patch0047: 0047-hw-intc-arm_gicv3_kvm-Check-KVM_DEV.patch -Patch0048: 0048-i386-Replace-uint32_t-with-FeatureW.patch -Patch0049: 0049-i386-Don-t-override-cpu-options-on-.patch +Patch0041: 0041-string-input-visitor-Fix-uint64-par.patch +Patch0042: 0042-test-string-input-visitor-Add-int-t.patch +Patch0043: 0043-test-string-input-visitor-Add-uint6.patch +Patch0044: 0044-tests-Add-QOM-property-unit-tests.patch +Patch0045: 0045-tests-Add-scsi-disk-test.patch +Patch0046: 0046-RFC-update-Linux-headers-from-irqs-.patch +Patch0047: 0047-ARM-KVM-Enable-in-kernel-timers-wit.patch +Patch0048: 0048-input-Add-trace-event-for-empty-key.patch # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. -%if %{build_x86_fw_from_source} # SeaBIOS / SeaVGABIOS (Currently no patches) # ipxe # PATCH-FIX-OPENSUSE ipxe-stable-buildid.patch brogers@suse.com -- reproducible builds Patch1100: ipxe-stable-buildid.patch Patch1101: ipxe-use-gcc6-for-more-compact-code.patch +Patch1102: ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch # sgabios # PATCH-FIX-OPENSUSE sgabios-stable-buildid.patch brogers@suse.com -- reproducible builds Patch1200: sgabios-stable-buildid.patch -%endif -%if %{build_slof_from_source} # SLOF (Currently no patches) -%endif # this is to make lint happy Source300: qemu-rpmlintrc @@ -196,7 +210,7 @@ BuildRequires: SDL-devel BuildRequires: SDL2-devel %endif BuildRequires: alsa-devel -%if %{?build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: binutils-devel %endif BuildRequires: bluez-devel @@ -205,13 +219,13 @@ BuildRequires: brlapi-devel %endif BuildRequires: curl-devel BuildRequires: cyrus-sasl-devel -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: iasl %endif BuildRequires: e2fsprogs-devel BuildRequires: fdupes BuildRequires: gcc-c++ -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: gcc6 %endif BuildRequires: glib2-devel @@ -299,7 +313,7 @@ BuildRequires: makeinfo %endif BuildRequires: Mesa-devel BuildRequires: ncurses-devel -%if %{?build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: ovmf-tools %endif BuildRequires: pkgconfig @@ -333,19 +347,33 @@ BuildRequires: vte2-devel BuildRequires: xen-devel %endif BuildRequires: xfsprogs-devel -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: xz-devel %endif BuildRequires: zlib-devel %if "%{name}" == "qemu-testsuite" BuildRequires: bc BuildRequires: qemu-arm = %version +BuildRequires: qemu-block-curl = %version +BuildRequires: qemu-block-dmg = %version BuildRequires: qemu-extra = %version BuildRequires: qemu-guest-agent = %version BuildRequires: qemu-ppc = %version BuildRequires: qemu-s390 = %version BuildRequires: qemu-tools = %version BuildRequires: qemu-x86 = %version +%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315 +BuildRequires: qemu-block-gluster = %version +%endif +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) +BuildRequires: qemu-block-iscsi = %version +%endif +%if 0%{?with_rbd} +BuildRequires: qemu-block-rbd = %version +%endif +%if 0%{?suse_version} > 1140 +BuildRequires: qemu-block-ssh = %version +%endif %endif Requires(pre): pwdutils Requires(post): coreutils @@ -397,16 +425,50 @@ Suggests: qemu-lang Recommends: qemu-ksm = %{version} %endif -%ifarch x86_64 -%define x86_64_only_b_f_f {efi-e1000.rom efi-e1000e.rom efi-eepro100.rom \ -efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom efi-vmxnet3.rom} +%if %{build_slof_from_source} +%define ppc_default_built_firmware {%nil} +%define ppc_extra_built_firmware {slof.bin} %endif -%define built_firmware_files {bios.bin bios-256k.bin sgabios.bin vgabios.bin \ -vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \ -vgabios-qxl.bin optionrom/linuxboot.bin optionrom/linuxboot_dma.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 \ -%{?x86_64_only_b_f_f}} + +%ifarch ppc64 +%define ppc64_only_default_built_firmware {spapr-rtas.bin} +%define ppc64_only_extra_built_firmware {%nil} +%endif + +%ifarch s390x +%define s390x_default_built_firmware {s390-ccw.img} +%define s390x_extra_built_firmware {%nil} +%endif + +%ifarch %ix86 x86_64 +%define x86_default_built_firmware {linuxboot.bin linuxboot_dma.bin \ +multiboot.bin kvmvapic.bin} +%ifarch x86_64 +%define x86_64_only_default_built_firmware {%nil} +%endif +%endif + +%define x86_extra_built_firmware_list {bios.bin bios-256k.bin sgabios.bin \ +vgabios.bin vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin \ +vgabios-vmware.bin vgabios-qxl.bin pxe-e1000.rom pxe-pcnet.rom \ +pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom} +%define x86_64_only_extra_built_firmware_list {efi-e1000.rom efi-e1000e.rom \ +efi-eepro100.rom efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom \ +efi-vmxnet3.rom} + +%if %{build_x86_firmware_from_source} +%define x86_extra_built_firmware %{x86_extra_built_firmware_list} +%ifarch x86_64 +%define x86_64_only_extra_built_firmware %{x86_64_only_extra_built_firmware_list} +%endif +%endif + +%define built_firmware { \ +%{?ppc_default_built_firmware} %{?ppc_extra_built_firmware} \ +%{?ppc64_only_default_built_firmware} %{?ppc64_only_extra_built_firmware} \ +%{?s390x_default_built_firmware} %{?s390x_extra_built_firmware} \ +%{?x86_default_built_firmware} %{?x86_extra_built_firmware} \ +%{?x86_64_only_default_built_firmware} %{?x86_64_only_extra_built_firmware} } %description QEMU is an extremely well-performing CPU emulator that allows you to @@ -755,7 +817,7 @@ This package provides a service file for starting and stopping KSM. %endif # !qemu-testsuite %prep -%setup -q -n qemu-2.9.0-rc2 +%setup -q -n qemu-2.9.0-rc4 %patch0001 -p1 %patch0002 -p1 %patch0003 -p1 @@ -804,29 +866,25 @@ This package provides a service file for starting and stopping KSM. %patch0046 -p1 %patch0047 -p1 %patch0048 -p1 -%patch0049 -p1 -%if %{build_x86_fw_from_source} pushd roms/ipxe %patch1100 -p1 %patch1101 -p1 +%patch1102 -p1 popd + pushd roms/sgabios %patch1200 -p1 popd -# as a safeguard, delete the firmware files that we intend to build -for i in %built_firmware_files -do - rm -f pc-bios/$i -done -%endif - -%if %{build_slof_from_source} pushd roms/SLOF popd -rm -f pc-bios/slof.bin -%endif + +# as a safeguard, delete the firmware files that we intend to build +for i in %built_firmware +do + unlink pc-bios/$i +done %build echo '%{version}' > roms/seabios/.version @@ -836,6 +894,7 @@ echo '%{version}' > roms/seabios/.version --libdir=%_libdir \ --libexecdir=%_libexecdir \ --localstatedir=%_localstatedir \ + --docdir=%_docdir/qemu \ --extra-cflags="%{optflags}" \ --disable-stack-protector \ --disable-strip \ @@ -918,6 +977,7 @@ echo '%{version}' > roms/seabios/.version %if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) --enable-opengl \ %endif + --with-system-pixman \ %if 0%{?with_rbd} --enable-rbd \ %else @@ -987,8 +1047,19 @@ echo '%{version}' > roms/seabios/.version make %{?_smp_mflags} V=1 # Firmware -%if %{build_x86_fw_from_source} + +%ifarch s390x +cp pc-bios/s390-ccw/s390-ccw.img pc-bios/ +%endif + +%ifarch ppc64 +cp pc-bios/spapr-rtas/spapr-rtas.bin pc-bios/ +%endif + +%if %{build_x86_firmware_from_source} +cp pc-bios/optionrom/{multiboot.bin,linuxboot.bin,linuxboot_dma.bin,kvmvapic.bin} pc-bios/ make %{?_smp_mflags} -C roms bios + make %{?_smp_mflags} -C roms seavgabios make %{?_smp_mflags} -C roms pxerom %ifarch x86_64 @@ -1022,24 +1093,21 @@ for i in %supported_nics_small fi done %endif + %if %{build_slof_from_source} make %{?_smp_mflags} -C roms slof %endif -%ifarch s390x -cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img -%endif %else # qemu-testsuite ln -s %{_bindir}/qemu-img qemu-img ln -s %{_bindir}/qemu-ga qemu-ga +ln -s %{_bindir}/qemu-io qemu-io -%if %{build_x86_fw_from_source} -for i in %built_firmware_files +for i in %built_firmware do ln -s %{_datadir}/qemu/$i pc-bios/$i done -%endif for conf in default-configs/*-softmmu.mak; do arch=`echo "$conf" | sed -e 's|default-configs/\(.*\)-softmmu.mak|\1|g'` @@ -1047,7 +1115,10 @@ for conf in default-configs/*-softmmu.mak; do done # Compile the QOM test binary first, so that ... + +touch -r config-host.mak pc-bios make tests/qom-test %{?_smp_mflags} V=1 +# Firmware # ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379) %if 0%{?suse_version} >= 1310 make check-report.html V=1 @@ -1094,16 +1165,14 @@ format=`qemu-img info test.tar | grep "file format:" | cut -d ':' -f 2 | tr -d ' %install %if "%{name}" != "qemu-testsuite" +touch -r config-host.mak pc-bios make install DESTDIR=%{buildroot} -rm -fr %{buildroot}%{_datadir}/doc -%if ! %{build_x86_fw_from_source} -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.bin; do - rm %{buildroot}%{_datadir}/%name/$f +%ifnarch %ix86 x86_64 +for f in acpi-dsdt.aml %{x86_extra_built_firmware_list} \ + %{x86_64_only_extra_built_firmware_list}; do + unlink %{buildroot}%{_datadir}/%name/$f done %endif -# rm -f %{buildroot}%{_datadir}/%{name}/u-boot.e500 %find_lang %name install -D -m 644 %{SOURCE302} %{buildroot}%{_sysconfdir}/qemu/bridge.conf install -D -m 755 %{SOURCE2} %{buildroot}/usr/share/qemu/qemu-ifup @@ -1257,10 +1326,16 @@ fi %files %defattr(-, root, root) %if "%{name}" != "qemu-testsuite" -%doc COPYING COPYING.LIB Changelog README VERSION qemu-doc.html -%doc %_mandir/man1/qemu.1.gz -%doc %_mandir/man7/qemu-qmp-ref.7.gz -%doc %_mandir/man7/qemu-ga-ref.7.gz +%doc COPYING COPYING.LIB Changelog README VERSION +%_docdir/%name/qemu-doc.txt +%_docdir/%name/qemu-doc.html +%_docdir/%name/qemu-qmp-ref.txt +%_docdir/%name/qemu-qmp-ref.html +%_docdir/%name/qemu-ga-ref.txt +%_docdir/%name/qemu-ga-ref.html +%_mandir/man1/qemu.1.gz +%_mandir/man7/qemu-qmp-ref.7.gz +%_mandir/man7/qemu-ga-ref.7.gz %dir %_datadir/%name %_datadir/%name/keymaps %_datadir/%name/trace-events-all @@ -1369,7 +1444,7 @@ fi %files kvm %defattr(-,root,root) %_bindir/qemu-kvm -%doc %_mandir/man1/qemu-kvm.1.gz +%_mandir/man1/qemu-kvm.1.gz %if 0%{?is_opensuse} == 0 %dir %_docdir/qemu-kvm %_docdir/qemu-kvm/kvm-supported.txt @@ -1417,7 +1492,7 @@ fi %files lang -f %name.lang %defattr(-, root, root) -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} %files seabios %defattr(-, root, root) %dir %_datadir/%name @@ -1461,9 +1536,9 @@ fi %files tools %defattr(-, root, root) -%doc %_mandir/man1/qemu-img.1.gz -%doc %_mandir/man1/virtfs-proxy-helper.1.gz -%doc %_mandir/man8/qemu-nbd.8.gz +%_mandir/man1/qemu-img.1.gz +%_mandir/man1/virtfs-proxy-helper.1.gz +%_mandir/man8/qemu-nbd.8.gz %_bindir/ivshmem-client %_bindir/ivshmem-server %_bindir/qemu-io @@ -1477,7 +1552,7 @@ fi %files guest-agent %defattr(-, root, root) -%doc %_mandir/man8/qemu-ga.8.gz +%_mandir/man8/qemu-ga.8.gz %attr(755,root,kvm) %_bindir/qemu-ga %if 0%{?with_systemd} %{_unitdir}/qemu-ga.service @@ -1491,9 +1566,9 @@ fi %endif %else # qemu-testsuite -%doc %_datadir/qemu/check-report.xml +%_datadir/qemu/check-report.xml %if 0%{?suse_version} >= 1310 -%doc %_datadir/qemu/check-report.html +%_datadir/qemu/check-report.html %endif %endif diff --git a/qemu.spec.in b/qemu.spec.in index 323f857c..97bb4523 100644 --- a/qemu.spec.in +++ b/qemu.spec.in @@ -17,7 +17,7 @@ %define noarch_supported 1110 -%define build_x86_fw_from_source 0 +%define build_x86_firmware_from_source 0 %define build_slof_from_source 0 %define kvm_available 0 %define legacy_qemu_kvm 0 @@ -25,7 +25,7 @@ %ifarch %ix86 x86_64 # choice of building all from source or using provided binary x86 blobs %if 0%{?suse_version} >= 1310 -%define build_x86_fw_from_source 1 +%define build_x86_firmware_from_source 1 %endif %endif @@ -63,6 +63,25 @@ %endif %endif +%ifarch ppc64le +%if 0%{?suse_version} > 1320 || ( 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120200 ) +%define with_rbd 1 +%endif +%endif + +%ifarch s390x +%if 0%{?is_opensuse} == 0 && 0%{?sle_version} > 120200 +%define with_rbd 1 +%endif +%endif + +%ifarch ppc64 +%if 0%{?is_opensuse} && 0%{?sle_version} > 120200 +%define with_rbd 1 +%endif +%endif + + %if 0%{?suse_version} > 1320 %define with_seccomp 1 %endif @@ -92,8 +111,8 @@ License: BSD-3-Clause and GPL-2.0 and GPL-2.0+ and LGPL-2.1+ and MIT Group: System/Emulators/PC QEMU_VERSION Release: 0 -Source: http://wiki.qemu.org/download/qemu-2.9.0-rc2.tar.xz -Source99: http://wiki.qemu.org/download/qemu-2.9.0-rc2.tar.xz.sig +Source: http://wiki.qemu.org/download/qemu-2.9.0-rc4.tar.xz +Source99: http://wiki.qemu.org/download/qemu-2.9.0-rc4.tar.xz.sig Source1: 80-kvm.rules Source2: qemu-ifup Source3: kvm_stat @@ -115,22 +134,19 @@ PATCH_FILES # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. -%if %{build_x86_fw_from_source} # SeaBIOS / SeaVGABIOS (Currently no patches) # ipxe # PATCH-FIX-OPENSUSE ipxe-stable-buildid.patch brogers@suse.com -- reproducible builds Patch1100: ipxe-stable-buildid.patch Patch1101: ipxe-use-gcc6-for-more-compact-code.patch +Patch1102: ipxe-build-Avoid-implicit-fallthrough-warnings-on-GCC-7.patch # sgabios # PATCH-FIX-OPENSUSE sgabios-stable-buildid.patch brogers@suse.com -- reproducible builds Patch1200: sgabios-stable-buildid.patch -%endif -%if %{build_slof_from_source} # SLOF (Currently no patches) -%endif # this is to make lint happy Source300: qemu-rpmlintrc @@ -147,7 +163,7 @@ BuildRequires: SDL-devel BuildRequires: SDL2-devel %endif BuildRequires: alsa-devel -%if %{?build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: binutils-devel %endif BuildRequires: bluez-devel @@ -156,13 +172,13 @@ BuildRequires: brlapi-devel %endif BuildRequires: curl-devel BuildRequires: cyrus-sasl-devel -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: iasl %endif BuildRequires: e2fsprogs-devel BuildRequires: fdupes BuildRequires: gcc-c++ -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: gcc6 %endif BuildRequires: glib2-devel @@ -250,7 +266,7 @@ BuildRequires: makeinfo %endif BuildRequires: Mesa-devel BuildRequires: ncurses-devel -%if %{?build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: ovmf-tools %endif BuildRequires: pkgconfig @@ -284,7 +300,7 @@ BuildRequires: vte2-devel BuildRequires: xen-devel %endif BuildRequires: xfsprogs-devel -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} BuildRequires: xz-devel %endif BuildRequires: zlib-devel @@ -297,6 +313,20 @@ BuildRequires: qemu-ppc = %version BuildRequires: qemu-s390 = %version BuildRequires: qemu-tools = %version BuildRequires: qemu-x86 = %version +BuildRequires: qemu-block-curl = %version +BuildRequires: qemu-block-dmg = %version +%if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315 +BuildRequires: qemu-block-gluster = %version +%endif +%if 0%{?suse_version} > 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) +BuildRequires: qemu-block-iscsi = %version +%endif +%if 0%{?with_rbd} +BuildRequires: qemu-block-rbd = %version +%endif +%if 0%{?suse_version} > 1140 +BuildRequires: qemu-block-ssh = %version +%endif %endif Requires(pre): pwdutils Requires(post): coreutils @@ -348,16 +378,50 @@ Suggests: qemu-lang Recommends: qemu-ksm = %{version} %endif -%ifarch x86_64 -%define x86_64_only_b_f_f {efi-e1000.rom efi-e1000e.rom efi-eepro100.rom \ -efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom efi-vmxnet3.rom} +%if %{build_slof_from_source} +%define ppc_default_built_firmware {%nil} +%define ppc_extra_built_firmware {slof.bin} %endif -%define built_firmware_files {bios.bin bios-256k.bin sgabios.bin vgabios.bin \ -vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin vgabios-vmware.bin \ -vgabios-qxl.bin optionrom/linuxboot.bin optionrom/linuxboot_dma.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 \ -%{?x86_64_only_b_f_f}} + +%ifarch ppc64 +%define ppc64_only_default_built_firmware {spapr-rtas.bin} +%define ppc64_only_extra_built_firmware {%nil} +%endif + +%ifarch s390x +%define s390x_default_built_firmware {s390-ccw.img} +%define s390x_extra_built_firmware {%nil} +%endif + +%ifarch %ix86 x86_64 +%define x86_default_built_firmware {linuxboot.bin linuxboot_dma.bin \ +multiboot.bin kvmvapic.bin} +%ifarch x86_64 +%define x86_64_only_default_built_firmware {%nil} +%endif +%endif + +%define x86_extra_built_firmware_list {bios.bin bios-256k.bin sgabios.bin \ +vgabios.bin vgabios-cirrus.bin vgabios-stdvga.bin vgabios-virtio.bin \ +vgabios-vmware.bin vgabios-qxl.bin pxe-e1000.rom pxe-pcnet.rom \ +pxe-ne2k_pci.rom pxe-rtl8139.rom pxe-eepro100.rom pxe-virtio.rom} +%define x86_64_only_extra_built_firmware_list {efi-e1000.rom efi-e1000e.rom \ +efi-eepro100.rom efi-pcnet.rom efi-ne2k_pci.rom efi-rtl8139.rom efi-virtio.rom \ +efi-vmxnet3.rom} + +%if %{build_x86_firmware_from_source} +%define x86_extra_built_firmware %{x86_extra_built_firmware_list} +%ifarch x86_64 +%define x86_64_only_extra_built_firmware %{x86_64_only_extra_built_firmware_list} +%endif +%endif + +%define built_firmware { \ +%{?ppc_default_built_firmware} %{?ppc_extra_built_firmware} \ +%{?ppc64_only_default_built_firmware} %{?ppc64_only_extra_built_firmware} \ +%{?s390x_default_built_firmware} %{?s390x_extra_built_firmware} \ +%{?x86_default_built_firmware} %{?x86_extra_built_firmware} \ +%{?x86_64_only_default_built_firmware} %{?x86_64_only_extra_built_firmware} } %description QEMU is an extremely well-performing CPU emulator that allows you to @@ -706,30 +770,27 @@ This package provides a service file for starting and stopping KSM. %endif # !qemu-testsuite %prep -%setup -q -n qemu-2.9.0-rc2 +%setup -q -n qemu-2.9.0-rc4 PATCH_EXEC -%if %{build_x86_fw_from_source} pushd roms/ipxe %patch1100 -p1 %patch1101 -p1 +%patch1102 -p1 popd + pushd roms/sgabios %patch1200 -p1 popd -# as a safeguard, delete the firmware files that we intend to build -for i in %built_firmware_files -do - rm -f pc-bios/$i -done -%endif - -%if %{build_slof_from_source} pushd roms/SLOF popd -rm -f pc-bios/slof.bin -%endif + +# as a safeguard, delete the firmware files that we intend to build +for i in %built_firmware +do + unlink pc-bios/$i +done %build echo '%{version}' > roms/seabios/.version @@ -739,6 +800,7 @@ echo '%{version}' > roms/seabios/.version --libdir=%_libdir \ --libexecdir=%_libexecdir \ --localstatedir=%_localstatedir \ + --docdir=%_docdir/qemu \ --extra-cflags="%{optflags}" \ --disable-stack-protector \ --disable-strip \ @@ -821,6 +883,7 @@ echo '%{version}' > roms/seabios/.version %if 0%{?suse_version} >= 1320 || ( 0%{?suse_version} == 1315 && 0%{?sle_version} > 120100 ) --enable-opengl \ %endif + --with-system-pixman \ %if 0%{?with_rbd} --enable-rbd \ %else @@ -890,8 +953,19 @@ echo '%{version}' > roms/seabios/.version make %{?_smp_mflags} V=1 # Firmware -%if %{build_x86_fw_from_source} + +%ifarch s390x +cp pc-bios/s390-ccw/s390-ccw.img pc-bios/ +%endif + +%ifarch ppc64 +cp pc-bios/spapr-rtas/spapr-rtas.bin pc-bios/ +%endif + +%if %{build_x86_firmware_from_source} +cp pc-bios/optionrom/{multiboot.bin,linuxboot.bin,linuxboot_dma.bin,kvmvapic.bin} pc-bios/ make %{?_smp_mflags} -C roms bios + make %{?_smp_mflags} -C roms seavgabios make %{?_smp_mflags} -C roms pxerom %ifarch x86_64 @@ -925,24 +999,21 @@ for i in %supported_nics_small fi done %endif + %if %{build_slof_from_source} make %{?_smp_mflags} -C roms slof %endif -%ifarch s390x -cp pc-bios/s390-ccw/s390-ccw.img pc-bios/s390-ccw.img -%endif %else # qemu-testsuite ln -s %{_bindir}/qemu-img qemu-img ln -s %{_bindir}/qemu-ga qemu-ga +ln -s %{_bindir}/qemu-io qemu-io -%if %{build_x86_fw_from_source} -for i in %built_firmware_files +for i in %built_firmware do ln -s %{_datadir}/qemu/$i pc-bios/$i done -%endif for conf in default-configs/*-softmmu.mak; do arch=`echo "$conf" | sed -e 's|default-configs/\(.*\)-softmmu.mak|\1|g'` @@ -950,7 +1021,10 @@ for conf in default-configs/*-softmmu.mak; do done # Compile the QOM test binary first, so that ... + +touch -r config-host.mak pc-bios make tests/qom-test %{?_smp_mflags} V=1 +# Firmware # ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379) %if 0%{?suse_version} >= 1310 make check-report.html V=1 @@ -997,16 +1071,14 @@ format=`qemu-img info test.tar | grep "file format:" | cut -d ':' -f 2 | tr -d ' %install %if "%{name}" != "qemu-testsuite" +touch -r config-host.mak pc-bios make install DESTDIR=%{buildroot} -rm -fr %{buildroot}%{_datadir}/doc -%if ! %{build_x86_fw_from_source} -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.bin; do - rm %{buildroot}%{_datadir}/%name/$f +%ifnarch %ix86 x86_64 +for f in acpi-dsdt.aml %{x86_extra_built_firmware_list} \ + %{x86_64_only_extra_built_firmware_list}; do + unlink %{buildroot}%{_datadir}/%name/$f done %endif -# rm -f %{buildroot}%{_datadir}/%{name}/u-boot.e500 %find_lang %name install -D -m 644 %{SOURCE302} %{buildroot}%{_sysconfdir}/qemu/bridge.conf install -D -m 755 %{SOURCE2} %{buildroot}/usr/share/qemu/qemu-ifup @@ -1160,10 +1232,16 @@ fi %files %defattr(-, root, root) %if "%{name}" != "qemu-testsuite" -%doc COPYING COPYING.LIB Changelog README VERSION qemu-doc.html -%doc %_mandir/man1/qemu.1.gz -%doc %_mandir/man7/qemu-qmp-ref.7.gz -%doc %_mandir/man7/qemu-ga-ref.7.gz +%doc COPYING COPYING.LIB Changelog README VERSION +%_docdir/%name/qemu-doc.txt +%_docdir/%name/qemu-doc.html +%_docdir/%name/qemu-qmp-ref.txt +%_docdir/%name/qemu-qmp-ref.html +%_docdir/%name/qemu-ga-ref.txt +%_docdir/%name/qemu-ga-ref.html +%_mandir/man1/qemu.1.gz +%_mandir/man7/qemu-qmp-ref.7.gz +%_mandir/man7/qemu-ga-ref.7.gz %dir %_datadir/%name %_datadir/%name/keymaps %_datadir/%name/trace-events-all @@ -1272,7 +1350,7 @@ fi %files kvm %defattr(-,root,root) %_bindir/qemu-kvm -%doc %_mandir/man1/qemu-kvm.1.gz +%_mandir/man1/qemu-kvm.1.gz %if 0%{?is_opensuse} == 0 %dir %_docdir/qemu-kvm %_docdir/qemu-kvm/kvm-supported.txt @@ -1320,7 +1398,7 @@ fi %files lang -f %name.lang %defattr(-, root, root) -%if %{build_x86_fw_from_source} +%if %{build_x86_firmware_from_source} %files seabios %defattr(-, root, root) %dir %_datadir/%name @@ -1364,9 +1442,9 @@ fi %files tools %defattr(-, root, root) -%doc %_mandir/man1/qemu-img.1.gz -%doc %_mandir/man1/virtfs-proxy-helper.1.gz -%doc %_mandir/man8/qemu-nbd.8.gz +%_mandir/man1/qemu-img.1.gz +%_mandir/man1/virtfs-proxy-helper.1.gz +%_mandir/man8/qemu-nbd.8.gz %_bindir/ivshmem-client %_bindir/ivshmem-server %_bindir/qemu-io @@ -1380,7 +1458,7 @@ fi %files guest-agent %defattr(-, root, root) -%doc %_mandir/man8/qemu-ga.8.gz +%_mandir/man8/qemu-ga.8.gz %attr(755,root,kvm) %_bindir/qemu-ga %if 0%{?with_systemd} %{_unitdir}/qemu-ga.service @@ -1394,9 +1472,9 @@ fi %endif %else # qemu-testsuite -%doc %_datadir/qemu/check-report.xml +%_datadir/qemu/check-report.xml %if 0%{?suse_version} >= 1310 -%doc %_datadir/qemu/check-report.html +%_datadir/qemu/check-report.html %endif %endif diff --git a/update_git.sh b/update_git.sh index cecd2405..22706e5f 100644 --- a/update_git.sh +++ b/update_git.sh @@ -14,7 +14,7 @@ set -e GIT_TREE=git://github.com/openSUSE/qemu.git GIT_LOCAL_TREE=~/git/qemu-opensuse GIT_BRANCH=opensuse-2.9 -GIT_UPSTREAM_TAG=v2.9.0-rc2 +GIT_UPSTREAM_TAG=v2.9.0-rc4 GIT_DIR=/dev/shm/qemu-factory-git-dir CMP_DIR=/dev/shm/qemu-factory-cmp-dir