Gentoo Archives: gentoo-commits

From: Sergei Trofimovich <slyfox@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/qemu/, app-emulation/qemu/files/
Date: Thu, 30 Apr 2020 23:47:37
Message-Id: 1588290446.a1cc6f0bdfeb26400cbfac4fb86031c1bab3b6ef.slyfox@gentoo
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