Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package qemu for openSUSE:Factory checked in 
at 2022-10-10 18:43:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qemu (Old)
 and      /work/SRC/openSUSE:Factory/.qemu.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qemu"

Mon Oct 10 18:43:33 2022 rev:237 rq:1008827 version:7.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/qemu/qemu.changes        2022-10-01 
17:42:44.745625291 +0200
+++ /work/SRC/openSUSE:Factory/.qemu.new.2275/qemu.changes      2022-10-10 
18:43:41.474756131 +0200
@@ -1,0 +2,64 @@
+Fri Oct  7 12:35:50 UTC 2022 - Dario Faggioli <dfaggi...@suse.com>
+
+- Fixes bsc#1204082
+* Patches added:
+  block-io_uring-revert-Use-io_uring_regis.patch
+
+Wed Oct  5 15:57:27 UTC 2022 - Dario Faggioli <dfaggi...@suse.com>
+
+- Due to change in where some documentation files are, if
+  qemu-guest-agent is installed, we need to make sure we update it
+  to our version (bsc#1203995)
+
+-------------------------------------------------------------------
+Wed Oct  5 15:43:56 UTC 2022 - Dario Faggioli <dfaggi...@suse.com>
+
+- The links in the forsplit dirs, in each subpackage, born to deal with
+  package & subpackage splitting, are not really used. In fact, they're
+  "Provides:"-ed by a bunch of subpackages, but there's no "Requires:"
+  for any of them. Let's just get rid of them.
+
+-------------------------------------------------------------------
+Tue Oct  4 13:49:43 UTC 2022 - Dario Faggioli <dfaggi...@suse.com>
+
+- The old qemu-binfmt weappers around the various qemu-$ARCH Linux
+  user emulation binaries (see, e.g., bsc#1186256) are not necessary
+  any longer, and bsc#1143725 can now be considered fixed.
+* Patches dropped:
+  linux-user-add-binfmt-wrapper-for-argv-0.patch
+  linux-user-binfmt-support-host-binaries.patch
+
+-------------------------------------------------------------------
+Tue Oct  4 11:49:53 UTC 2022 - Dario Faggioli <dfaggi...@suse.com>
+
+- Fix bsc#1204001. Patches are not upstream, and have been picked up
+  and backported from the ML. This is something we usually prefer to
+  avoid, but this is urgent, and the patches looks fine, with high
+  chances for them to be included as they are (and if they're not, we
+  will revisit this, i.e., drop them and re-include the ones that are
+  actually committed)
+* Patches added:
+  linux-user-add-more-compat-ioctl-definit.patch
+  linux-user-drop-conditionals-for-obsolet.patch
+  linux-user-remove-conditionals-for-many-.patch
+  meson-enforce-a-minimum-Linux-kernel-hea.patch
+
+-------------------------------------------------------------------
+Tue Oct  4 11:07:14 UTC 2022 - Dario Faggioli <dfaggi...@suse.com>
+
+- Improve the output of update_git.sh, by including the list of
+  repos to which we have downstream patches.
+
+-------------------------------------------------------------------
+Fri Sep 30 14:16:50 UTC 2022 - Dario Faggioli <dfaggi...@suse.com>
+
+- Fix: bsc#1202665, CVE-2022-2962
+* Patches added:
+  net-tulip-Restrict-DMA-engine-to-memorie.patch
+
+-------------------------------------------------------------------
+Fri Sep 30 12:48:20 UTC 2022 - Dirk M??ller <dmuel...@suse.com>
+
+- skip tests that don't work under qemu-linux-user emulation
+
+-------------------------------------------------------------------

Old:
----
  linux-user-add-binfmt-wrapper-for-argv-0.patch
  linux-user-binfmt-support-host-binaries.patch
  pkg-split.txt

New:
----
  block-io_uring-revert-Use-io_uring_regis.patch
  linux-user-add-more-compat-ioctl-definit.patch
  linux-user-drop-conditionals-for-obsolet.patch
  linux-user-remove-conditionals-for-many-.patch
  meson-enforce-a-minimum-Linux-kernel-hea.patch
  net-tulip-Restrict-DMA-engine-to-memorie.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ qemu.spec ++++++
--- /var/tmp/diff_new_pack.ASr031/_old  2022-10-10 18:43:43.518760531 +0200
+++ /var/tmp/diff_new_pack.ASr031/_new  2022-10-10 18:43:43.518760531 +0200
@@ -149,8 +149,7 @@
 Source14:       50-seabios-256k.json
 Source15:       60-seabios-128k.json
 Source200:      qemu-rpmlintrc
-Source201:      pkg-split.txt
-Source202:      DSDT.pcie
+Source201:      DSDT.pcie
 Source300:      bundles.tar.xz
 Source301:      update_git.sh
 Source302:      config.sh
@@ -165,30 +164,34 @@
 Patch00003:     hw-smbios-handle-both-file-formats-regar.patch
 Patch00004:     Revert-roms-efirom-tests-uefi-test-tools.patch
 Patch00005:     qemu-binfmt-conf-Modify-default-path.patch
-Patch00006:     linux-user-add-binfmt-wrapper-for-argv-0.patch
-Patch00007:     linux-user-binfmt-support-host-binaries.patch
-Patch00008:     linux-user-Fake-proc-cpuinfo.patch
-Patch00009:     linux-user-use-target_ulong.patch
-Patch00010:     linux-user-lseek-explicitly-cast-non-set.patch
-Patch00011:     PPC-KVM-Disable-mmu-notifier-check.patch
-Patch00012:     Make-char-muxer-more-robust-wrt-small-FI.patch
-Patch00013:     qemu-bridge-helper-reduce-security-profi.patch
-Patch00014:     Raise-soft-address-space-limit-to-hard-l.patch
-Patch00015:     increase-x86_64-physical-bits-to-42.patch
-Patch00016:     xen_disk-Add-suse-specific-flush-disable.patch
-Patch00017:     xen-add-block-resize-support-for-xen-dis.patch
-Patch00018:     xen-ignore-live-parameter-from-xen-save-.patch
-Patch00019:     scsi-generic-replace-logical-block-count.patch
-Patch00020:     hw-scsi-megasas-check-for-NULL-frame-in-.patch
-Patch00021:     scsi-generic-check-for-additional-SG_IO-.patch
-Patch00022:     Revert-tests-qtest-enable-more-vhost-use.patch
-Patch00023:     tests-change-error-message-in-test-162.patch
-Patch00024:     tests-qemu-iotests-Triple-timeout-of-i-o.patch
-Patch00025:     Disable-some-tests-that-have-problems-in.patch
-Patch00026:     Make-installed-scripts-explicitly-python.patch
-Patch00027:     meson-install-ivshmem-client-and-ivshmem.patch
-Patch00028:     meson-remove-pkgversion-from-CONFIG_STAM.patch
-Patch00029:     linux-user-use-max-as-default-CPU-model-.patch
+Patch00006:     linux-user-Fake-proc-cpuinfo.patch
+Patch00007:     linux-user-use-target_ulong.patch
+Patch00008:     linux-user-lseek-explicitly-cast-non-set.patch
+Patch00009:     PPC-KVM-Disable-mmu-notifier-check.patch
+Patch00010:     Make-char-muxer-more-robust-wrt-small-FI.patch
+Patch00011:     qemu-bridge-helper-reduce-security-profi.patch
+Patch00012:     Raise-soft-address-space-limit-to-hard-l.patch
+Patch00013:     increase-x86_64-physical-bits-to-42.patch
+Patch00014:     xen_disk-Add-suse-specific-flush-disable.patch
+Patch00015:     xen-add-block-resize-support-for-xen-dis.patch
+Patch00016:     xen-ignore-live-parameter-from-xen-save-.patch
+Patch00017:     scsi-generic-replace-logical-block-count.patch
+Patch00018:     hw-scsi-megasas-check-for-NULL-frame-in-.patch
+Patch00019:     scsi-generic-check-for-additional-SG_IO-.patch
+Patch00020:     Revert-tests-qtest-enable-more-vhost-use.patch
+Patch00021:     tests-change-error-message-in-test-162.patch
+Patch00022:     tests-qemu-iotests-Triple-timeout-of-i-o.patch
+Patch00023:     Disable-some-tests-that-have-problems-in.patch
+Patch00024:     Make-installed-scripts-explicitly-python.patch
+Patch00025:     meson-install-ivshmem-client-and-ivshmem.patch
+Patch00026:     meson-remove-pkgversion-from-CONFIG_STAM.patch
+Patch00027:     linux-user-use-max-as-default-CPU-model-.patch
+Patch00028:     net-tulip-Restrict-DMA-engine-to-memorie.patch
+Patch00029:     linux-user-add-more-compat-ioctl-definit.patch
+Patch00030:     linux-user-remove-conditionals-for-many-.patch
+Patch00031:     meson-enforce-a-minimum-Linux-kernel-hea.patch
+Patch00032:     linux-user-drop-conditionals-for-obsolet.patch
+Patch00033:     block-io_uring-revert-Use-io_uring_regis.patch
 # Patches applied in roms/seabios/:
 Patch01000:     seabios-switch-to-python3-as-needed.patch
 Patch01001:     enable-cross-compilation-on-ARM.patch
@@ -377,6 +380,9 @@
 %ifarch s390x
 Recommends:     qemu-hw-s390x-virtio-gpu-ccw
 %else
+# Due to change in where some documentation files are, if qemu-guest-agent
+# is installed, we need to make sure we update it to our version.
+Requires:       (qemu-guest-agent = %{qemuver} if qemu-guest-agent)
 Recommends:     qemu-hw-display-qxl
 Recommends:     qemu-hw-display-virtio-gpu
 Recommends:     qemu-hw-display-virtio-gpu-pci
@@ -462,8 +468,6 @@
 %_bindir/qemu-x86_64
 %_bindir/qemu-xtensa
 %_bindir/qemu-xtensaeb
-%_bindir/qemu-binfmt
-%_bindir/qemu-*-binfmt
 %_sbindir/qemu-binfmt-conf.sh
 
 # End of description and files for qemu-linux-user
@@ -482,7 +486,6 @@
 %dir %_datadir/icons/hicolor/*/apps
 %dir %_datadir/%name
 %dir %_datadir/%name/firmware
-%dir %_datadir/%name/forsplits
 %dir %_datadir/%name/vhost-user
 %dir %_sysconfdir/%name
 %dir %_sysconfdir/%name/firmware
@@ -506,10 +509,6 @@
 %_datadir/icons/hicolor/256x256/apps/qemu.png
 %_datadir/icons/hicolor/512x512/apps/qemu.png
 %_datadir/icons/hicolor/scalable/apps/qemu.svg
-%_datadir/%name/forsplits/17
-%_datadir/%name/forsplits/18
-%_datadir/%name/forsplits/19
-%_datadir/%name/forsplits/pkg-split.txt
 %_datadir/%name/keymaps
 %_datadir/%name/qemu-ifup
 %_datadir/%name/qemu-nsis.bmp
@@ -794,7 +793,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/05
 Requires:       qemu-ui-spice-core
 %{qemu_module_conflicts}
 
@@ -803,8 +801,6 @@
 
 %files audio-spice
 %defattr(-, root, root)
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/05
 %dir %_libdir/%name
 %_libdir/%name/audio-spice.so
 
@@ -925,7 +921,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/00
 %{qemu_module_conflicts}
 
 %description chardev-baum
@@ -934,8 +929,6 @@
 %files chardev-baum
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/00
 %dir %_libdir/%name
 %_libdir/%name/chardev-baum.so
 
@@ -944,7 +937,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/08
 Requires:       qemu-ui-spice-core
 %{qemu_module_conflicts}
 
@@ -954,8 +946,6 @@
 %files chardev-spice
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/08
 %dir %_libdir/%name
 %_libdir/%name/chardev-spice.so
 
@@ -964,7 +954,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/01
 Requires:       qemu-ui-spice-core
 %{qemu_module_conflicts}
 
@@ -974,8 +963,6 @@
 %files hw-display-qxl
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/01
 %dir %_libdir/%name
 %_libdir/%name/hw-display-qxl.so
 
@@ -984,7 +971,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/04
 %{qemu_module_conflicts}
 
 %description hw-display-virtio-gpu
@@ -993,8 +979,6 @@
 %files hw-display-virtio-gpu
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/04
 %_libdir/%name/hw-display-virtio-gpu.so
 %_libdir/%name/hw-display-virtio-gpu-gl.so
 
@@ -1004,7 +988,6 @@
 Version:        %{qemuver}
 Release:        0
 Requires:       qemu-hw-display-virtio-gpu
-Provides:       %name:%_datadir/%name/forsplits/11
 %{qemu_module_conflicts}
 
 %description hw-display-virtio-gpu-pci
@@ -1013,8 +996,6 @@
 %files hw-display-virtio-gpu-pci
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/11
 %dir %_libdir/%name
 %_libdir/%name/hw-display-virtio-gpu-pci.so
 %_libdir/%name/hw-display-virtio-gpu-pci-gl.so
@@ -1024,7 +1005,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/12
 %{qemu_module_conflicts}
 
 %description hw-display-virtio-vga
@@ -1033,8 +1013,6 @@
 %files hw-display-virtio-vga
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/12
 %dir %_libdir/%name
 %_libdir/%name/hw-display-virtio-vga.so
 %_libdir/%name/hw-display-virtio-vga-gl.so
@@ -1045,7 +1023,6 @@
 Version:        %{qemuver}
 Release:        0
 Requires:       qemu-hw-display-virtio-gpu
-Provides:       %name:%_datadir/%name/forsplits/13
 %{qemu_module_conflicts}
 
 %description hw-s390x-virtio-gpu-ccw
@@ -1055,8 +1032,6 @@
 %files hw-s390x-virtio-gpu-ccw
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/13
 %dir %_libdir/%name
 %_libdir/%name/hw-s390x-virtio-gpu-ccw.so
 
@@ -1065,7 +1040,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/02
 %{qemu_module_conflicts}
 
 %description hw-usb-redirect
@@ -1074,8 +1048,6 @@
 %files hw-usb-redirect
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/02
 %dir %_libdir/%name
 %_libdir/%name/hw-usb-redirect.so
 
@@ -1084,7 +1056,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/03
 %{qemu_module_conflicts}
 
 %description hw-usb-smartcard
@@ -1093,8 +1064,6 @@
 %files hw-usb-smartcard
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/03
 %dir %_libdir/%name
 %_libdir/%name/hw-usb-smartcard.so
 
@@ -1103,7 +1072,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/14
 %{qemu_module_conflicts}
 
 %description hw-usb-host
@@ -1112,8 +1080,6 @@
 %files hw-usb-host
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/14
 %dir %_libdir/%name
 %_libdir/%name/hw-usb-host.so
 
@@ -1168,7 +1134,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/10
 %{qemu_module_conflicts}
 
 %description ui-opengl
@@ -1177,8 +1142,6 @@
 %files ui-opengl
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/10
 %dir %_libdir/%name
 %_libdir/%name/ui-egl-headless.so
 %_libdir/%name/ui-opengl.so
@@ -1205,7 +1168,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/09
 Requires:       qemu-ui-opengl
 # This next Requires is only since virt-manager expects audio support
 Requires:       qemu-audio-spice
@@ -1217,8 +1179,6 @@
 %files ui-spice-core
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/09
 %dir %_libdir/%name
 %_libdir/%name/ui-spice-core.so
 
@@ -1289,7 +1249,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/07
 
 %description ivshmem-tools
 This package contains a sample shared memory client and server which utilize
@@ -1300,8 +1259,6 @@
 %files ivshmem-tools
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/07
 %_bindir/ivshmem-client
 %_bindir/ivshmem-server
 
@@ -1385,7 +1342,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/15
 %{qemu_module_conflicts}
 
 %description accel-tcg-x86
@@ -1397,8 +1353,6 @@
 %files accel-tcg-x86
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/15
 %dir %_libdir/%name
 %_libdir/%name/accel-tcg-i386.so
 %_libdir/%name/accel-tcg-x86_64.so
@@ -1408,7 +1362,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/16
 %{qemu_module_conflicts}
 
 %description accel-qtest
@@ -1420,8 +1373,6 @@
 %files accel-qtest
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/16
 %dir %_libdir/%name
 %_libdir/%name/accel-qtest-aarch64.so
 %_libdir/%name/accel-qtest-alpha.so
@@ -1530,7 +1481,6 @@
 BuildArch:      noarch
 Requires(post): update-alternatives
 Requires(postun):update-alternatives
-Provides:       %name:%_datadir/%name/forsplits/06
 
 %description skiboot
 Provides OPAL (OpenPower Abstraction Layer) firmware, aka skiboot, as
@@ -1539,8 +1489,6 @@
 %files skiboot
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/06
 %_datadir/%name/skiboot.lid
 %_datadir/%name/skiboot.lid.qemu
 %ghost %_sysconfdir/alternatives/skiboot.lid
@@ -2181,40 +2129,6 @@
 unlink %{buildroot}%_datadir/qemu/trace-events-all
 install -d -m 755 %{buildroot}%_sbindir
 install -m 755 scripts/qemu-binfmt-conf.sh %{buildroot}%_sbindir
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-aarch64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-aarch64_be-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-alpha-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-arm-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-armeb-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-cris-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-hexagon-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-hppa-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-i386-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-m68k-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-microblaze-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-microblazeel-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mips-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mips64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mips64el-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mipsel-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mipsn32-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mipsn32el-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-nios2-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-or1k-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-ppc-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-ppc64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-ppc64le-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-riscv32-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-riscv64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-s390x-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-sh4-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-sh4eb-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-sparc-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-sparc32plus-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-sparc64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-x86_64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-xtensa-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-xtensaeb-binfmt
 
 # End of additional installation steps for qemu-linux-user
 %else
@@ -2283,12 +2197,6 @@
 # this was never meant for customer consumption - delete even though installed
 unlink %{buildroot}%_bindir/elf2dmp
 
-install -D -m 0644 %{SOURCE201} 
%{buildroot}%_datadir/%name/forsplits/pkg-split.txt
-for X in 00 01 02 03 04 05 07 08 09 10 11 12 13 14 15 16 17 18 19
-do
-  ln -s pkg-split.txt %{buildroot}%_datadir/%name/forsplits/$X
-done
-
 # For PPC and x86 firmwares, there are a few extra install steps necessary.
 # In general, if we know that we have not built a firmware, remove it from the
 # install base, as the one that we have there is the upstream binary, that got
@@ -2305,7 +2213,6 @@
 # create a dummy target for /etc/alternatives/skiboot.lid
 mkdir -p %{buildroot}%{_sysconfdir}/alternatives
 ln -s -f %{_sysconfdir}/alternatives/skiboot.lid 
%{buildroot}%{_datadir}/%name/skiboot.lid
-ln -s pkg-split.txt %{buildroot}%_datadir/%name/forsplits/06
 %else
 for f in %{ppc_extra_firmware} ; do
   unlink %{buildroot}%_datadir/%name/$f
@@ -2346,7 +2253,12 @@
 # do that in the patch itself. Instead, we keep a copy of the binary in the
 # package sources, and put it in place now, before the tests themselves.
 # If that patch is removed, the following line needs to go as well.
-cp %{SOURCE202} %{srcdir}/tests/data/acpi/microvm/
+cp %{SOURCE201} %{srcdir}/tests/data/acpi/microvm/
+
+%if 0%{?qemu_user_space_build}
+# Seccomp is not supported by linux-user emulation
+echo 'int main (void) { return 0; }' > %{srcdir}/tests/unit/test-seccomp.c
+%endif
 
 # Compile the QOM test binary first, so that ...
 %make_build tests/qtest/qom-test
@@ -2365,7 +2277,9 @@
 make -O V=1 VERBOSE=1 -j1 check-block
 # Run qtests in parallel. If it becomes unreliable, we can try something
 # like this: make -O V=1 VERBOSE=1 -j1 check-qtest
+%if !0%{?qemu_user_space_build}
 %make_build check-qtest
+%endif
 # Last step will be to run a full check-report, but we will
 # enable this at a later point
 #make -O V=1 VERBOSE=1 -j1 check-report.junit.xml


++++++ block-io_uring-revert-Use-io_uring_regis.patch ++++++
From: Sam Li <faithilike...@gmail.com>
Date: Sat, 24 Sep 2022 22:48:15 +0800
Subject: block/io_uring: revert "Use io_uring_register_ring_fd() to skip fd
 operations"

Git-commit: 0000000000000000000000000000000000000000
References: bsc#1204082

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1193

The commit "Use io_uring_register_ring_fd() to skip fd operations" broke
when booting a guest with iothread and io_uring. That is because the
io_uring_register_ring_fd() call is made from the main thread instead of
IOThread where io_uring_submit() is called. It can not be guaranteed
to register the ring fd in the correct thread or unregister the same ring
fd if the IOThread is disabled. This optimization is not critical so we
will revert previous commit.

This reverts commit e2848bc574fe2715c694bf8fe9a1ba7f78a1125a
and 77e3f038af1764983087e3551a0fde9951952c4d.

Signed-off-by: Sam Li <faithilike...@gmail.com>
Signed-off-by: Dario Faggioli <dfaggi...@suse.com>
---
 block/io_uring.c | 13 +------------
 meson.build      |  1 -
 2 files changed, 1 insertion(+), 13 deletions(-)

diff --git a/block/io_uring.c b/block/io_uring.c
index a1760152e0581c279e22b1c3a8d0..973e15d87693370dd3388f511962 100644
--- a/block/io_uring.c
+++ b/block/io_uring.c
@@ -11,7 +11,6 @@
 #include "qemu/osdep.h"
 #include <liburing.h>
 #include "block/aio.h"
-#include "qemu/error-report.h"
 #include "qemu/queue.h"
 #include "block/block.h"
 #include "block/raw-aio.h"
@@ -19,7 +18,6 @@
 #include "qapi/error.h"
 #include "trace.h"
 
-
 /* io_uring ring size */
 #define MAX_ENTRIES 128
 
@@ -432,17 +430,8 @@ LuringState *luring_init(Error **errp)
     }
 
     ioq_init(&s->io_q);
-#ifdef CONFIG_LIBURING_REGISTER_RING_FD
-    if (io_uring_register_ring_fd(&s->ring) < 0) {
-        /*
-         * Only warn about this error: we will fallback to the non-optimized
-         * io_uring operations.
-         */
-        warn_report("failed to register linux io_uring ring file descriptor");
-    }
-#endif
-
     return s;
+
 }
 
 void luring_cleanup(LuringState *s)
diff --git a/meson.build b/meson.build
index 6641e86c0107906bb07d6b35d54a..265fea0648a8b651306deae60c0f 100644
--- a/meson.build
+++ b/meson.build
@@ -1805,7 +1805,6 @@ config_host_data.set('CONFIG_LIBNFS', libnfs.found())
 config_host_data.set('CONFIG_LIBSSH', libssh.found())
 config_host_data.set('CONFIG_LINUX_AIO', libaio.found())
 config_host_data.set('CONFIG_LINUX_IO_URING', linux_io_uring.found())
-config_host_data.set('CONFIG_LIBURING_REGISTER_RING_FD', 
cc.has_function('io_uring_register_ring_fd', prefix: '#include <liburing.h>', 
dependencies:linux_io_uring))
 config_host_data.set('CONFIG_LIBPMEM', libpmem.found())
 config_host_data.set('CONFIG_NUMA', numa.found())
 config_host_data.set('CONFIG_OPENGL', opengl.found())

++++++ bundles.tar.xz ++++++
Binary files old/621da7789083b80d6f1ff1c0fb499334007b4f51.bundle and 
new/621da7789083b80d6f1ff1c0fb499334007b4f51.bundle differ
Binary files old/roms/seabios/d239552ce7220e448ae81f41515138f7b9e3c4db.bundle 
and new/roms/seabios/d239552ce7220e448ae81f41515138f7b9e3c4db.bundle differ

++++++ linux-user-add-more-compat-ioctl-definit.patch ++++++
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berra...@redhat.com>
Date: Tue, 4 Oct 2022 10:32:03 +0100
Subject: linux-user: add more compat ioctl definitions
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Git-commit: 0000000000000000000000000000000000000000
Refereces: bsc#1204001

GLibc changes prevent us from including linux/fs.h anymore,
and we previously adjusted to this in

  commit 3cd3df2a9584e6f753bb62a0028bd67124ab5532
  Author: Daniel P. Berrang?? <berra...@redhat.com>
  Date:   Tue Aug 2 12:41:34 2022 -0400

    linux-user: fix compat with glibc >= 2.36 sys/mount.h

That change required adding compat ioctl definitions on the
QEMU side for any ioctls that we would otherwise obtain
from linux/fs.h.  This commit adds more that were initially
missed, due to their usage being conditionalized in QEMU.

Signed-off-by: Daniel P. Berrang?? <berra...@redhat.com>
Signed-off-by: Dario Faggioli <dfaggi...@suse.com>
---
 linux-user/syscall.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 9d92e56e3996dc2174a4af9d0491..5acb463d5e11311b2108358c7c01 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -111,6 +111,31 @@
 #define FS_IOC32_SETFLAGS              _IOW('f', 2, int)
 #define FS_IOC32_GETVERSION            _IOR('v', 1, int)
 #define FS_IOC32_SETVERSION            _IOW('v', 2, int)
+
+#define BLKGETSIZE64 _IOR(0x12,114,size_t)
+#define BLKDISCARD _IO(0x12,119)
+#define BLKIOMIN _IO(0x12,120)
+#define BLKIOOPT _IO(0x12,121)
+#define BLKALIGNOFF _IO(0x12,122)
+#define BLKPBSZGET _IO(0x12,123)
+#define BLKDISCARDZEROES _IO(0x12,124)
+#define BLKSECDISCARD _IO(0x12,125)
+#define BLKROTATIONAL _IO(0x12,126)
+#define BLKZEROOUT _IO(0x12,127)
+
+#define FIBMAP     _IO(0x00,1)
+#define FIGETBSZ   _IO(0x00,2)
+
+struct file_clone_range {
+        __s64 src_fd;
+        __u64 src_offset;
+        __u64 src_length;
+        __u64 dest_offset;
+};
+
+#define FICLONE         _IOW(0x94, 9, int)
+#define FICLONERANGE    _IOW(0x94, 13, struct file_clone_range)
+
 #else
 #include <linux/fs.h>
 #endif

++++++ linux-user-drop-conditionals-for-obsolet.patch ++++++
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berra...@redhat.com>
Date: Tue, 4 Oct 2022 10:32:06 +0100
Subject: linux-user: drop conditionals for obsolete kernel header versions
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Git-commit: 0000000000000000000000000000000000000000
Refereces: bsc#1204001

Given our newly enforced 4.18 baseline for the kernel headers version,
we can drop any conditional checks for older versions.

Signed-off-by: Daniel P. Berrang?? <berra...@redhat.com>
Signed-off-by: Dario Faggioli <dfaggi...@suse.com>
---
 linux-user/linux_loop.h    |  4 ----
 linux-user/syscall.c       | 14 ++------------
 tests/tcg/i386/test-i386.c | 10 +++-------
 3 files changed, 5 insertions(+), 23 deletions(-)

diff --git a/linux-user/linux_loop.h b/linux-user/linux_loop.h
index f80b96f1ff92c71bc1232b733d37..5a9e0edef2729642bfca8f146e6d 100644
--- a/linux-user/linux_loop.h
+++ b/linux-user/linux_loop.h
@@ -31,10 +31,6 @@ enum {
 #include <asm/posix_types.h>   /* for __kernel_old_dev_t */
 #include <asm/types.h>         /* for __u64 */
 
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) /* This is a guess.  */
-#define __kernel_old_dev_t __kernel_dev_t
-#endif
-
 /* Backwards compatibility version */
 struct loop_info {
        int                lo_number;           /* ioctl r/o */
diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index 5acb463d5e11311b2108358c7c01..d7c0d4a45d3907f1ef28fe93f9b6 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -2525,16 +2525,12 @@ set_timeout:
         case NETLINK_DROP_MEMBERSHIP:
         case NETLINK_BROADCAST_ERROR:
         case NETLINK_NO_ENOBUFS:
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 0)
         case NETLINK_LISTEN_ALL_NSID:
         case NETLINK_CAP_ACK:
-#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 0) */
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)
         case NETLINK_EXT_ACK:
-#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0) */
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 20, 0)
         case NETLINK_GET_STRICT_CHK:
-#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0) */
+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(4, 20, 0) */
             break;
         default:
             goto unimplemented;
@@ -2903,16 +2899,12 @@ get_timeout:
         case NETLINK_PKTINFO:
         case NETLINK_BROADCAST_ERROR:
         case NETLINK_NO_ENOBUFS:
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 0)
         case NETLINK_LISTEN_ALL_NSID:
         case NETLINK_CAP_ACK:
-#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 0) */
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)
         case NETLINK_EXT_ACK:
-#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0) */
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 20, 0)
         case NETLINK_GET_STRICT_CHK:
-#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0) */
+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(4, 20, 0) */
             if (get_user_u32(len, optlen)) {
                 return -TARGET_EFAULT;
             }
@@ -2929,7 +2921,6 @@ get_timeout:
                 return -TARGET_EFAULT;
             }
             break;
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 0)
         case NETLINK_LIST_MEMBERSHIPS:
         {
             uint32_t *results;
@@ -2960,7 +2951,6 @@ get_timeout:
             unlock_user(results, optval_addr, 0);
             break;
         }
-#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 0) */
         default:
             goto unimplemented;
         }
diff --git a/tests/tcg/i386/test-i386.c b/tests/tcg/i386/test-i386.c
index ac8d5a3c1f8b6eacf32649155c98..bd7ebb9d68b9e90673ed16a6f4cd 100644
--- a/tests/tcg/i386/test-i386.c
+++ b/tests/tcg/i386/test-i386.c
@@ -1231,10 +1231,6 @@ static inline int modify_ldt(int func, void * ptr, 
unsigned long bytecount)
     return syscall(__NR_modify_ldt, func, ptr, bytecount);
 }
 
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 5, 66)
-#define modify_ldt_ldt_s user_desc
-#endif
-
 #define MK_SEL(n) (((n) << 3) | 7)
 
 uint8_t seg_data1[4096];
@@ -1272,7 +1268,7 @@ uint8_t seg_data2[4096];
 /* NOTE: we use Linux modify_ldt syscall */
 void test_segs(void)
 {
-    struct modify_ldt_ldt_s ldt;
+    struct user_desc ldt;
     long long ldt_table[3];
     int res, res2;
     char tmp;
@@ -1374,7 +1370,7 @@ extern char code16_func3;
 
 void test_code16(void)
 {
-    struct modify_ldt_ldt_s ldt;
+    struct user_desc ldt;
     int res, res2;
 
     /* build a code segment */
@@ -1781,7 +1777,7 @@ void test_exceptions(void)
     }
 
     {
-        struct modify_ldt_ldt_s ldt;
+        struct user_desc ldt;
         ldt.entry_number = 1;
         ldt.base_addr = (unsigned long)&seg_data1;
         ldt.limit = (sizeof(seg_data1) + 0xfff) >> 12;

++++++ linux-user-remove-conditionals-for-many-.patch ++++++
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berra...@redhat.com>
Date: Tue, 4 Oct 2022 10:32:04 +0100
Subject: linux-user: remove conditionals for many fs.h ioctls
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Git-commit: 0000000000000000000000000000000000000000
Refereces: bsc#1204001

These ioctls have been defined in linux/fs.h for a long time

  * BLKGETSIZE64 - <2.6.12 (linux.git epoch)
  * BLKDISCARD - 2.6.28 (d30a2605be9d5132d95944916e8f578fcfe4f976)
  * BLKIOMIN - 2.6.32 (ac481c20ef8f6c6f2be75d581863f40c43874ef7)
  * BLKIOOPT - 2.6.32 (ac481c20ef8f6c6f2be75d581863f40c43874ef7)
  * BLKALIGNOFF - 2.6.32 (ac481c20ef8f6c6f2be75d581863f40c43874ef7)
  * BLKPBSZGET - 2.6.32 (ac481c20ef8f6c6f2be75d581863f40c43874ef7)
  * BLKDISCARDZEROES - 2.6.32 (98262f2762f0067375f83824d81ea929e37e6bfe)
  * BLKSECDISCARD - 2.6.36 (8d57a98ccd0b4489003473979da8f5a1363ba7a3)
  * BLKROTATIONAL - 3.2 (ef00f59c95fe6e002e7c6e3663cdea65e253f4cc)
  * BLKZEROOUT - 3.6 (66ba32dc167202c3cf8c86806581a9393ec7f488)
  * FIBMAP - <2.6.12 (linux.git epoch)
  * FIGETBSZ - <2.6.12 (linux.git epoch)

and when building with latest glibc, we'll see compat definitions
in syscall.c anyway thanks to the previous patch. Thus we can
assume they always exist and remove the conditional checks.

Signed-off-by: Daniel P. Berrang?? <berra...@redhat.com>
Signed-off-by: Dario Faggioli <dfaggi...@suse.com>
---
 linux-user/ioctls.h | 24 ------------------------
 1 file changed, 24 deletions(-)

diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
index f182d40190ed43ffa1bbc4fd09cb..071f7ca2537560e3c923c9a18abb 100644
--- a/linux-user/ioctls.h
+++ b/linux-user/ioctls.h
@@ -96,9 +96,7 @@
      IOCTL(BLKROGET, IOC_R, MK_PTR(TYPE_INT))
      IOCTL(BLKRRPART, 0, TYPE_NULL)
      IOCTL(BLKGETSIZE, IOC_R, MK_PTR(TYPE_ULONG))
-#ifdef BLKGETSIZE64
      IOCTL(BLKGETSIZE64, IOC_R, MK_PTR(TYPE_ULONGLONG))
-#endif
      IOCTL(BLKFLSBUF, 0, TYPE_NULL)
      IOCTL(BLKRASET, 0, TYPE_INT)
      IOCTL(BLKRAGET, IOC_R, MK_PTR(TYPE_LONG))
@@ -107,33 +105,15 @@
      IOCTL_SPECIAL(BLKPG, IOC_W, do_ioctl_blkpg,
                    MK_PTR(MK_STRUCT(STRUCT_blkpg_ioctl_arg)))
 
-#ifdef BLKDISCARD
      IOCTL(BLKDISCARD, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2)))
-#endif
-#ifdef BLKIOMIN
      IOCTL(BLKIOMIN, IOC_R, MK_PTR(TYPE_INT))
-#endif
-#ifdef BLKIOOPT
      IOCTL(BLKIOOPT, IOC_R, MK_PTR(TYPE_INT))
-#endif
-#ifdef BLKALIGNOFF
      IOCTL(BLKALIGNOFF, IOC_R, MK_PTR(TYPE_INT))
-#endif
-#ifdef BLKPBSZGET
      IOCTL(BLKPBSZGET, IOC_R, MK_PTR(TYPE_INT))
-#endif
-#ifdef BLKDISCARDZEROES
      IOCTL(BLKDISCARDZEROES, IOC_R, MK_PTR(TYPE_INT))
-#endif
-#ifdef BLKSECDISCARD
      IOCTL(BLKSECDISCARD, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2)))
-#endif
-#ifdef BLKROTATIONAL
      IOCTL(BLKROTATIONAL, IOC_R, MK_PTR(TYPE_SHORT))
-#endif
-#ifdef BLKZEROOUT
      IOCTL(BLKZEROOUT, IOC_W, MK_PTR(MK_ARRAY(TYPE_ULONGLONG, 2)))
-#endif
 
      IOCTL(FDMSGON, 0, TYPE_NULL)
      IOCTL(FDMSGOFF, 0, TYPE_NULL)
@@ -149,17 +129,13 @@
      IOCTL(FDTWADDLE, 0, TYPE_NULL)
      IOCTL(FDEJECT, 0, TYPE_NULL)
 
-#ifdef FIBMAP
      IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
-#endif
 #ifdef FICLONE
      IOCTL(FICLONE, IOC_W, TYPE_INT)
      IOCTL(FICLONERANGE, IOC_W, MK_PTR(MK_STRUCT(STRUCT_file_clone_range)))
 #endif
 
-#ifdef FIGETBSZ
      IOCTL(FIGETBSZ, IOC_R, MK_PTR(TYPE_LONG))
-#endif
 #ifdef CONFIG_FIEMAP
      IOCTL_SPECIAL(FS_IOC_FIEMAP, IOC_W | IOC_R, do_ioctl_fs_ioc_fiemap,
                    MK_PTR(MK_STRUCT(STRUCT_fiemap)))

++++++ meson-enforce-a-minimum-Linux-kernel-hea.patch ++++++
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berra...@redhat.com>
Date: Tue, 4 Oct 2022 10:32:05 +0100
Subject: meson: enforce a minimum Linux kernel headers version >= 4.18
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Git-commit: 0000000000000000000000000000000000000000
Refereces: bsc#1204001

Various areas of QEMU have a dependency on Linux kernel header
definitions. This falls under the scope of our supported platforms
matrix, but historically we've not checked for a minimum kernel
headers version. This has made it unclear when we can drop support
for older kernel headers.

  * Alpine 3.14: 5.10
  * CentOS 8: 4.18
  * CentOS 9: 5.14
  * Debian 10: 4.19
  * Debian 11: 5.10
  * Fedora 35: 5.19
  * Fedora 36: 5.19
  * OpenSUSE 15.3: 5.3.0
  * Ubuntu 20.04: 5.4
  * Ubuntu 22.04: 5.15

The above ignores the 3rd version digit since distros update their
packages periodically and such updates don't generally affect public
APIs to the extent that it matters for our build time check.

Overall, we can set the baseline to 4.18 currently.

Signed-off-by: Daniel P. Berrang?? <berra...@redhat.com>
Signed-off-by: Dario Faggioli <dfaggi...@suse.com>
---
 meson.build | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/meson.build b/meson.build
index 41f693a822a7ec58085bb53a8518..6641e86c0107906bb07d6b35d54a 100644
--- a/meson.build
+++ b/meson.build
@@ -248,6 +248,18 @@ if targetos == 'linux'
   add_project_arguments('-isystem', meson.current_source_dir() / 
'linux-headers',
                         '-isystem', 'linux-headers',
                         language: ['c', 'cpp'])
+
+  if not cc.compiles('''
+    #include <linux/version.h>
+    int main(void) {
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 18, 0)
+#error "QEMU requires Linux kernel headers version >= 4.18.0"
+#endif
+      return 0;
+    }''')
+  error('QEMU requires Linux kernel headers version >= 4.18.0')
+endif
+
 endif
 
 add_project_arguments('-iquote', '.',

++++++ meson-remove-pkgversion-from-CONFIG_STAM.patch ++++++
--- /var/tmp/diff_new_pack.ASr031/_old  2022-10-10 18:43:43.854761255 +0200
+++ /var/tmp/diff_new_pack.ASr031/_new  2022-10-10 18:43:43.858761263 +0200
@@ -21,7 +21,7 @@
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/meson.build b/meson.build
-index ce227b6c25e3c71f16416f0a8f25..09145d35aa3e684e92da7895ac67 100644
+index 20fddbd707c91c1baee604202fb1..41f693a822a7ec58085bb53a8518 100644
 --- a/meson.build
 +++ b/meson.build
 @@ -1736,7 +1736,7 @@ config_host_data.set_quoted('CONFIG_SYSCONFDIR', 
get_option('prefix') / get_opti

++++++ net-tulip-Restrict-DMA-engine-to-memorie.patch ++++++
From: Zheyu Ma <zheyum...@gmail.com>
Date: Sun, 21 Aug 2022 20:43:43 +0800
Subject: net: tulip: Restrict DMA engine to memories

Git-commit: 36a894aeb64a2e02871016da1c37d4a4ca109182
References: bsc#1202665, CVE-2022-2962

The DMA engine is started by I/O access and then itself accesses the
I/O registers, triggering a reentrancy bug.

The following log can reveal it:
==5637==ERROR: AddressSanitizer: stack-overflow
    #0 0x5595435f6078 in tulip_xmit_list_update qemu/hw/net/tulip.c:673
    #1 0x5595435f204a in tulip_write qemu/hw/net/tulip.c:805:13
    #2 0x559544637f86 in memory_region_write_accessor 
qemu/softmmu/memory.c:492:5
    #3 0x5595446379fa in access_with_adjusted_size qemu/softmmu/memory.c:554:18
    #4 0x5595446372fa in memory_region_dispatch_write qemu/softmmu/memory.c
    #5 0x55954468b74c in flatview_write_continue qemu/softmmu/physmem.c:2825:23
    #6 0x559544683662 in flatview_write qemu/softmmu/physmem.c:2867:12
    #7 0x5595446833f3 in address_space_write qemu/softmmu/physmem.c:2963:18
    #8 0x5595435fb082 in dma_memory_rw_relaxed qemu/include/sysemu/dma.h:87:12
    #9 0x5595435fb082 in dma_memory_rw qemu/include/sysemu/dma.h:130:12
    #10 0x5595435fb082 in dma_memory_write qemu/include/sysemu/dma.h:171:12
    #11 0x5595435fb082 in stl_le_dma qemu/include/sysemu/dma.h:272:1
    #12 0x5595435fb082 in stl_le_pci_dma qemu/include/hw/pci/pci.h:910:1
    #13 0x5595435fb082 in tulip_desc_write qemu/hw/net/tulip.c:101:9
    #14 0x5595435f7e3d in tulip_xmit_list_update qemu/hw/net/tulip.c:706:9
    #15 0x5595435f204a in tulip_write qemu/hw/net/tulip.c:805:13

Fix this bug by restricting the DMA engine to memories regions.

Signed-off-by: Zheyu Ma <zheyum...@gmail.com>
Signed-off-by: Jason Wang <jasow...@redhat.com>
Signed-off-by: Dario Faggioli <dfaggi...@suse.com>
---
 hw/net/tulip.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/hw/net/tulip.c b/hw/net/tulip.c
index 097e905bec296dd1c5e96771ef63..b9e42c322ab1fb92416adfc5fda9 100644
--- a/hw/net/tulip.c
+++ b/hw/net/tulip.c
@@ -70,7 +70,7 @@ static const VMStateDescription vmstate_pci_tulip = {
 static void tulip_desc_read(TULIPState *s, hwaddr p,
         struct tulip_descriptor *desc)
 {
-    const MemTxAttrs attrs = MEMTXATTRS_UNSPECIFIED;
+    const MemTxAttrs attrs = { .memory = true };
 
     if (s->csr[0] & CSR0_DBO) {
         ldl_be_pci_dma(&s->dev, p, &desc->status, attrs);
@@ -88,7 +88,7 @@ static void tulip_desc_read(TULIPState *s, hwaddr p,
 static void tulip_desc_write(TULIPState *s, hwaddr p,
         struct tulip_descriptor *desc)
 {
-    const MemTxAttrs attrs = MEMTXATTRS_UNSPECIFIED;
+    const MemTxAttrs attrs = { .memory = true };
 
     if (s->csr[0] & CSR0_DBO) {
         stl_be_pci_dma(&s->dev, p, desc->status, attrs);




++++++ qemu.spec.in ++++++
--- /var/tmp/diff_new_pack.ASr031/_old  2022-10-10 18:43:43.950761461 +0200
+++ /var/tmp/diff_new_pack.ASr031/_new  2022-10-10 18:43:43.954761470 +0200
@@ -149,8 +149,7 @@
 Source14:       50-seabios-256k.json
 Source15:       60-seabios-128k.json
 Source200:      qemu-rpmlintrc
-Source201:      pkg-split.txt
-Source202:      DSDT.pcie
+Source201:      DSDT.pcie
 Source300:      bundles.tar.xz
 Source301:      update_git.sh
 Source302:      config.sh
@@ -323,6 +322,9 @@
 %ifarch s390x
 Recommends:     qemu-hw-s390x-virtio-gpu-ccw
 %else
+# Due to change in where some documentation files are, if qemu-guest-agent
+# is installed, we need to make sure we update it to our version.
+Requires:       (qemu-guest-agent = %{qemuver} if qemu-guest-agent)
 Recommends:     qemu-hw-display-qxl
 Recommends:     qemu-hw-display-virtio-gpu
 Recommends:     qemu-hw-display-virtio-gpu-pci
@@ -408,8 +410,6 @@
 %_bindir/qemu-x86_64
 %_bindir/qemu-xtensa
 %_bindir/qemu-xtensaeb
-%_bindir/qemu-binfmt
-%_bindir/qemu-*-binfmt
 %_sbindir/qemu-binfmt-conf.sh
 
 # End of description and files for qemu-linux-user
@@ -428,7 +428,6 @@
 %dir %_datadir/icons/hicolor/*/apps
 %dir %_datadir/%name
 %dir %_datadir/%name/firmware
-%dir %_datadir/%name/forsplits
 %dir %_datadir/%name/vhost-user
 %dir %_sysconfdir/%name
 %dir %_sysconfdir/%name/firmware
@@ -452,10 +451,6 @@
 %_datadir/icons/hicolor/256x256/apps/qemu.png
 %_datadir/icons/hicolor/512x512/apps/qemu.png
 %_datadir/icons/hicolor/scalable/apps/qemu.svg
-%_datadir/%name/forsplits/17
-%_datadir/%name/forsplits/18
-%_datadir/%name/forsplits/19
-%_datadir/%name/forsplits/pkg-split.txt
 %_datadir/%name/keymaps
 %_datadir/%name/qemu-ifup
 %_datadir/%name/qemu-nsis.bmp
@@ -740,7 +735,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/05
 Requires:       qemu-ui-spice-core
 %{qemu_module_conflicts}
 
@@ -749,8 +743,6 @@
 
 %files audio-spice
 %defattr(-, root, root)
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/05
 %dir %_libdir/%name
 %_libdir/%name/audio-spice.so
 
@@ -871,7 +863,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/00
 %{qemu_module_conflicts}
 
 %description chardev-baum
@@ -880,8 +871,6 @@
 %files chardev-baum
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/00
 %dir %_libdir/%name
 %_libdir/%name/chardev-baum.so
 
@@ -890,7 +879,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/08
 Requires:       qemu-ui-spice-core
 %{qemu_module_conflicts}
 
@@ -900,8 +888,6 @@
 %files chardev-spice
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/08
 %dir %_libdir/%name
 %_libdir/%name/chardev-spice.so
 
@@ -910,7 +896,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/01
 Requires:       qemu-ui-spice-core
 %{qemu_module_conflicts}
 
@@ -920,8 +905,6 @@
 %files hw-display-qxl
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/01
 %dir %_libdir/%name
 %_libdir/%name/hw-display-qxl.so
 
@@ -930,7 +913,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/04
 %{qemu_module_conflicts}
 
 %description hw-display-virtio-gpu
@@ -939,8 +921,6 @@
 %files hw-display-virtio-gpu
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/04
 %_libdir/%name/hw-display-virtio-gpu.so
 %_libdir/%name/hw-display-virtio-gpu-gl.so
 
@@ -950,7 +930,6 @@
 Version:        %{qemuver}
 Release:        0
 Requires:       qemu-hw-display-virtio-gpu
-Provides:       %name:%_datadir/%name/forsplits/11
 %{qemu_module_conflicts}
 
 %description hw-display-virtio-gpu-pci
@@ -959,8 +938,6 @@
 %files hw-display-virtio-gpu-pci
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/11
 %dir %_libdir/%name
 %_libdir/%name/hw-display-virtio-gpu-pci.so
 %_libdir/%name/hw-display-virtio-gpu-pci-gl.so
@@ -970,7 +947,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/12
 %{qemu_module_conflicts}
 
 %description hw-display-virtio-vga
@@ -979,8 +955,6 @@
 %files hw-display-virtio-vga
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/12
 %dir %_libdir/%name
 %_libdir/%name/hw-display-virtio-vga.so
 %_libdir/%name/hw-display-virtio-vga-gl.so
@@ -991,7 +965,6 @@
 Version:        %{qemuver}
 Release:        0
 Requires:       qemu-hw-display-virtio-gpu
-Provides:       %name:%_datadir/%name/forsplits/13
 %{qemu_module_conflicts}
 
 %description hw-s390x-virtio-gpu-ccw
@@ -1001,8 +974,6 @@
 %files hw-s390x-virtio-gpu-ccw
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/13
 %dir %_libdir/%name
 %_libdir/%name/hw-s390x-virtio-gpu-ccw.so
 
@@ -1011,7 +982,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/02
 %{qemu_module_conflicts}
 
 %description hw-usb-redirect
@@ -1020,8 +990,6 @@
 %files hw-usb-redirect
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/02
 %dir %_libdir/%name
 %_libdir/%name/hw-usb-redirect.so
 
@@ -1030,7 +998,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/03
 %{qemu_module_conflicts}
 
 %description hw-usb-smartcard
@@ -1039,8 +1006,6 @@
 %files hw-usb-smartcard
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/03
 %dir %_libdir/%name
 %_libdir/%name/hw-usb-smartcard.so
 
@@ -1049,7 +1014,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/14
 %{qemu_module_conflicts}
 
 %description hw-usb-host
@@ -1058,8 +1022,6 @@
 %files hw-usb-host
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/14
 %dir %_libdir/%name
 %_libdir/%name/hw-usb-host.so
 
@@ -1114,7 +1076,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/10
 %{qemu_module_conflicts}
 
 %description ui-opengl
@@ -1123,8 +1084,6 @@
 %files ui-opengl
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/10
 %dir %_libdir/%name
 %_libdir/%name/ui-egl-headless.so
 %_libdir/%name/ui-opengl.so
@@ -1151,7 +1110,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/09
 Requires:       qemu-ui-opengl
 # This next Requires is only since virt-manager expects audio support
 Requires:       qemu-audio-spice
@@ -1163,8 +1121,6 @@
 %files ui-spice-core
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/09
 %dir %_libdir/%name
 %_libdir/%name/ui-spice-core.so
 
@@ -1235,7 +1191,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/07
 
 %description ivshmem-tools
 This package contains a sample shared memory client and server which utilize
@@ -1246,8 +1201,6 @@
 %files ivshmem-tools
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/07
 %_bindir/ivshmem-client
 %_bindir/ivshmem-server
 
@@ -1331,7 +1284,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/15
 %{qemu_module_conflicts}
 
 %description accel-tcg-x86
@@ -1343,8 +1295,6 @@
 %files accel-tcg-x86
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/15
 %dir %_libdir/%name
 %_libdir/%name/accel-tcg-i386.so
 %_libdir/%name/accel-tcg-x86_64.so
@@ -1354,7 +1304,6 @@
 Group:          System/Emulators/PC
 Version:        %{qemuver}
 Release:        0
-Provides:       %name:%_datadir/%name/forsplits/16
 %{qemu_module_conflicts}
 
 %description accel-qtest
@@ -1366,8 +1315,6 @@
 %files accel-qtest
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/16
 %dir %_libdir/%name
 %_libdir/%name/accel-qtest-aarch64.so
 %_libdir/%name/accel-qtest-alpha.so
@@ -1476,7 +1423,6 @@
 BuildArch:      noarch
 Requires(post): update-alternatives
 Requires(postun):update-alternatives
-Provides:       %name:%_datadir/%name/forsplits/06
 
 %description skiboot
 Provides OPAL (OpenPower Abstraction Layer) firmware, aka skiboot, as
@@ -1485,8 +1431,6 @@
 %files skiboot
 %defattr(-, root, root)
 %dir %_datadir/%name
-%dir %_datadir/%name/forsplits
-%_datadir/%name/forsplits/06
 %_datadir/%name/skiboot.lid
 %_datadir/%name/skiboot.lid.qemu
 %ghost %_sysconfdir/alternatives/skiboot.lid
@@ -2127,40 +2071,6 @@
 unlink %{buildroot}%_datadir/qemu/trace-events-all
 install -d -m 755 %{buildroot}%_sbindir
 install -m 755 scripts/qemu-binfmt-conf.sh %{buildroot}%_sbindir
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-aarch64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-aarch64_be-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-alpha-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-arm-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-armeb-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-cris-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-hexagon-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-hppa-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-i386-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-m68k-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-microblaze-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-microblazeel-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mips-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mips64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mips64el-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mipsel-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mipsn32-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-mipsn32el-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-nios2-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-or1k-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-ppc-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-ppc64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-ppc64le-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-riscv32-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-riscv64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-s390x-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-sh4-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-sh4eb-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-sparc-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-sparc32plus-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-sparc64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-x86_64-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-xtensa-binfmt
-ln -s qemu-binfmt %{buildroot}%_bindir/qemu-xtensaeb-binfmt
 
 # End of additional installation steps for qemu-linux-user
 %else
@@ -2229,12 +2139,6 @@
 # this was never meant for customer consumption - delete even though installed
 unlink %{buildroot}%_bindir/elf2dmp
 
-install -D -m 0644 %{SOURCE201} 
%{buildroot}%_datadir/%name/forsplits/pkg-split.txt
-for X in 00 01 02 03 04 05 07 08 09 10 11 12 13 14 15 16 17 18 19
-do
-  ln -s pkg-split.txt %{buildroot}%_datadir/%name/forsplits/$X
-done
-
 # For PPC and x86 firmwares, there are a few extra install steps necessary.
 # In general, if we know that we have not built a firmware, remove it from the
 # install base, as the one that we have there is the upstream binary, that got
@@ -2251,7 +2155,6 @@
 # create a dummy target for /etc/alternatives/skiboot.lid
 mkdir -p %{buildroot}%{_sysconfdir}/alternatives
 ln -s -f %{_sysconfdir}/alternatives/skiboot.lid 
%{buildroot}%{_datadir}/%name/skiboot.lid
-ln -s pkg-split.txt %{buildroot}%_datadir/%name/forsplits/06
 %else
 for f in %{ppc_extra_firmware} ; do
   unlink %{buildroot}%_datadir/%name/$f
@@ -2292,7 +2195,12 @@
 # do that in the patch itself. Instead, we keep a copy of the binary in the
 # package sources, and put it in place now, before the tests themselves.
 # If that patch is removed, the following line needs to go as well.
-cp %{SOURCE202} %{srcdir}/tests/data/acpi/microvm/
+cp %{SOURCE201} %{srcdir}/tests/data/acpi/microvm/
+
+%if 0%{?qemu_user_space_build}
+# Seccomp is not supported by linux-user emulation
+echo 'int main (void) { return 0; }' > %{srcdir}/tests/unit/test-seccomp.c
+%endif
 
 # Compile the QOM test binary first, so that ...
 %make_build tests/qtest/qom-test
@@ -2311,7 +2219,9 @@
 make -O V=1 VERBOSE=1 -j1 check-block
 # Run qtests in parallel. If it becomes unreliable, we can try something
 # like this: make -O V=1 VERBOSE=1 -j1 check-qtest
+%if !0%{?qemu_user_space_build}
 %make_build check-qtest
+%endif
 # Last step will be to run a full check-report, but we will
 # enable this at a later point
 #make -O V=1 VERBOSE=1 -j1 check-report.junit.xml

++++++ update_git.sh ++++++
--- /var/tmp/diff_new_pack.ASr031/_old  2022-10-10 18:43:44.062761702 +0200
+++ /var/tmp/diff_new_pack.ASr031/_new  2022-10-10 18:43:44.066761710 +0200
@@ -1069,6 +1069,19 @@
             echo "To modify package patches, use the frombundle branch as the 
basis for updating"
             echo "the $GIT_BRANCH branch with the new patch queue, e.g., like 
this:"
             echo "  git checkout -f --recurse-submodules -B $GIT_BRANCH 
frombundle"
+            echo "in the following repositories:"
+            for R in $(grep "Patches applied" $PKG.spec | awk '{print 
$(NF)}'|sed 's/:$//'); do
+                for (( i=0; i <$REPO_COUNT; i++ )); do
+                    if [ "${R}" = "project" ]; then
+                        echo "  * ${LOCAL_REPO_MAP[0]}"
+                        continue 2
+                    fi
+                    if [ "${R}" = "${PATCH_PATH_MAP[$i]}" ]; then
+                        echo "  * ${LOCAL_REPO_MAP[$i]}"
+                        continue 2
+                    fi
+                done
+            done
             echo "Then make your changes and, when done, export them back to 
the package with:"
             echo "  bash ./update_git.sh git2pkg"
             ;;

Reply via email to