1 |
commit: a1cc6f0bdfeb26400cbfac4fb86031c1bab3b6ef |
2 |
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu Apr 30 23:23:54 2020 +0000 |
4 |
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Apr 30 23:47:26 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a1cc6f0b |
7 |
|
8 |
app-emulation/qemu: bump up to 5.0.0, bug #720138 |
9 |
|
10 |
Two new USE flags: |
11 |
- io-uring for fast async io_uring I/O |
12 |
- zstd for libzstd compression of migration traffic |
13 |
|
14 |
Reported-by: Thomas Stein |
15 |
Closes: https://bugs.gentoo.org/720138 |
16 |
Package-Manager: Portage-2.3.99, Repoman-2.3.22 |
17 |
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org> |
18 |
|
19 |
app-emulation/qemu/Manifest | 1 + |
20 |
.../qemu/files/qemu-5.0.0-epoll-strace.patch | 50 ++++++++++++++++++++++ |
21 |
app-emulation/qemu/metadata.xml | 1 + |
22 |
.../qemu/{qemu-9999.ebuild => qemu-5.0.0.ebuild} | 15 +++++-- |
23 |
app-emulation/qemu/qemu-9999.ebuild | 15 +++++-- |
24 |
5 files changed, 74 insertions(+), 8 deletions(-) |
25 |
|
26 |
diff --git a/app-emulation/qemu/Manifest b/app-emulation/qemu/Manifest |
27 |
index 7aa3b70b1a9..333933242cf 100644 |
28 |
--- a/app-emulation/qemu/Manifest |
29 |
+++ b/app-emulation/qemu/Manifest |
30 |
@@ -1,2 +1,3 @@ |
31 |
DIST qemu-4.2.0-patches-r2.tar.xz 17868 BLAKE2B 3783d0f923ded66cce1195248981c83bbaf8b7ad2a270207e92e60b4d05d4787cd9324649c113a4616c2a9ddcef99841264f19915615b7a0a24dac9febed48ba SHA512 556f1c595a35ee4279b2d0890d90e48cd43d9d641ccca495e2494f62ab48dfc000dbe23718276271ced3d4b7680c814f8f8846195089ff56186f618063a83b48 |
32 |
DIST qemu-4.2.0.tar.xz 62222068 BLAKE2B 27c9fbcd5093af425764674817ab9299224bd03f37b5983786f6f437fff1fab3b7da247c55c4ca8b8c42726b9867005944a2f7f04f2d0d94d753961615f901ef SHA512 2a79973c2b07c53e8c57a808ea8add7b6b2cbca96488ed5d4b669ead8c9318907dec2b6109f180fc8ca8f04c0f73a56e82b3a527b5626b799d7e849f2474ec56 |
33 |
+DIST qemu-5.0.0.tar.xz 62426192 BLAKE2B 785d02ef79c95b5c4f0556186054885f9893d4e8a9f4b4f2d6199a4e1ae9c31d7c79dd900305469217f85d61bbe74134b601d5c6c1b0eee2b74792d010f1fd63 SHA512 21ef0cbe107c468a40f0fa2635db2a40048c8790b629dfffca5cd62bb1b502ea8eb133bfc40df5ecf1489e2bffe87f6829aee041cb8a380ff04a8afa23b39fcf |
34 |
|
35 |
diff --git a/app-emulation/qemu/files/qemu-5.0.0-epoll-strace.patch b/app-emulation/qemu/files/qemu-5.0.0-epoll-strace.patch |
36 |
new file mode 100644 |
37 |
index 00000000000..c0f9a2e008d |
38 |
--- /dev/null |
39 |
+++ b/app-emulation/qemu/files/qemu-5.0.0-epoll-strace.patch |
40 |
@@ -0,0 +1,50 @@ |
41 |
+https://lists.nongnu.org/archive/html/qemu-devel/2020-04/msg02643.html |
42 |
+ |
43 |
+From 6bce23d8daf96a7faa9288e7414948cda31ddaa2 Mon Sep 17 00:00:00 2001 |
44 |
+From: Sergei Trofimovich <slyfox@g.o> |
45 |
+Date: Thu, 16 Apr 2020 18:55:49 +0100 |
46 |
+Subject: [PATCH] linux-user/strace.list: fix epoll_create{,1} -strace output |
47 |
+ |
48 |
+Fix syscall name and parameters priinter. |
49 |
+ |
50 |
+Before the change: |
51 |
+ |
52 |
+``` |
53 |
+$ alpha-linux-user/qemu-alpha -strace -L /usr/alpha-unknown-linux-gnu/ /tmp/a |
54 |
+... |
55 |
+1274697 %s(%d)(2097152,274903156744,274903156760,274905840712,274877908880,274903235616) = 3 |
56 |
+1274697 exit_group(0) |
57 |
+``` |
58 |
+ |
59 |
+After the change: |
60 |
+ |
61 |
+``` |
62 |
+$ alpha-linux-user/qemu-alpha -strace -L /usr/alpha-unknown-linux-gnu/ /tmp/a |
63 |
+... |
64 |
+1273719 epoll_create1(2097152) = 3 |
65 |
+1273719 exit_group(0) |
66 |
+``` |
67 |
+ |
68 |
+Signed-off-by: Sergei Trofimovich <slyfox@g.o> |
69 |
+--- |
70 |
+ linux-user/strace.list | 4 ++-- |
71 |
+ 1 file changed, 2 insertions(+), 2 deletions(-) |
72 |
+ |
73 |
+--- a/linux-user/strace.list |
74 |
++++ b/linux-user/strace.list |
75 |
+@@ -125,10 +125,10 @@ |
76 |
+ { TARGET_NR_dup3, "dup3" , "%s(%d,%d,%d)", NULL, NULL }, |
77 |
+ #endif |
78 |
+ #ifdef TARGET_NR_epoll_create |
79 |
+-{ TARGET_NR_epoll_create, "%s(%d)", NULL, NULL, NULL }, |
80 |
++{ TARGET_NR_epoll_create, "epoll_create", "%s(%d)", NULL, NULL }, |
81 |
+ #endif |
82 |
+ #ifdef TARGET_NR_epoll_create1 |
83 |
+-{ TARGET_NR_epoll_create1, "%s(%d)", NULL, NULL, NULL }, |
84 |
++{ TARGET_NR_epoll_create1, "epoll_create1", "%s(%d)", NULL, NULL }, |
85 |
+ #endif |
86 |
+ #ifdef TARGET_NR_epoll_ctl |
87 |
+ { TARGET_NR_epoll_ctl, "epoll_ctl" , NULL, NULL, NULL }, |
88 |
+-- |
89 |
+2.26.2 |
90 |
+ |
91 |
|
92 |
diff --git a/app-emulation/qemu/metadata.xml b/app-emulation/qemu/metadata.xml |
93 |
index 07244b5deff..0c30c458264 100644 |
94 |
--- a/app-emulation/qemu/metadata.xml |
95 |
+++ b/app-emulation/qemu/metadata.xml |
96 |
@@ -28,6 +28,7 @@ |
97 |
<flag name="iscsi">Enable direct iSCSI support via |
98 |
<pkg>net-libs/libiscsi</pkg> instead of indirectly via the Linux |
99 |
block layer that <pkg>sys-block/open-iscsi</pkg> does.</flag> |
100 |
+ <flag name="io-uring">Enable efficient I/O via <pkg>sys-libs/liburing</pkg>.</flag> |
101 |
<flag name="ncurses">Enable the ncurses-based console</flag> |
102 |
<flag name="nfs">Enable NFS support</flag> |
103 |
<flag name="numa">Enable NUMA support</flag> |
104 |
|
105 |
diff --git a/app-emulation/qemu/qemu-9999.ebuild b/app-emulation/qemu/qemu-5.0.0.ebuild |
106 |
similarity index 98% |
107 |
copy from app-emulation/qemu/qemu-9999.ebuild |
108 |
copy to app-emulation/qemu/qemu-5.0.0.ebuild |
109 |
index b189a315909..ae78e0ad179 100644 |
110 |
--- a/app-emulation/qemu/qemu-9999.ebuild |
111 |
+++ b/app-emulation/qemu/qemu-5.0.0.ebuild |
112 |
@@ -24,7 +24,7 @@ if [[ ${PV} = *9999* ]]; then |
113 |
SRC_URI="" |
114 |
else |
115 |
SRC_URI="https://download.qemu.org/${P}.tar.xz" |
116 |
- KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86" |
117 |
+ KEYWORDS="~amd64 ~x86" |
118 |
fi |
119 |
|
120 |
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" |
121 |
@@ -34,12 +34,13 @@ LICENSE="GPL-2 LGPL-2 BSD-2" |
122 |
SLOT="0" |
123 |
|
124 |
IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug doc |
125 |
- +fdt glusterfs gnutls gtk infiniband iscsi jemalloc +jpeg kernel_linux |
126 |
+ +fdt glusterfs gnutls gtk infiniband iscsi io-uring |
127 |
+ jemalloc +jpeg kernel_linux |
128 |
kernel_FreeBSD lzo ncurses nfs nls numa opengl +oss +pin-upstream-blobs |
129 |
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux |
130 |
smartcard snappy spice ssh static static-user systemtap tci test usb |
131 |
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen |
132 |
- xfs +xkb" |
133 |
+ xfs +xkb zstd" |
134 |
|
135 |
COMMON_TARGETS="aarch64 alpha arm cris hppa i386 m68k microblaze microblazeel |
136 |
mips mips64 mips64el mipsel nios2 or1k ppc ppc64 riscv32 riscv64 s390x |
137 |
@@ -119,6 +120,7 @@ SOFTMMU_TOOLS_DEPEND=" |
138 |
sys-fabric/librdmacm:=[static-libs(+)] |
139 |
) |
140 |
iscsi? ( net-libs/libiscsi ) |
141 |
+ io-uring? ( sys-libs/liburing[static-libs(+)] ) |
142 |
jemalloc? ( dev-libs/jemalloc ) |
143 |
jpeg? ( virtual/jpeg:0=[static-libs(+)] ) |
144 |
lzo? ( dev-libs/lzo:2[static-libs(+)] ) |
145 |
@@ -157,7 +159,9 @@ SOFTMMU_TOOLS_DEPEND=" |
146 |
virgl? ( media-libs/virglrenderer[static-libs(+)] ) |
147 |
virtfs? ( sys-libs/libcap ) |
148 |
xen? ( app-emulation/xen-tools:= ) |
149 |
- xfs? ( sys-fs/xfsprogs[static-libs(+)] )" |
150 |
+ xfs? ( sys-fs/xfsprogs[static-libs(+)] ) |
151 |
+ zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] ) |
152 |
+" |
153 |
|
154 |
X86_FIRMWARE_DEPEND=" |
155 |
pin-upstream-blobs? ( |
156 |
@@ -217,6 +221,7 @@ PATCHES=( |
157 |
"${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch |
158 |
"${FILESDIR}"/${PN}-4.0.0-mkdir_systemtap.patch #684902 |
159 |
"${FILESDIR}"/${PN}-4.2.0-cflags.patch |
160 |
+ "${FILESDIR}"/${PN}-5.0.0-epoll-strace.patch |
161 |
) |
162 |
|
163 |
QA_PREBUILT=" |
164 |
@@ -449,6 +454,7 @@ qemu_src_configure() { |
165 |
$(conf_notuser gtk) |
166 |
$(conf_notuser infiniband rdma) |
167 |
$(conf_notuser iscsi libiscsi) |
168 |
+ $(conf_notuser io-uring linux-io-uring) |
169 |
$(conf_notuser jemalloc jemalloc) |
170 |
$(conf_notuser jpeg vnc-jpeg) |
171 |
$(conf_notuser kernel_linux kvm) |
172 |
@@ -480,6 +486,7 @@ qemu_src_configure() { |
173 |
$(conf_notuser xen xen-pci-passthrough) |
174 |
$(conf_notuser xfs xfsctl) |
175 |
$(conf_notuser xkb xkbcommon) |
176 |
+ $(conf_notuser zstd) |
177 |
) |
178 |
|
179 |
if [[ ${buildtype} == "user" ]] ; then |
180 |
|
181 |
diff --git a/app-emulation/qemu/qemu-9999.ebuild b/app-emulation/qemu/qemu-9999.ebuild |
182 |
index b189a315909..ae78e0ad179 100644 |
183 |
--- a/app-emulation/qemu/qemu-9999.ebuild |
184 |
+++ b/app-emulation/qemu/qemu-9999.ebuild |
185 |
@@ -24,7 +24,7 @@ if [[ ${PV} = *9999* ]]; then |
186 |
SRC_URI="" |
187 |
else |
188 |
SRC_URI="https://download.qemu.org/${P}.tar.xz" |
189 |
- KEYWORDS="~amd64 ~arm64 ~ppc ~ppc64 ~x86" |
190 |
+ KEYWORDS="~amd64 ~x86" |
191 |
fi |
192 |
|
193 |
DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" |
194 |
@@ -34,12 +34,13 @@ LICENSE="GPL-2 LGPL-2 BSD-2" |
195 |
SLOT="0" |
196 |
|
197 |
IUSE="accessibility +aio alsa bzip2 capstone +caps +curl debug doc |
198 |
- +fdt glusterfs gnutls gtk infiniband iscsi jemalloc +jpeg kernel_linux |
199 |
+ +fdt glusterfs gnutls gtk infiniband iscsi io-uring |
200 |
+ jemalloc +jpeg kernel_linux |
201 |
kernel_FreeBSD lzo ncurses nfs nls numa opengl +oss +pin-upstream-blobs |
202 |
plugins +png pulseaudio python rbd sasl +seccomp sdl sdl-image selinux |
203 |
smartcard snappy spice ssh static static-user systemtap tci test usb |
204 |
usbredir vde +vhost-net vhost-user-fs virgl virtfs +vnc vte xattr xen |
205 |
- xfs +xkb" |
206 |
+ xfs +xkb zstd" |
207 |
|
208 |
COMMON_TARGETS="aarch64 alpha arm cris hppa i386 m68k microblaze microblazeel |
209 |
mips mips64 mips64el mipsel nios2 or1k ppc ppc64 riscv32 riscv64 s390x |
210 |
@@ -119,6 +120,7 @@ SOFTMMU_TOOLS_DEPEND=" |
211 |
sys-fabric/librdmacm:=[static-libs(+)] |
212 |
) |
213 |
iscsi? ( net-libs/libiscsi ) |
214 |
+ io-uring? ( sys-libs/liburing[static-libs(+)] ) |
215 |
jemalloc? ( dev-libs/jemalloc ) |
216 |
jpeg? ( virtual/jpeg:0=[static-libs(+)] ) |
217 |
lzo? ( dev-libs/lzo:2[static-libs(+)] ) |
218 |
@@ -157,7 +159,9 @@ SOFTMMU_TOOLS_DEPEND=" |
219 |
virgl? ( media-libs/virglrenderer[static-libs(+)] ) |
220 |
virtfs? ( sys-libs/libcap ) |
221 |
xen? ( app-emulation/xen-tools:= ) |
222 |
- xfs? ( sys-fs/xfsprogs[static-libs(+)] )" |
223 |
+ xfs? ( sys-fs/xfsprogs[static-libs(+)] ) |
224 |
+ zstd? ( >=app-arch/zstd-1.4.0[static-libs(+)] ) |
225 |
+" |
226 |
|
227 |
X86_FIRMWARE_DEPEND=" |
228 |
pin-upstream-blobs? ( |
229 |
@@ -217,6 +221,7 @@ PATCHES=( |
230 |
"${FILESDIR}"/${PN}-2.11.1-capstone_include_path.patch |
231 |
"${FILESDIR}"/${PN}-4.0.0-mkdir_systemtap.patch #684902 |
232 |
"${FILESDIR}"/${PN}-4.2.0-cflags.patch |
233 |
+ "${FILESDIR}"/${PN}-5.0.0-epoll-strace.patch |
234 |
) |
235 |
|
236 |
QA_PREBUILT=" |
237 |
@@ -449,6 +454,7 @@ qemu_src_configure() { |
238 |
$(conf_notuser gtk) |
239 |
$(conf_notuser infiniband rdma) |
240 |
$(conf_notuser iscsi libiscsi) |
241 |
+ $(conf_notuser io-uring linux-io-uring) |
242 |
$(conf_notuser jemalloc jemalloc) |
243 |
$(conf_notuser jpeg vnc-jpeg) |
244 |
$(conf_notuser kernel_linux kvm) |
245 |
@@ -480,6 +486,7 @@ qemu_src_configure() { |
246 |
$(conf_notuser xen xen-pci-passthrough) |
247 |
$(conf_notuser xfs xfsctl) |
248 |
$(conf_notuser xkb xkbcommon) |
249 |
+ $(conf_notuser zstd) |
250 |
) |
251 |
|
252 |
if [[ ${buildtype} == "user" ]] ; then |