Accepting request 736751 from home:bfrogers:branches:Virtualization

Some minor fixes.

OBS-URL: https://build.opensuse.org/request/show/736751
OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=498
This commit is contained in:
Bruce Rogers 2019-10-10 02:07:57 +00:00 committed by Git OBS Bridge
parent f3a8f2a093
commit 018b223699
8 changed files with 145 additions and 85 deletions

View File

@ -3,32 +3,31 @@ order to support git based patching. Please use it in order to have changes
you make be acceptable to the package maintainers. you make be acceptable to the package maintainers.
The qemu.spec file is generated from a qemu.spec.in template, so to make changes The qemu.spec file is generated from a qemu.spec.in template, so to make changes
to the spec file (besides patch name or order changes), you'll need to edit the to the spec file (besides the script generated patch references), you'll need to
template. The patches included are inserted into the spec file by scripts edit the template, not the spec file. The spec file patch references are inserted
described below. by scripts, which are described below.
If you are not modifying any patches or their order, but just need to update the If you are not modifying any patches or their order, but just need to update the
spec file from a changed template, run 'bash ./update_git.sh refresh'. spec file from a changed template, run 'bash ./update_git.sh refresh'.
If the set of patches is being modified, including their order, you will want to If the set of patches is being modified, including their order, you will want to
first run 'bash ./update_git.sh pkg2git', in order to get the current patch first run 'bash ./update_git.sh pkg2git', which makes the current package patch
queue made available in a local git branch named frombundle. (qemu packaging now queue available in a local git branch named frombundle (see confi.sh for the
includes a "bundle of git bundles" stored as a package source file, which locations). This set of patches comes from a "bundle of git bundles", the
contains the "git version" of the package patches.) You will create an altered bundles.tar.xz file, which is included as a package source file. You will then
patch queue in the $GIT_BRANCH branch (see config.sh for actual name), and use create an altered patch queue in the $GIT_BRANCH branch ( again,see config.sh),
the frombundle branch as a starting point (eg perhaps start by doing git reset and use the frombundle branch as the starting point for your changes (eg perhaps
--hard frombundle, then cherry-pick upstream patches from there). Once you have start by doing git reset --hard frombundle, then cherry-pick upstream patches
the patch queue ready to go run 'bash ./update_git.sh git2pkg' to update the from there). Once you have the patch queue ready to go run 'bash ./update_git.sh
bundle of bundles (bundles.tsr.xz file) as well as the spec and patch files. git2pkg' which updates the bunndles.tar.xz file, as well as the spec and patch
files.
Additional Notes:
** SPECIAL NOTE ABOUT CURRENT STATUS *** ** SPECIAL NOTE ABOUT CURRENT STATUS ***
The current status as of 12 Sep 2019 is that for this incarnation of qemu The current status as of 03 Oct 2019 is that for this incarnation of qemu
packaging, the old update_git.sh workflow is no longer supported, being packaging, the previous workflow which relied on the patches being in a shared
suplanted with the workflow described above. THIS IS STILL A WORK IN PROGRESS. git repo on github or gitlab is no longer supported. This new bundle based
workflos is still a work in progress.
If it isn't working right, please contact Bruce Rogers <brogers@suse.com>. If it isn't working right, please contact Bruce Rogers <brogers@suse.com>.
It isn't foolproof by a long shot!
Also note that qemu now takes advantage of the MultiBuild feature of the Build Also note that qemu now takes advantage of the MultiBuild feature of the Build
Service. No longer do the qemu-linux-user and qemu-testsuite packages have build Service. No longer do the qemu-linux-user and qemu-testsuite packages have build
@ -38,6 +37,8 @@ package variants.
- Bruce Rogers - Bruce Rogers
*** END SPECIAL NOTE *** *** END SPECIAL NOTE ***
Additional Notes:
Patches which are from an upstream git repo should have the commit id recorded Patches which are from an upstream git repo should have the commit id recorded
just below the Subject line (after a blank line) as follows: just below the Subject line (after a blank line) as follows:

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:a7b737c94e0a6b8e4f922d2947f19bdef88c8ea1e1124e7d47c74298e5cf2fbe oid sha256:88df3a40c42a4a202f358e77ed3802dd7ced53178a60b14f142d39f4f097f97e
size 53016 size 53292

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Thu Oct 10 01:42:04 UTC 2019 - Bruce Rogers <brogers@suse.com>
- Reduce the cross compiler versions we rely on
- Fix some qemu-testsuite issues, reducing known error cases
test-add-mapping-from-arch-of-i686-to-qe.patch
- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-4.1
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Oct 2 15:52:16 UTC 2019 - Bruce Rogers <brogers@suse.com> Wed Oct 2 15:52:16 UTC 2019 - Bruce Rogers <brogers@suse.com>

View File

@ -185,6 +185,7 @@ Patch00059: pc-bios-s390-ccw-net-avoid-warning-about.patch
Patch00060: roms-change-cross-compiler-naming-to-be-.patch Patch00060: roms-change-cross-compiler-naming-to-be-.patch
Patch00061: roms-Makefile.edk2-don-t-invoke-git-sinc.patch Patch00061: roms-Makefile.edk2-don-t-invoke-git-sinc.patch
Patch00062: tests-Disable-some-block-tests-for-now.patch Patch00062: tests-Disable-some-block-tests-for-now.patch
Patch00063: test-add-mapping-from-arch-of-i686-to-qe.patch
# Patches applied in roms/seabios/: # Patches applied in roms/seabios/:
Patch01000: seabios-use-python2-explicitly-as-needed.patch Patch01000: seabios-use-python2-explicitly-as-needed.patch
Patch01001: seabios-switch-to-python3-as-needed.patch Patch01001: seabios-switch-to-python3-as-needed.patch
@ -255,24 +256,16 @@ BuildRequires: bluez-devel
BuildRequires: brlapi-devel BuildRequires: brlapi-devel
%ifnarch %{ix86} aarch64 %ifnarch %{ix86} aarch64
BuildRequires: cross-aarch64-binutils BuildRequires: cross-aarch64-binutils
%if 0%{?is_opensuse} %if 0%{suse_version} > 1500
%ifarch riscv64
BuildRequires: cross-aarch64-gcc8
%else
BuildRequires: cross-aarch64-gcc9 BuildRequires: cross-aarch64-gcc9
%endif
%else %else
BuildRequires: cross-aarch64-gcc7 BuildRequires: cross-aarch64-gcc7
%endif %endif
%endif %endif
%ifnarch %{ix86} armv7hl %ifnarch %{ix86} armv7hl
BuildRequires: cross-arm-binutils BuildRequires: cross-arm-binutils
%if 0%{?is_opensuse} %if 0%{suse_version} > 1500
%ifarch riscv64
BuildRequires: cross-arm-gcc8
%else
BuildRequires: cross-arm-gcc9 BuildRequires: cross-arm-gcc9
%endif
%else %else
BuildRequires: cross-arm-gcc7 BuildRequires: cross-arm-gcc7
%endif %endif
@ -281,13 +274,13 @@ BuildRequires: cross-arm-gcc7
%ifnarch %{ix86} x86_64 %ifnarch %{ix86} x86_64
# We must cross-compile on non-x86* # We must cross-compile on non-x86*
BuildRequires: cross-i386-binutils BuildRequires: cross-i386-binutils
%if 0%{?is_opensuse} %if 0%{suse_version} > 1500
BuildRequires: cross-i386-gcc9 BuildRequires: cross-i386-gcc9
%else %else
BuildRequires: cross-i386-gcc7 BuildRequires: cross-i386-gcc7
%endif %endif
BuildRequires: cross-x86_64-binutils BuildRequires: cross-x86_64-binutils
%if 0%{?is_opensuse} %if 0%{suse_version} > 1500
BuildRequires: cross-x86_64-gcc9 BuildRequires: cross-x86_64-gcc9
%else %else
BuildRequires: cross-x86_64-gcc7 BuildRequires: cross-x86_64-gcc7
@ -961,6 +954,7 @@ This package provides a service file for starting and stopping KSM.
%patch00060 -p1 %patch00060 -p1
%patch00061 -p1 %patch00061 -p1
%patch00062 -p1 %patch00062 -p1
%patch00063 -p1
%patch01000 -p1 %patch01000 -p1
%patch01001 -p1 %patch01001 -p1
%patch01002 -p1 %patch01002 -p1
@ -1428,10 +1422,18 @@ make %{?_smp_mflags} -C %{_builddir}/%buildsubdir/roms opensbi64-sifive_u CROSS_
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
%if "%{name}" == "qemu-testsuite" %if "%{name}" == "qemu-testsuite"
# TODO: Some of these are actually overwritten during the following make's
ln -s %_bindir/qemu-img qemu-img ln -s %_bindir/qemu-img qemu-img
ln -s %_bindir/qemu-ga qemu-ga ln -s %_bindir/qemu-ga qemu-ga
ln -s %_bindir/qemu-io qemu-io ln -s %_bindir/qemu-io qemu-io
# And what about these binaries: qemu-nbd, elf2dmp, ivshmem-client, ivshmem-server, qemu-edid, qemu-keymap, qemu-pr-helper, virtfs-proxy-helper ln -s %_bindir/elf2map elf2map
ln -s %_bindir/qemu-nbd qemu-nbd
ln -s %_bindir/qemu-edid qemu-edid
ln -s %_bindir/qemu-keymap qemu-keymap
ln -s %_bindir/ivshmem-client ivshmem-client
ln -s %_bindir/ivshmem-server ivshmem-server
ln -s %_bindir/qemu-pr-helper scsi/qemu-pr-helper
ln -s %_bindir/virtfs-proxy-helper fsdev/virtfs-proxy-helper
for i in %firmware for i in %firmware
do do
@ -1453,7 +1455,7 @@ make %{?_smp_mflags} tests/qom-test %{?_smp_mflags} V=1
# ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379) # ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379)
make %{?_smp_mflags} check-report.tap V=1 make %{?_smp_mflags} check-report.tap V=1
%endif # qemu %endif # qemu-testsuite
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
%if "%{name}" == "qemu-linux-user" %if "%{name}" == "qemu-linux-user"

View File

@ -160,24 +160,16 @@ BuildRequires: bluez-devel
BuildRequires: brlapi-devel BuildRequires: brlapi-devel
%ifnarch %{ix86} aarch64 %ifnarch %{ix86} aarch64
BuildRequires: cross-aarch64-binutils BuildRequires: cross-aarch64-binutils
%if 0%{?is_opensuse} %if 0%{suse_version} > 1500
%ifarch riscv64
BuildRequires: cross-aarch64-gcc8
%else
BuildRequires: cross-aarch64-gcc9 BuildRequires: cross-aarch64-gcc9
%endif
%else %else
BuildRequires: cross-aarch64-gcc7 BuildRequires: cross-aarch64-gcc7
%endif %endif
%endif %endif
%ifnarch %{ix86} armv7hl %ifnarch %{ix86} armv7hl
BuildRequires: cross-arm-binutils BuildRequires: cross-arm-binutils
%if 0%{?is_opensuse} %if 0%{suse_version} > 1500
%ifarch riscv64
BuildRequires: cross-arm-gcc8
%else
BuildRequires: cross-arm-gcc9 BuildRequires: cross-arm-gcc9
%endif
%else %else
BuildRequires: cross-arm-gcc7 BuildRequires: cross-arm-gcc7
%endif %endif
@ -186,13 +178,13 @@ BuildRequires: cross-arm-gcc7
%ifnarch %{ix86} x86_64 %ifnarch %{ix86} x86_64
# We must cross-compile on non-x86* # We must cross-compile on non-x86*
BuildRequires: cross-i386-binutils BuildRequires: cross-i386-binutils
%if 0%{?is_opensuse} %if 0%{suse_version} > 1500
BuildRequires: cross-i386-gcc9 BuildRequires: cross-i386-gcc9
%else %else
BuildRequires: cross-i386-gcc7 BuildRequires: cross-i386-gcc7
%endif %endif
BuildRequires: cross-x86_64-binutils BuildRequires: cross-x86_64-binutils
%if 0%{?is_opensuse} %if 0%{suse_version} > 1500
BuildRequires: cross-x86_64-gcc9 BuildRequires: cross-x86_64-gcc9
%else %else
BuildRequires: cross-x86_64-gcc7 BuildRequires: cross-x86_64-gcc7
@ -1243,10 +1235,18 @@ make %{?_smp_mflags} -C %{_builddir}/%buildsubdir/roms opensbi64-sifive_u CROSS_
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
%if "%{name}" == "qemu-testsuite" %if "%{name}" == "qemu-testsuite"
# TODO: Some of these are actually overwritten during the following make's
ln -s %_bindir/qemu-img qemu-img ln -s %_bindir/qemu-img qemu-img
ln -s %_bindir/qemu-ga qemu-ga ln -s %_bindir/qemu-ga qemu-ga
ln -s %_bindir/qemu-io qemu-io ln -s %_bindir/qemu-io qemu-io
# And what about these binaries: qemu-nbd, elf2dmp, ivshmem-client, ivshmem-server, qemu-edid, qemu-keymap, qemu-pr-helper, virtfs-proxy-helper ln -s %_bindir/elf2map elf2map
ln -s %_bindir/qemu-nbd qemu-nbd
ln -s %_bindir/qemu-edid qemu-edid
ln -s %_bindir/qemu-keymap qemu-keymap
ln -s %_bindir/ivshmem-client ivshmem-client
ln -s %_bindir/ivshmem-server ivshmem-server
ln -s %_bindir/qemu-pr-helper scsi/qemu-pr-helper
ln -s %_bindir/virtfs-proxy-helper fsdev/virtfs-proxy-helper
for i in %firmware for i in %firmware
do do
@ -1268,7 +1268,7 @@ make %{?_smp_mflags} tests/qom-test %{?_smp_mflags} V=1
# ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379) # ... make comes in fresh and has lots of address space (needed for 32bit, bsc#957379)
make %{?_smp_mflags} check-report.tap V=1 make %{?_smp_mflags} check-report.tap V=1
%endif # qemu %endif # qemu-testsuite
# ------------------------------------------------------------------------ # ------------------------------------------------------------------------
%if "%{name}" == "qemu-linux-user" %if "%{name}" == "qemu-linux-user"

View File

@ -0,0 +1,25 @@
From: Bruce Rogers <brogers@suse.com>
Date: Sat, 5 Oct 2019 09:09:42 -0600
Subject: test: add mapping from arch of i686 to qemu_arch=i386
While we don't specifically set QEMU_PROG, the code which detects the
host architecture needs a little help mapping the output of uname -m to
what the qemu project uses to reference that architecture.
Signed-off-by: Bruce Rogers <brogers@suse.com>
---
tests/qemu-iotests/common.config | 1 +
1 file changed, 1 insertion(+)
diff --git a/tests/qemu-iotests/common.config b/tests/qemu-iotests/common.config
index 9bd1a5a6fc8367c336e9f51fe22f..e1c6ffa0cca3a8f14feeb38d6da8 100644
--- a/tests/qemu-iotests/common.config
+++ b/tests/qemu-iotests/common.config
@@ -24,6 +24,7 @@ PATH=".:$PATH"
HOSTOS=$(uname -s)
arch=$(uname -m)
[[ "$arch" =~ "ppc64" ]] && qemu_arch=ppc64 || qemu_arch="$arch"
+[[ "$arch" = "i686" ]] && qemu_arch=i386
# make sure we have a standard umask
umask 022

View File

@ -7,35 +7,56 @@ block tests. There doesn't seem to be an obvious cause. Given that we
now build qemu using multibuild, the qemu-testsuite failure is now more now build qemu using multibuild, the qemu-testsuite failure is now more
problematic to just ignore. Until we can address these failures, which problematic to just ignore. Until we can address these failures, which
seem to be tied to the build environment in some way, disable the tests seem to be tied to the build environment in some way, disable the tests
which are randomly failing. which are either randomly or reliably failing.
Currently, this patch is based on these failures seen on 02OCT2019 on At least some test failures are partly understood: tests 130, 153, and
161 fail due to an incompatibility with our use of --enable-membarrier
and the way the tests are driven.
Currently, this patch is based on these failures seen on 09OCT2019 on
v4.1.0 qemu: v4.1.0 qemu:
on x86_64: 130, 177, 204, 205, 246, 250 disable 065, 129, 130, 153, 161, 169, 182, 205, 218, 242, 248, 250
on i586: 161, 250
on ppc64le: 161, 182, 250, 250
on aarch64: 235
(other architectures not evaluated at this time) (other architectures not evaluated at this time)
Signed-off-by: Bruce Rogers <brogers@suse.com> Signed-off-by: Bruce Rogers <brogers@suse.com>
--- ---
tests/qemu-iotests/group | 18 +++++++++--------- tests/qemu-iotests/group | 24 ++++++++++++------------
1 file changed, 9 insertions(+), 9 deletions(-) 1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group diff --git a/tests/qemu-iotests/group b/tests/qemu-iotests/group
index f13e5f2e23417b94bd84d820bcf6..d0da6ec0c8daba541b39ae920f68 100644 index f13e5f2e23417b94bd84d820bcf6..d1579db09669797b0584e0892ff3 100644
--- a/tests/qemu-iotests/group --- a/tests/qemu-iotests/group
+++ b/tests/qemu-iotests/group +++ b/tests/qemu-iotests/group
@@ -151,7 +151,7 @@ @@ -86,7 +86,7 @@
062 rw auto quick
063 rw auto quick
064 rw quick
-065 rw quick
+#DISABLE FOR NOW 065 rw quick
066 rw auto quick
067 rw quick
068 rw quick
@@ -150,8 +150,8 @@
126 rw auto backing
127 rw backing quick 127 rw backing quick
128 rw quick 128 rw quick
129 rw quick -129 rw quick
-130 rw auto quick -130 rw auto quick
+#DISABLE FOR NOW 129 rw quick
+#DISABLE FOR NOW 130 rw auto quick +#DISABLE FOR NOW 130 rw auto quick
131 rw quick 131 rw quick
132 rw quick 132 rw quick
133 auto quick 133 auto quick
@@ -182,7 +182,7 @@ @@ -174,7 +174,7 @@
150 rw auto quick
151 rw
152 rw quick
-153 rw quick
+#DISABLE FOR NOW 153 rw quick
154 rw auto backing quick
155 rw
156 rw auto quick
@@ -182,11 +182,11 @@
158 rw auto quick 158 rw auto quick
159 rw auto quick 159 rw auto quick
160 rw quick 160 rw quick
@ -44,12 +65,12 @@ index f13e5f2e23417b94bd84d820bcf6..d0da6ec0c8daba541b39ae920f68 100644
162 quick 162 quick
163 rw 163 rw
165 rw quick 165 rw quick
@@ -194,11 +194,11 @@ -169 rw quick migration
174 auto +#DISABLE FOR NOW 169 rw quick migration
175 quick 170 rw auto quick
176 rw auto backing 171 rw quick
-177 rw auto quick 172 auto
+#DISABLE FOR NOW 177 rw auto quick @@ -198,7 +198,7 @@
178 img 178 img
179 rw auto quick 179 rw auto quick
181 rw migration 181 rw migration
@ -58,34 +79,37 @@ index f13e5f2e23417b94bd84d820bcf6..d0da6ec0c8daba541b39ae920f68 100644
183 rw migration 183 rw migration
184 rw auto quick 184 rw auto quick
185 rw 185 rw
@@ -219,8 +219,8 @@ @@ -220,7 +220,7 @@
201 rw migration
202 rw quick 202 rw quick
203 rw migration 203 rw migration
-204 rw quick 204 rw quick
-205 rw quick -205 rw quick
+#DISABLE FOR NOW 204 rw quick
+#DISABLE FOR NOW 205 rw quick +#DISABLE FOR NOW 205 rw quick
206 rw 206 rw
207 rw 207 rw
208 rw quick 208 rw quick
@@ -249,7 +249,7 @@ @@ -233,7 +233,7 @@
232 quick 215 rw quick
233 quick 216 rw quick
234 quick migration 217 rw auto quick
-235 quick -218 rw quick
+#DISABLE FOR NOW 235 quick +#DISABLE FOR NOW 218 rw quick
236 quick 219 rw
237 rw quick 220 rw auto
238 quick 221 rw quick
@@ -260,11 +260,11 @@ @@ -256,15 +256,15 @@
239 rw quick
240 quick
241 rw quick
-242 rw quick
+#DISABLE FOR NOW 242 rw quick
243 rw quick 243 rw quick
244 rw auto quick 244 rw auto quick
245 rw 245 rw
-246 rw quick 246 rw quick
+#DISABLE FOR NOW 246 rw quick
247 rw quick 247 rw quick
248 rw quick -248 rw quick
+#DISABLE FOR NOW 248 rw quick
249 rw auto quick 249 rw auto quick
-250 rw quick -250 rw quick
+#DISABLE FOR NOW 250 rw quick +#DISABLE FOR NOW 250 rw quick

View File

@ -591,8 +591,8 @@ osc service localrun format_spec_file
usage() { usage() {
echo "Usage:" echo "Usage:"
echo "bash ./git_update.sh <command>: script to manage package maintenance" echo "bash ./git_update.sh <command>
echo "using a git-based workflow. Commands are as follows:" echo description: package maintenance using a git-based workflow. Commands:"
echo " git2pkg (update package spec file and patches from git. Is default)" echo " git2pkg (update package spec file and patches from git. Is default)"
echo " pkg2git (update git (frombundle branch) from the package "bundleofbundles")" echo " pkg2git (update git (frombundle branch) from the package "bundleofbundles")"
echo " refresh (refresh spec file from spec file template and "bundlofbundles")" echo " refresh (refresh spec file from spec file template and "bundlofbundles")"