summaryrefslogtreecommitdiff
path: root/poky/meta/recipes-devtools/qemu
diff options
context:
space:
mode:
authorAndrew Geissler <geissonator@yahoo.com>2023-05-05 19:29:21 +0300
committerAndrew Geissler <geissonator@yahoo.com>2023-05-19 16:11:41 +0300
commit028142bd6118b39dd3928195162e5f1cf2a8f3ce (patch)
treede3fc1d81a0e7046980dd4ab7829942b08d4db3e /poky/meta/recipes-devtools/qemu
parentd452b77b0ed98c8f3dcd413078e87f25ab4a3b1d (diff)
downloadopenbmc-028142bd6118b39dd3928195162e5f1cf2a8f3ce.tar.xz
subtree updates
poky: cce6db2a59..76cec94fad: Alex Kiernan (1): rust: Upgrade 1.68.2 -> 1.69.0 Alexander Kanavin (10): selftest/distrodata: clean up exception lists in recipe maintainers test dhcpcd: use git instead of tarballs perl: patch out build paths from native binaries binutils: backport a patch to address failures when time64.inc is in use time64.inc: add glibc-testsuite to 'special cases' bitbake.conf: set minimum required target kernel to 5.15 time64.inc: add a comment about how to simulate Y2038 in qemu oeqa/sdk/assimp: run only when zlib is in the SDK insane.bbclass: simplify exceptions for 32 bit time API check vulkan: add a comment explaining upstream version policy Andrey Zhizhikin (1): cryptodev: upgrade to 1.13 Armin Kuster (2): maintainers.inc: remove myself from assignment os-release: Add CPE_NAME Changhyeok Bae (1): iproute2: upgrade 6.2.0 -> 6.3.0 Enrico Jörns (1): package_manager/ipk: fix config path generation in _create_custom_config() Frederic Martinsons (3): ptest-cargo.bbclass: create class python3-bcrypt: enable build of unit tests zvariant: add ptest feature for zvariant test suite Jamin Lin (2): kernel-fitimage: support 64 bits address uboot-sign: support 64bits address Joe Slater (1): ghostscript: fix CVE-2023-28879 Johannes Schrimpf (1): python3targetconfig.bbclass: Extend PYTHONPATH instead of overwriting Khem Raj (8): musl: Update to latest master gpgme: Reset ac_cv_sys_file_offset_bits on musl mpg123: Reset ac_cv_sys_file_offset_bits on musl quilt: Fix merge.test race condition systemd: Fix timesyncd runtime assertions with 64bit time_t qtwebkitgtk: Backport a build fix for GCC 13 cmake: Upgrade to 3.26.3 piglit: Fix c++11-narrowing warnings in tests Lee Chee Yang (1): release-notes-4.2: remove/merge duplicates entries Markus Volk (2): gtk4: update 4.10.0 -> 4.10.3 gcr: update 4.0.0 -> 4.1.0 Martin Jansa (2): populate_sdk_ext.bbclass: redirect stderr to stdout so that both end in LOGFILE image_types_wic: Remove incorrect MLPREFIX to already prefixed virtual/ Martin Siegumfeldt (1): systemd-systemctl: fix instance template WantedBy symlink construction Michael Halstead (1): docs: add support for mickledore (4.2) release Michael Opdenacker (3): dev-manual: init-manager.rst: add summary ref-manual: system-requirements.rst: fix AlmaLinux variable name ref-manual: variables.rst: don't mention the INIT_MANAGER "none" option Ming Liu (1): weston: add xwayland to DEPENDS for PACKAGECONFIG xwayland Otavio Salvador (2): glide: remove as 'go mod' has become standard mesa: 23.0.2 -> 23.0.3 Patrick Williams (1): perl-version: remove PERL* assignments Paul Gortmaker (1): scripts: fix buildstats diff/summary hard bound to host python3 Peter Bergin (1): update-alternatives.bbclass: fix old override syntax Peter Kjellerstedt (1): license.bbclass: Include LICENSE in the output when it fails to parse Petr Kubizňák (1): devicetree.bbclass: Allow selection of dts files to build Qiu Tingting (1): lz4: Add ptest support Randolph Sapp (1): kernel-devicetree: allow specification of dtb directory Ranjitsinh Rathod (1): libbsd: Add correct license for all packages Richard Purdie (13): bitbake: cooker: Log config and parse cache status changes binutils: Drop crosssdk suffix from virtual provides to improve dependency handling gcc/go: Drop crosssdk suffix from virtual provides to improve dependency handling oeqa/runtime/ptest: Make returning no test results a failure python3-psutil: Drop nativesdk class extension due to breakage maintainers.inc: Move apt/dpkg to unassigned patchelf: Upgrade 0.17.2 -> 0.18.0 maintainers.inc: Fix email address typo qemu: Add fix for powerpc instruction fallback issue qemu: Upgrade 7.2.0 -> 8.0.0 maintainers.inc: Move repo to unassigned recipes: Default to https git protocol where possible bitbake: tests/fetch: Default to https git protocol where possible Ross Burton (13): python3-pytest: add missing tomllib RDEPENDS libinput: upgrade to 1.23.0 gtk+3: upgrade 3.24.36 -> 3.24.37 piglit: upgrade to latest revision dmidecode: upgrade to 3.5 connman: backport fix for CVE-2023-28488 vulkan-samples: update to latest SHA glslang: upgrade to 1.3.243 vulkan-headers: upgrade to 1.3.243 vulkan-loader: upgrade to 1.3.243 vulkan-tools: upgrade to 1.3.243 spirv-headers: remove description spirv-tools: remove redundant python3native inherit Sergei Zhmylev (1): wic: add support for proper kernel name to bootimg-pcbios Sudip Mukherjee (5): apt: Upgrade to v2.6.0 libxt: Upgrade to v1.3.0 libxfixes: Upgrade to v6.0.1 xwininfo: upgrade to v1.1.6 xinput: upgrade to v1.6.4 Tim Orling (1): libmodule-build-perl: upgrade 0.4232 -> 0.4234 Upgrade Helper (1): waffle: upgrade 1.7.0 -> 1.7.2 Virendra Thakur (1): qemu: Whitelist CVE-2023-0664 hen Qi (1): unfs3: fix symlink time setting issue meta-openembedded: c5f330bc9a..f3cdc9d7ee: Andrew Geissler (3): etcd: add recipe etcd: use v2.1.2 xhash to fix build issue etcd: remove gobin requirement for build Bergin, Peter (1): freediameter: fix typo and old overide syntax Bhargav Das (2): tslib: Add native & nativestdk package support pointercal: Add native & nativestdk package support Gianfranco Costamagna (1): dlt-daemon: upgrade 2.18.8 -> 2.18.9 (commit: 9a2312d3512a27620d41b9a325338b6e7b3d42de) Khem Raj (24): unixODBC: Update SRC_URI to use updated location of tarball ttf-arphic-uming: Update to 0.2.20080216-2 thrift: Upgrade to 0.18.1 unicode-ucd: Update license URI to reflect renamed license libtimezonemap: Point to a working SRC_URI libx86: Point to working SRC_URI ctapi-common: Point to working SRC_URI locations netkit-ftp: Update to debian patch 34 nicstat: Use SOURCEFORGE_MIRROR in SRC_URI rp-pppoe: Point SRC_URI to valid location ttf-mplus: Point to valid download location for SRC_URI geary: Use sysroot prefix with pkg-config in meson srecord: Upgrade to 1.65.0 ttf-lklug: Point SRC_URI to a working location radiusclient-ng: Point SRC_URI to archive.ubuntu.com httpfs2: Do not use S during compile/install tasks p910nd: Switch to using github for SRC_URI mosh: Point SRC_URI to https://mosh.org/ xdotool: Upgrade to 3.20211022.1 release faenza-icon-theme: Switch to a valid download location for SRC_URI debootstrap: Update SRC_URI to point to valid URL debootstrap: Use DEBIAN_MIRROR for SRC_URI ttf-gentium: Switch to debian archive mirror for SRC_URI nfacct: Update SRC_URI to point to valid URL Petr Gotthard (1): gensio: fix QA issue: non -staticdev package with .a libraries meta-arm: c60d7865dd..0b5724266a: Rui Miguel Silva (1): arm-bsp/u-boot: corstone1000: remove debug messages and fix env Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: I89bb649b388963a4e16080db6caa8ae1ac2cb3c2
Diffstat (limited to 'poky/meta/recipes-devtools/qemu')
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu-native_8.0.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu-native_7.2.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu-system-native_8.0.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu-system-native_7.2.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu.inc13
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-Revert-linux-user-add-more-compat-ioctl-definitions.patch69
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-configure-Fix-check-tcg-not-executing-any-tests.patch56
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch37
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch13
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch33
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0002-Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch78
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0002-chardev-connect-socket-to-a-spawned-command.patch246
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch57
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch13
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch13
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch13
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch13
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch11
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch29
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch11
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch17
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/cross.patch12
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/ppc.patch70
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu_8.0.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu_7.2.0.bb)0
22 files changed, 182 insertions, 624 deletions
diff --git a/poky/meta/recipes-devtools/qemu/qemu-native_7.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu-native_8.0.0.bb
index a94dc0b61e..73a0f63f2b 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-native_7.2.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-native_8.0.0.bb
@@ -4,6 +4,6 @@ DEPENDS = "glib-2.0-native zlib-native ninja-native meson-native"
require qemu-native.inc
-EXTRA_OECONF:append = " --target-list=${@get_qemu_usermode_target_list(d)} --disable-tools --disable-blobs --disable-guest-agent"
+EXTRA_OECONF:append = " --target-list=${@get_qemu_usermode_target_list(d)} --disable-tools --disable-install-blobs --disable-guest-agent"
PACKAGECONFIG ??= "pie"
diff --git a/poky/meta/recipes-devtools/qemu/qemu-system-native_7.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu-system-native_8.0.0.bb
index 04c7c2a6ac..04c7c2a6ac 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-system-native_7.2.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-system-native_8.0.0.bb
diff --git a/poky/meta/recipes-devtools/qemu/qemu.inc b/poky/meta/recipes-devtools/qemu/qemu.inc
index e2453dd8bc..394fa2acab 100644
--- a/poky/meta/recipes-devtools/qemu/qemu.inc
+++ b/poky/meta/recipes-devtools/qemu/qemu.inc
@@ -18,7 +18,6 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \
file://powerpc_rom.bin \
file://run-ptest \
file://0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch \
- file://0002-chardev-connect-socket-to-a-spawned-command.patch \
file://0003-apic-fixup-fallthrough-to-PIC.patch \
file://0004-configure-Add-pkg-config-handling-for-libgcrypt.patch \
file://0005-qemu-Do-not-include-file-if-not-exists.patch \
@@ -27,18 +26,15 @@ SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \
file://0008-tests-meson.build-use-relative-path-to-refer-to-file.patch \
file://0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch \
file://0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch \
- file://0001-contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch \
file://0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch \
- file://0001-configure-Fix-check-tcg-not-executing-any-tests.patch \
- file://0001-Revert-linux-user-add-more-compat-ioctl-definitions.patch \
- file://0002-Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch \
file://0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch \
file://qemu-guest-agent.init \
file://qemu-guest-agent.udev \
+ file://ppc.patch \
"
UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
-SRC_URI[sha256sum] = "5b49ce2687744dad494ae90a898c52204a3406e84d072482a1e1be854eeb2157"
+SRC_URI[sha256sum] = "bb60f0341531181d6cc3969dd19a013d0427a87f918193970d9adb91131e56d0"
SRC_URI:append:class-target = " file://cross.patch"
SRC_URI:append:class-nativesdk = " file://cross.patch"
@@ -54,6 +50,11 @@ CVE_CHECK_IGNORE += "CVE-2007-0998"
# https://bugzilla.redhat.com/show_bug.cgi?id=1609015#c11
CVE_CHECK_IGNORE += "CVE-2018-18438"
+# As per https://nvd.nist.gov/vuln/detail/CVE-2023-0664
+# https://bugzilla.redhat.com/show_bug.cgi?id=2167423
+# this bug related to windows specific.
+CVE_CHECK_IGNORE += "CVE-2023-0664"
+
COMPATIBLE_HOST:mipsarchn32 = "null"
COMPATIBLE_HOST:mipsarchn64 = "null"
COMPATIBLE_HOST:riscv32 = "null"
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-Revert-linux-user-add-more-compat-ioctl-definitions.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-Revert-linux-user-add-more-compat-ioctl-definitions.patch
deleted file mode 100644
index cd8121fed1..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-Revert-linux-user-add-more-compat-ioctl-definitions.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From afa96c55f2c270405de8984e2466067bbb44c0e4 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Tue, 10 Jan 2023 12:49:00 -0500
-Subject: [PATCH] Revert "linux-user: add more compat ioctl definitions"
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This reverts commit c5495f4ecb0cdaaf2e9dddeb48f1689cdb520ca0.
-
-glibc has fixed (in 2.36.9000-40-g774058d729) the problem
-that caused a clash when both sys/mount.h annd linux/mount.h
-are included, and backported this to the 2.36 stable release
-too:
-
- https://sourceware.org/glibc/wiki/Release/2.36#Usage_of_.3Clinux.2Fmount.h.3E_and_.3Csys.2Fmount.h.3E
-
-It is saner for QEMU to remove the workaround it applied for
-glibc 2.36 and expect distros to ship the 2.36 maint release
-with the fix. This avoids needing to add a further workaround
-to QEMU to deal with the fact that linux/brtfs.h now also pulls
-in linux/mount.h via linux/fs.h since Linux 6.1
-
-Upstream-Status: Backport from v8.0 (master)
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
-Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
-Link: https://lore.kernel.org/r/20230110174901.2580297-2-berrange@redhat.com
-Signed-off-by: Joel Stanley <joel@jms.id.au>
----
- linux-user/syscall.c | 25 -------------------------
- 1 file changed, 25 deletions(-)
-
-diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index f95a6161e..510de8edc 100644
---- a/linux-user/syscall.c
-+++ b/linux-user/syscall.c
-@@ -111,31 +111,6 @@
- #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
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-configure-Fix-check-tcg-not-executing-any-tests.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-configure-Fix-check-tcg-not-executing-any-tests.patch
deleted file mode 100644
index 66ae4deae1..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-configure-Fix-check-tcg-not-executing-any-tests.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From f295491361ed7fbe729ef6f029d83f68b8e2bee3 Mon Sep 17 00:00:00 2001
-From: Mukilan Thiyagarajan <quic_mthiyaga@quicinc.com>
-Date: Wed, 21 Dec 2022 09:04:06 +0000
-Subject: [PATCH] configure: Fix check-tcg not executing any tests
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-After configuring with --target-list=hexagon-linux-user
-running `make check-tcg` just prints the following:
-
-```
-make: Nothing to be done for 'check-tcg'
-```
-
-In the probe_target_compiler function, the 'break'
-command is used incorrectly. There are no lexically
-enclosing loops associated with that break command which
-is an unspecfied behaviour in the POSIX standard.
-
-The dash shell implementation aborts the currently executing
-loop, in this case, causing the rest of the logic for the loop
-in line 2490 to be skipped, which means no Makefiles are
-generated for the tcg target tests.
-
-Fixes: c3b570b5a9a24d25 (configure: don't enable
-cross compilers unless in target_list)
-
-Signed-off-by: Mukilan Thiyagarajan <quic_mthiyaga@quicinc.com>
-Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
-Link: https://patchew.org/QEMU/20221207082309.9966-1-quic._5Fmthiyaga@quicinc.com/
-Message-Id: <20221207082309.9966-1-quic_mthiyaga@quicinc.com>
-Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
-Message-Id: <20221221090411.1995037-2-alex.bennee@linaro.org>
-
-Upstream-Status: Backport [https://github.com/qemu/qemu/commit/73acb87be536d23e42db73a306104d8fd316ff20]
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
- configure | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/configure b/configure
-index 0c1db72b8..6b4589273 100755
---- a/configure
-+++ b/configure
-@@ -1881,9 +1881,7 @@ probe_target_compiler() {
- # We shall skip configuring the target compiler if the user didn't
- # bother enabling an appropriate guest. This avoids building
- # extraneous firmware images and tests.
-- if test "${target_list#*$1}" != "$1"; then
-- break;
-- else
-+ if test "${target_list#*$1}" = "$1"; then
- return 1
- fi
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch
deleted file mode 100644
index 1838c88f0e..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 38f5c88bf296dbbc04dcd57f36d64695055a2d3f Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 16 Dec 2022 20:19:49 -0800
-Subject: [PATCH 1/2] contrib/vhost-user-blk: Replace lseek64 with lseek
-
-64bit off_t is already in use since build uses _FILE_OFFSET_BITS=64
-already. Using lseek/off_t also makes it work with latest must without
-using _LARGEFILE64_SOURCE macro. This macro is implied with _GNU_SOURCE
-when using glibc but not with musl.
-
-Upstream-Status: Submitted [https://lists.gnu.org/archive/html/qemu-devel/2022-12/msg02840.html]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Cc: Michael S. Tsirkin <mst@redhat.com>
-CC: Raphael Norwitz <raphael.norwitz@nutanix.com>
----
- contrib/vhost-user-blk/vhost-user-blk.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/contrib/vhost-user-blk/vhost-user-blk.c b/contrib/vhost-user-blk/vhost-user-blk.c
-index aa99877fcd..7941694e53 100644
---- a/contrib/vhost-user-blk/vhost-user-blk.c
-+++ b/contrib/vhost-user-blk/vhost-user-blk.c
-@@ -532,9 +532,9 @@ vub_get_blocksize(int fd)
- static void
- vub_initialize_config(int fd, struct virtio_blk_config *config)
- {
-- off64_t capacity;
-+ off_t capacity;
-
-- capacity = lseek64(fd, 0, SEEK_END);
-+ capacity = lseek(fd, 0, SEEK_END);
- config->capacity = capacity >> 9;
- config->blk_size = vub_get_blocksize(fd);
- config->size_max = 65536;
---
-2.39.0
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch
index 6fb160e6d3..c65508017d 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch
@@ -18,11 +18,11 @@ Signed-off-by: Roy Li <rongqing.li@windriver.com>
hw/mips/malta.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/hw/mips/malta.c b/hw/mips/malta.c
-index 628851172..12d37f35d 100644
---- a/hw/mips/malta.c
-+++ b/hw/mips/malta.c
-@@ -61,7 +61,7 @@
+Index: qemu-8.0.0/hw/mips/malta.c
+===================================================================
+--- qemu-8.0.0.orig/hw/mips/malta.c
++++ qemu-8.0.0/hw/mips/malta.c
+@@ -64,7 +64,7 @@
#define ENVP_PADDR 0x2000
#define ENVP_VADDR cpu_mips_phys_to_kseg0(NULL, ENVP_PADDR)
#define ENVP_NB_ENTRIES 16
@@ -31,6 +31,3 @@ index 628851172..12d37f35d 100644
/* Hardware addresses */
#define FLASH_ADDRESS 0x1e000000ULL
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch
index 5ef1184e3c..a32ee57f8a 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0001-tracetool-use-relative-paths-for-line-preprocessor-d.patch
@@ -16,11 +16,11 @@ Upstream-Status: Pending
scripts/tracetool/backend/syslog.py | 4 +++-
3 files changed, 9 insertions(+), 3 deletions(-)
-diff --git a/scripts/tracetool/backend/ftrace.py b/scripts/tracetool/backend/ftrace.py
-index 5fa30ccc08..baed2ae61c 100644
---- a/scripts/tracetool/backend/ftrace.py
-+++ b/scripts/tracetool/backend/ftrace.py
-@@ -12,6 +12,8 @@
+Index: qemu-8.0.0/scripts/tracetool/backend/ftrace.py
+===================================================================
+--- qemu-8.0.0.orig/scripts/tracetool/backend/ftrace.py
++++ qemu-8.0.0/scripts/tracetool/backend/ftrace.py
+@@ -12,6 +12,8 @@ __maintainer__ = "Stefan Hajnoczi"
__email__ = "stefanha@redhat.com"
@@ -38,11 +38,11 @@ index 5fa30ccc08..baed2ae61c 100644
fmt=event.fmt.rstrip("\n"),
argnames=argnames)
-diff --git a/scripts/tracetool/backend/log.py b/scripts/tracetool/backend/log.py
-index 17ba1cd90e..de27b7e62e 100644
---- a/scripts/tracetool/backend/log.py
-+++ b/scripts/tracetool/backend/log.py
-@@ -12,6 +12,8 @@
+Index: qemu-8.0.0/scripts/tracetool/backend/log.py
+===================================================================
+--- qemu-8.0.0.orig/scripts/tracetool/backend/log.py
++++ qemu-8.0.0/scripts/tracetool/backend/log.py
+@@ -12,6 +12,8 @@ __maintainer__ = "Stefan Hajnoczi"
__email__ = "stefanha@redhat.com"
@@ -60,11 +60,11 @@ index 17ba1cd90e..de27b7e62e 100644
name=event.name,
fmt=event.fmt.rstrip("\n"),
argnames=argnames)
-diff --git a/scripts/tracetool/backend/syslog.py b/scripts/tracetool/backend/syslog.py
-index 5a3a00fe31..012970f6cc 100644
---- a/scripts/tracetool/backend/syslog.py
-+++ b/scripts/tracetool/backend/syslog.py
-@@ -12,6 +12,8 @@
+Index: qemu-8.0.0/scripts/tracetool/backend/syslog.py
+===================================================================
+--- qemu-8.0.0.orig/scripts/tracetool/backend/syslog.py
++++ qemu-8.0.0/scripts/tracetool/backend/syslog.py
+@@ -12,6 +12,8 @@ __maintainer__ = "Stefan Hajnoczi"
__email__ = "stefanha@redhat.com"
@@ -82,6 +82,3 @@ index 5a3a00fe31..012970f6cc 100644
name=event.name,
fmt=event.fmt.rstrip("\n"),
argnames=argnames)
---
-2.39.2
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0002-Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch b/poky/meta/recipes-devtools/qemu/qemu/0002-Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch
deleted file mode 100644
index d754f21ad4..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0002-Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From e95c0a42940ca1cf763ca3374b36a9be030039d7 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
-Date: Tue, 10 Jan 2023 12:49:01 -0500
-Subject: [PATCH] Revert "linux-user: fix compat with glibc >= 2.36
- sys/mount.h"
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This reverts commit 3cd3df2a9584e6f753bb62a0028bd67124ab5532.
-
-glibc has fixed (in 2.36.9000-40-g774058d729) the problem
-that caused a clash when both sys/mount.h annd linux/mount.h
-are included, and backported this to the 2.36 stable release
-too:
-
- https://sourceware.org/glibc/wiki/Release/2.36#Usage_of_.3Clinux.2Fmount.h.3E_and_.3Csys.2Fmount.h.3E
-
-It is saner for QEMU to remove the workaround it applied for
-glibc 2.36 and expect distros to ship the 2.36 maint release
-with the fix. This avoids needing to add a further workaround
-to QEMU to deal with the fact that linux/brtfs.h now also pulls
-in linux/mount.h via linux/fs.h since Linux 6.1
-
-Upstream-Status: Backport from v8.0 (master)
-
-Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
-Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
-Link: https://lore.kernel.org/r/20230110174901.2580297-3-berrange@redhat.com
-Signed-off-by: Joel Stanley <joel@jms.id.au>
----
- linux-user/syscall.c | 18 ------------------
- meson.build | 2 --
- 2 files changed, 20 deletions(-)
-
-diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 510de8edc..13a67b84b 100644
---- a/linux-user/syscall.c
-+++ b/linux-user/syscall.c
-@@ -95,25 +95,7 @@
- #include <linux/soundcard.h>
- #include <linux/kd.h>
- #include <linux/mtio.h>
--
--#ifdef HAVE_SYS_MOUNT_FSCONFIG
--/*
-- * glibc >= 2.36 linux/mount.h conflicts with sys/mount.h,
-- * which in turn prevents use of linux/fs.h. So we have to
-- * define the constants ourselves for now.
-- */
--#define FS_IOC_GETFLAGS _IOR('f', 1, long)
--#define FS_IOC_SETFLAGS _IOW('f', 2, long)
--#define FS_IOC_GETVERSION _IOR('v', 1, long)
--#define FS_IOC_SETVERSION _IOW('v', 2, long)
--#define FS_IOC_FIEMAP _IOWR('f', 11, struct fiemap)
--#define FS_IOC32_GETFLAGS _IOR('f', 1, int)
--#define FS_IOC32_SETFLAGS _IOW('f', 2, int)
--#define FS_IOC32_GETVERSION _IOR('v', 1, int)
--#define FS_IOC32_SETVERSION _IOW('v', 2, int)
--#else
- #include <linux/fs.h>
--#endif
- #include <linux/fd.h>
- #if defined(CONFIG_FIEMAP)
- #include <linux/fiemap.h>
-diff --git a/meson.build b/meson.build
-index e44432370..f37ba4114 100644
---- a/meson.build
-+++ b/meson.build
-@@ -2032,8 +2032,6 @@ config_host_data.set('HAVE_OPTRESET',
- cc.has_header_symbol('getopt.h', 'optreset'))
- config_host_data.set('HAVE_IPPROTO_MPTCP',
- cc.has_header_symbol('netinet/in.h', 'IPPROTO_MPTCP'))
--config_host_data.set('HAVE_SYS_MOUNT_FSCONFIG',
-- cc.has_header_symbol('sys/mount.h', 'FSCONFIG_SET_FLAG'))
-
- # has_member
- config_host_data.set('HAVE_SIGEV_NOTIFY_THREAD_ID',
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0002-chardev-connect-socket-to-a-spawned-command.patch b/poky/meta/recipes-devtools/qemu/qemu/0002-chardev-connect-socket-to-a-spawned-command.patch
deleted file mode 100644
index 63a99c9620..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0002-chardev-connect-socket-to-a-spawned-command.patch
+++ /dev/null
@@ -1,246 +0,0 @@
-From 14cd62607c9de232edf0a9b8503bd02783e03411 Mon Sep 17 00:00:00 2001
-From: Alistair Francis <alistair.francis@xilinx.com>
-Date: Thu, 21 Dec 2017 11:35:16 -0800
-Subject: [PATCH 02/12] chardev: connect socket to a spawned command
-
-The command is started in a shell (sh -c) with stdin connect to QEMU
-via a Unix domain stream socket. QEMU then exchanges data via its own
-end of the socket, just like it normally does.
-
-"-chardev socket" supports some ways of connecting via protocols like
-telnet, but that is only a subset of the functionality supported by
-tools socat. To use socat instead, for example to connect via a socks
-proxy, use:
-
- -chardev 'socket,id=socat,cmd=exec socat FD:0 SOCKS4A:socks-proxy.localdomain:example.com:9999,,socksuser=nobody' \
- -device usb-serial,chardev=socat
-
-Beware that commas in the command must be escaped as double commas.
-
-Or interactively in the console:
- (qemu) chardev-add socket,id=cat,cmd=cat
- (qemu) device_add usb-serial,chardev=cat
- ^ac
- # cat >/dev/ttyUSB0
- hello
- hello
-
-Another usage is starting swtpm from inside QEMU. swtpm will
-automatically shut down once it looses the connection to the parent
-QEMU, so there is no risk of lingering processes:
-
- -chardev 'socket,id=chrtpm0,cmd=exec swtpm socket --terminate --ctrl type=unixio,,clientfd=0 --tpmstate dir=... --log file=swtpm.log' \
- -tpmdev emulator,id=tpm0,chardev=chrtpm0 \
- -device tpm-tis,tpmdev=tpm0
-
-The patch was discussed upstream, but QEMU developers believe that the
-code calling QEMU should be responsible for managing additional
-processes. In OE-core, that would imply enhancing runqemu and
-oeqa. This patch is a simpler solution.
-
-Because it is not going upstream, the patch was written so that it is
-as simple as possible.
-
-Upstream-Status: Inappropriate [embedded specific]
-
-Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
-
----
- chardev/char-socket.c | 100 ++++++++++++++++++++++++++++++++++++++++++
- chardev/char.c | 3 ++
- qapi/char.json | 5 +++
- 3 files changed, 108 insertions(+)
-
-diff --git a/chardev/char-socket.c b/chardev/char-socket.c
-index fab2d791d..c79641f24 100644
---- a/chardev/char-socket.c
-+++ b/chardev/char-socket.c
-@@ -1315,6 +1315,67 @@ static bool qmp_chardev_validate_socket(ChardevSocket *sock,
- return true;
- }
-
-+#ifndef _WIN32
-+static void chardev_open_socket_cmd(Chardev *chr,
-+ const char *cmd,
-+ Error **errp)
-+{
-+ int fds[2] = { -1, -1 };
-+ QIOChannelSocket *sioc = NULL;
-+ pid_t pid = -1;
-+ const char *argv[] = { "/bin/sh", "-c", cmd, NULL };
-+
-+ /*
-+ * We need a Unix domain socket for commands like swtpm and a single
-+ * connection, therefore we cannot use qio_channel_command_new_spawn()
-+ * without patching it first. Duplicating the functionality is easier.
-+ */
-+ if (socketpair(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC, 0, fds)) {
-+ error_setg_errno(errp, errno, "Error creating socketpair(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC)");
-+ goto error;
-+ }
-+
-+ pid = qemu_fork(errp);
-+ if (pid < 0) {
-+ goto error;
-+ }
-+
-+ if (!pid) {
-+ /* child */
-+ dup2(fds[1], STDIN_FILENO);
-+ execv(argv[0], (char * const *)argv);
-+ _exit(1);
-+ }
-+
-+ /*
-+ * Hand over our end of the socket pair to the qio channel.
-+ *
-+ * We don't reap the child because it is expected to keep
-+ * running. We also don't support the "reconnect" option for the
-+ * same reason.
-+ */
-+ sioc = qio_channel_socket_new_fd(fds[0], errp);
-+ if (!sioc) {
-+ goto error;
-+ }
-+ fds[0] = -1;
-+
-+ g_free(chr->filename);
-+ chr->filename = g_strdup_printf("cmd:%s", cmd);
-+ tcp_chr_new_client(chr, sioc);
-+
-+ error:
-+ if (fds[0] >= 0) {
-+ close(fds[0]);
-+ }
-+ if (fds[1] >= 0) {
-+ close(fds[1]);
-+ }
-+ if (sioc) {
-+ object_unref(OBJECT(sioc));
-+ }
-+}
-+#endif
-
- static void qmp_chardev_open_socket(Chardev *chr,
- ChardevBackend *backend,
-@@ -1323,6 +1384,9 @@ static void qmp_chardev_open_socket(Chardev *chr,
- {
- SocketChardev *s = SOCKET_CHARDEV(chr);
- ChardevSocket *sock = backend->u.socket.data;
-+#ifndef _WIN32
-+ const char *cmd = sock->cmd;
-+#endif
- bool do_nodelay = sock->has_nodelay ? sock->nodelay : false;
- bool is_listen = sock->has_server ? sock->server : true;
- bool is_telnet = sock->has_telnet ? sock->telnet : false;
-@@ -1393,6 +1457,14 @@ static void qmp_chardev_open_socket(Chardev *chr,
-
- update_disconnected_filename(s);
-
-+#ifndef _WIN32
-+ if (cmd) {
-+ chardev_open_socket_cmd(chr, cmd, errp);
-+
-+ /* everything ready (or failed permanently) before we return */
-+ *be_opened = true;
-+ } else
-+#endif
- if (s->is_listen) {
- if (qmp_chardev_open_socket_server(chr, is_telnet || is_tn3270,
- is_waitconnect, errp) < 0) {
-@@ -1412,6 +1484,9 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
- const char *host = qemu_opt_get(opts, "host");
- const char *port = qemu_opt_get(opts, "port");
- const char *fd = qemu_opt_get(opts, "fd");
-+#ifndef _WIN32
-+ const char *cmd = qemu_opt_get(opts, "cmd");
-+#endif
- #ifdef CONFIG_LINUX
- bool tight = qemu_opt_get_bool(opts, "tight", true);
- bool abstract = qemu_opt_get_bool(opts, "abstract", false);
-@@ -1419,6 +1494,20 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
- SocketAddressLegacy *addr;
- ChardevSocket *sock;
-
-+#ifndef _WIN32
-+ if (cmd) {
-+ /*
-+ * Here we have to ensure that no options are set which are incompatible with
-+ * spawning a command, otherwise unmodified code that doesn't know about
-+ * command spawning (like socket_reconnect_timeout()) might get called.
-+ */
-+ if (path || sock->server || sock->has_telnet || sock->has_tn3270 || sock->reconnect || host || port || sock->tls_creds) {
-+ error_setg(errp, "chardev: socket: cmd does not support any additional options");
-+ return;
-+ }
-+ } else
-+#endif
-+
- if ((!!path + !!fd + !!host) > 1) {
- error_setg(errp,
- "None or one of 'path', 'fd' or 'host' option required.");
-@@ -1469,13 +1558,24 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
- sock->tls_creds = g_strdup(qemu_opt_get(opts, "tls-creds"));
- sock->has_tls_authz = qemu_opt_get(opts, "tls-authz");
- sock->tls_authz = g_strdup(qemu_opt_get(opts, "tls-authz"));
-+#ifndef _WIN32
-+ sock->cmd = g_strdup(cmd);
-+#endif
-
- addr = g_new0(SocketAddressLegacy, 1);
-+#ifndef _WIN32
-+ if (path || cmd) {
-+#else
- if (path) {
-+#endif
- UnixSocketAddress *q_unix;
- addr->type = SOCKET_ADDRESS_TYPE_UNIX;
- q_unix = addr->u.q_unix.data = g_new0(UnixSocketAddress, 1);
-+#ifndef _WIN32
-+ q_unix->path = cmd ? g_strdup_printf("cmd:%s", cmd) : g_strdup(path);
-+#else
- q_unix->path = g_strdup(path);
-+#endif
- #ifdef CONFIG_LINUX
- q_unix->has_tight = true;
- q_unix->tight = tight;
-diff --git a/chardev/char.c b/chardev/char.c
-index 0169d8dde..ce9a21f41 100644
---- a/chardev/char.c
-+++ b/chardev/char.c
-@@ -835,6 +835,9 @@ QemuOptsList qemu_chardev_opts = {
- },{
- .name = "path",
- .type = QEMU_OPT_STRING,
-+ },{
-+ .name = "cmd",
-+ .type = QEMU_OPT_STRING,
- },{
- .name = "host",
- .type = QEMU_OPT_STRING,
-diff --git a/qapi/char.json b/qapi/char.json
-index 7b4215157..37feabdac 100644
---- a/qapi/char.json
-+++ b/qapi/char.json
-@@ -250,6 +250,10 @@
- #
- # @addr: socket address to listen on (server=true)
- # or connect to (server=false)
-+# @cmd: command to run via "sh -c" with stdin as one end of
-+# a AF_UNIX SOCK_DSTREAM socket pair. The other end
-+# is used by the chardev. Either an addr or a cmd can
-+# be specified, but not both.
- # @tls-creds: the ID of the TLS credentials object (since 2.6)
- # @tls-authz: the ID of the QAuthZ authorization object against which
- # the client's x509 distinguished name will be validated. This
-@@ -276,6 +280,7 @@
- ##
- { 'struct': 'ChardevSocket',
- 'data': { 'addr': 'SocketAddressLegacy',
-+ '*cmd': 'str',
- '*tls-creds': 'str',
- '*tls-authz' : 'str',
- '*server': 'bool',
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch b/poky/meta/recipes-devtools/qemu/qemu/0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch
index 14b5338eb2..ceae67be64 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0002-linux-user-Replace-use-of-lfs64-related-functions-an.patch
@@ -16,11 +16,11 @@ Cc: Laurent Vivier <laurent@vivier.eu>
linux-user/syscall.c | 153 +++++++++++--------------------------------
1 file changed, 39 insertions(+), 114 deletions(-)
-diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index 1f8c10f8ef..30d83ed162 100644
---- a/linux-user/syscall.c
-+++ b/linux-user/syscall.c
-@@ -795,8 +795,8 @@ safe_syscall6(ssize_t, copy_file_range, int, infd, loff_t *, pinoff,
+Index: qemu-8.0.0/linux-user/syscall.c
+===================================================================
+--- qemu-8.0.0.orig/linux-user/syscall.c
++++ qemu-8.0.0/linux-user/syscall.c
+@@ -761,8 +761,8 @@ safe_syscall6(ssize_t, copy_file_range,
*/
#define safe_ioctl(...) safe_syscall(__NR_ioctl, __VA_ARGS__)
/* Similarly for fcntl. Note that callers must always:
@@ -31,7 +31,7 @@ index 1f8c10f8ef..30d83ed162 100644
* This will then work and use a 64-bit offset for both 32-bit and 64-bit hosts.
*/
#ifdef __NR_fcntl64
-@@ -6797,13 +6797,13 @@ static int target_to_host_fcntl_cmd(int cmd)
+@@ -6813,13 +6813,13 @@ static int target_to_host_fcntl_cmd(int
ret = cmd;
break;
case TARGET_F_GETLK:
@@ -48,7 +48,7 @@ index 1f8c10f8ef..30d83ed162 100644
break;
case TARGET_F_GETOWN:
ret = F_GETOWN;
-@@ -6817,17 +6817,6 @@ static int target_to_host_fcntl_cmd(int cmd)
+@@ -6833,17 +6833,6 @@ static int target_to_host_fcntl_cmd(int
case TARGET_F_SETSIG:
ret = F_SETSIG;
break;
@@ -66,7 +66,7 @@ index 1f8c10f8ef..30d83ed162 100644
case TARGET_F_SETLEASE:
ret = F_SETLEASE;
break;
-@@ -6879,8 +6868,8 @@ static int target_to_host_fcntl_cmd(int cmd)
+@@ -6895,8 +6884,8 @@ static int target_to_host_fcntl_cmd(int
* them to 5, 6 and 7 before making the syscall(). Since we make the
* syscall directly, adjust to what is supported by the kernel.
*/
@@ -77,7 +77,7 @@ index 1f8c10f8ef..30d83ed162 100644
}
#endif
-@@ -6913,55 +6902,11 @@ static int host_to_target_flock(int type)
+@@ -6929,55 +6918,11 @@ static int host_to_target_flock(int type
return type;
}
@@ -136,7 +136,7 @@ index 1f8c10f8ef..30d83ed162 100644
abi_short l_type;
abi_short l_whence;
abi_llong l_start;
-@@ -6969,10 +6914,10 @@ struct target_oabi_flock64 {
+@@ -6985,10 +6930,10 @@ struct target_oabi_flock64 {
abi_int l_pid;
} QEMU_PACKED;
@@ -149,7 +149,7 @@ index 1f8c10f8ef..30d83ed162 100644
int l_type;
if (!lock_user_struct(VERIFY_READ, target_fl, target_flock_addr, 1)) {
-@@ -6993,10 +6938,10 @@ static inline abi_long copy_from_user_oabi_flock64(struct flock64 *fl,
+@@ -7009,10 +6954,10 @@ static inline abi_long copy_from_user_oa
return 0;
}
@@ -163,7 +163,7 @@ index 1f8c10f8ef..30d83ed162 100644
short l_type;
if (!lock_user_struct(VERIFY_WRITE, target_fl, target_flock_addr, 0)) {
-@@ -7014,10 +6959,10 @@ static inline abi_long copy_to_user_oabi_flock64(abi_ulong target_flock_addr,
+@@ -7030,10 +6975,10 @@ static inline abi_long copy_to_user_oabi
}
#endif
@@ -176,7 +176,7 @@ index 1f8c10f8ef..30d83ed162 100644
int l_type;
if (!lock_user_struct(VERIFY_READ, target_fl, target_flock_addr, 1)) {
-@@ -7038,10 +6983,10 @@ static inline abi_long copy_from_user_flock64(struct flock64 *fl,
+@@ -7054,10 +6999,10 @@ static inline abi_long copy_from_user_fl
return 0;
}
@@ -190,7 +190,7 @@ index 1f8c10f8ef..30d83ed162 100644
short l_type;
if (!lock_user_struct(VERIFY_WRITE, target_fl, target_flock_addr, 0)) {
-@@ -7060,7 +7005,7 @@ static inline abi_long copy_to_user_flock64(abi_ulong target_flock_addr,
+@@ -7076,7 +7021,7 @@ static inline abi_long copy_to_user_floc
static abi_long do_fcntl(int fd, int cmd, abi_ulong arg)
{
@@ -199,7 +199,7 @@ index 1f8c10f8ef..30d83ed162 100644
#ifdef F_GETOWN_EX
struct f_owner_ex fox;
struct target_f_owner_ex *target_fox;
-@@ -7073,6 +7018,7 @@ static abi_long do_fcntl(int fd, int cmd, abi_ulong arg)
+@@ -7089,6 +7034,7 @@ static abi_long do_fcntl(int fd, int cmd
switch(cmd) {
case TARGET_F_GETLK:
@@ -207,7 +207,7 @@ index 1f8c10f8ef..30d83ed162 100644
ret = copy_from_user_flock(&fl64, arg);
if (ret) {
return ret;
-@@ -7082,32 +7028,11 @@ static abi_long do_fcntl(int fd, int cmd, abi_ulong arg)
+@@ -7098,32 +7044,11 @@ static abi_long do_fcntl(int fd, int cmd
ret = copy_to_user_flock(arg, &fl64);
}
break;
@@ -241,7 +241,7 @@ index 1f8c10f8ef..30d83ed162 100644
if (ret) {
return ret;
}
-@@ -7332,7 +7257,7 @@ static inline abi_long target_truncate64(CPUArchState *cpu_env, const char *arg1
+@@ -7348,7 +7273,7 @@ static inline abi_long target_truncate64
arg2 = arg3;
arg3 = arg4;
}
@@ -250,7 +250,7 @@ index 1f8c10f8ef..30d83ed162 100644
}
#endif
-@@ -7346,7 +7271,7 @@ static inline abi_long target_ftruncate64(CPUArchState *cpu_env, abi_long arg1,
+@@ -7362,7 +7287,7 @@ static inline abi_long target_ftruncate6
arg2 = arg3;
arg3 = arg4;
}
@@ -259,7 +259,7 @@ index 1f8c10f8ef..30d83ed162 100644
}
#endif
-@@ -8452,7 +8377,7 @@ static int do_getdents(abi_long dirfd, abi_long arg2, abi_long count)
+@@ -8598,7 +8523,7 @@ static int do_getdents(abi_long dirfd, a
void *tdirp;
int hlen, hoff, toff;
int hreclen, treclen;
@@ -268,7 +268,7 @@ index 1f8c10f8ef..30d83ed162 100644
hdirp = g_try_malloc(count);
if (!hdirp) {
-@@ -8505,7 +8430,7 @@ static int do_getdents(abi_long dirfd, abi_long arg2, abi_long count)
+@@ -8651,7 +8576,7 @@ static int do_getdents(abi_long dirfd, a
* Return what we have, resetting the file pointer to the
* location of the first record not returned.
*/
@@ -277,7 +277,7 @@ index 1f8c10f8ef..30d83ed162 100644
break;
}
-@@ -8539,7 +8464,7 @@ static int do_getdents64(abi_long dirfd, abi_long arg2, abi_long count)
+@@ -8685,7 +8610,7 @@ static int do_getdents64(abi_long dirfd,
void *tdirp;
int hlen, hoff, toff;
int hreclen, treclen;
@@ -286,7 +286,7 @@ index 1f8c10f8ef..30d83ed162 100644
hdirp = g_try_malloc(count);
if (!hdirp) {
-@@ -8581,7 +8506,7 @@ static int do_getdents64(abi_long dirfd, abi_long arg2, abi_long count)
+@@ -8727,7 +8652,7 @@ static int do_getdents64(abi_long dirfd,
* Return what we have, resetting the file pointer to the
* location of the first record not returned.
*/
@@ -295,7 +295,7 @@ index 1f8c10f8ef..30d83ed162 100644
break;
}
-@@ -11114,7 +11039,7 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int num, abi_long arg1,
+@@ -11158,7 +11083,7 @@ static abi_long do_syscall1(CPUArchState
return -TARGET_EFAULT;
}
}
@@ -304,7 +304,7 @@ index 1f8c10f8ef..30d83ed162 100644
unlock_user(p, arg2, ret);
return ret;
case TARGET_NR_pwrite64:
-@@ -11131,7 +11056,7 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int num, abi_long arg1,
+@@ -11175,7 +11100,7 @@ static abi_long do_syscall1(CPUArchState
return -TARGET_EFAULT;
}
}
@@ -313,7 +313,7 @@ index 1f8c10f8ef..30d83ed162 100644
unlock_user(p, arg2, 0);
return ret;
#endif
-@@ -11954,14 +11879,14 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int num, abi_long arg1,
+@@ -11998,14 +11923,14 @@ static abi_long do_syscall1(CPUArchState
case TARGET_NR_fcntl64:
{
int cmd;
@@ -333,7 +333,7 @@ index 1f8c10f8ef..30d83ed162 100644
}
#endif
-@@ -11971,7 +11896,7 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int num, abi_long arg1,
+@@ -12015,7 +11940,7 @@ static abi_long do_syscall1(CPUArchState
}
switch(arg2) {
@@ -342,7 +342,7 @@ index 1f8c10f8ef..30d83ed162 100644
ret = copyfrom(&fl, arg3);
if (ret) {
break;
-@@ -11982,8 +11907,8 @@ static abi_long do_syscall1(CPUArchState *cpu_env, int num, abi_long arg1,
+@@ -12026,8 +11951,8 @@ static abi_long do_syscall1(CPUArchState
}
break;
@@ -353,6 +353,3 @@ index 1f8c10f8ef..30d83ed162 100644
ret = copyfrom(&fl, arg3);
if (ret) {
break;
---
-2.39.0
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch b/poky/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch
index f350ffce47..e85f8202e9 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch
@@ -29,11 +29,11 @@ Signed-off-by: He Zhe <zhe.he@windriver.com>
hw/intc/apic.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/hw/intc/apic.c b/hw/intc/apic.c
-index 3df11c34d..9506c88ce 100644
---- a/hw/intc/apic.c
-+++ b/hw/intc/apic.c
-@@ -605,7 +605,7 @@ int apic_accept_pic_intr(DeviceState *dev)
+Index: qemu-8.0.0/hw/intc/apic.c
+===================================================================
+--- qemu-8.0.0.orig/hw/intc/apic.c
++++ qemu-8.0.0/hw/intc/apic.c
+@@ -607,7 +607,7 @@ int apic_accept_pic_intr(DeviceState *de
APICCommonState *s = APIC(dev);
uint32_t lvt0;
@@ -42,6 +42,3 @@ index 3df11c34d..9506c88ce 100644
return -1;
lvt0 = s->lvt[APIC_LVT_LINT0];
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch b/poky/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch
index 6faebd4e09..02f22143c1 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch
@@ -14,11 +14,11 @@ Signed-off-by: He Zhe <zhe.he@windriver.com>
meson.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/meson.build b/meson.build
-index 861de93c4..d45ff2d7c 100644
---- a/meson.build
-+++ b/meson.build
-@@ -1063,7 +1063,7 @@ endif
+Index: qemu-8.0.0/meson.build
+===================================================================
+--- qemu-8.0.0.orig/meson.build
++++ qemu-8.0.0/meson.build
+@@ -1213,7 +1213,7 @@ endif
if not gnutls_crypto.found()
if (not get_option('gcrypt').auto() or have_system) and not get_option('nettle').enabled()
gcrypt = dependency('libgcrypt', version: '>=1.8',
@@ -27,6 +27,3 @@ index 861de93c4..d45ff2d7c 100644
required: get_option('gcrypt'),
kwargs: static_kwargs)
# Debian has removed -lgpg-error from libgcrypt-config
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch b/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch
index 3f3c39f996..38aa4c3bbe 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch
@@ -16,11 +16,11 @@ Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
linux-user/syscall.c | 2 ++
1 file changed, 2 insertions(+)
-diff --git a/linux-user/syscall.c b/linux-user/syscall.c
-index f65045efe..340e0c6f0 100644
---- a/linux-user/syscall.c
-+++ b/linux-user/syscall.c
-@@ -113,7 +113,9 @@
+Index: qemu-8.0.0/linux-user/syscall.c
+===================================================================
+--- qemu-8.0.0.orig/linux-user/syscall.c
++++ qemu-8.0.0/linux-user/syscall.c
+@@ -115,7 +115,9 @@
#include <linux/blkpg.h>
#include <netpacket/packet.h>
#include <linux/netlink.h>
@@ -30,6 +30,3 @@ index f65045efe..340e0c6f0 100644
#include <linux/rtc.h>
#include <sound/asound.h>
#ifdef HAVE_BTRFS_H
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch b/poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch
index 75c0369318..5d1d7c6881 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch
@@ -23,11 +23,11 @@ Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org
linux-user/mmap.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
-diff --git a/linux-user/mmap.c b/linux-user/mmap.c
-index c125031b9..e651834a5 100644
---- a/linux-user/mmap.c
-+++ b/linux-user/mmap.c
-@@ -749,12 +749,16 @@ abi_long target_mremap(abi_ulong old_addr, abi_ulong old_size,
+Index: qemu-8.0.0/linux-user/mmap.c
+===================================================================
+--- qemu-8.0.0.orig/linux-user/mmap.c
++++ qemu-8.0.0/linux-user/mmap.c
+@@ -776,12 +776,16 @@ abi_long target_mremap(abi_ulong old_add
int prot;
void *host_addr;
@@ -47,6 +47,3 @@ index c125031b9..e651834a5 100644
return -1;
}
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch b/poky/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch
index 0d7dae3689..d3f965e070 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch
@@ -16,10 +16,10 @@ RP 2021/3/1
scripts/decodetree.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/scripts/decodetree.py b/scripts/decodetree.py
-index a03dc6b5e..4ea24c1f3 100644
---- a/scripts/decodetree.py
-+++ b/scripts/decodetree.py
+Index: qemu-8.0.0/scripts/decodetree.py
+===================================================================
+--- qemu-8.0.0.orig/scripts/decodetree.py
++++ qemu-8.0.0/scripts/decodetree.py
@@ -1328,7 +1328,7 @@ def main():
toppat = ExcMultiPattern(0)
@@ -29,6 +29,3 @@ index a03dc6b5e..4ea24c1f3 100644
f = open(filename, 'rt', encoding='utf-8')
parse_file(f, toppat)
f.close()
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch b/poky/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch
index 43d3c7cf1f..a84364ccc1 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch
@@ -17,22 +17,25 @@ Signed-off-by: Changqing Li <changqing.li@windriver.com>
tests/unit/meson.build | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
-diff --git a/tests/unit/meson.build b/tests/unit/meson.build
-index 96b295263..e4c3246dc 100644
---- a/tests/unit/meson.build
-+++ b/tests/unit/meson.build
-@@ -44,9 +44,9 @@ tests = {
+Index: qemu-8.0.0/tests/unit/meson.build
+===================================================================
+--- qemu-8.0.0.orig/tests/unit/meson.build
++++ qemu-8.0.0/tests/unit/meson.build
+@@ -46,7 +46,7 @@ tests = {
'test-keyval': [testqapi],
'test-logging': [],
'test-uuid': [],
- 'ptimer-test': ['ptimer-test-stubs.c', meson.project_source_root() / 'hw/core/ptimer.c'],
+ 'ptimer-test': ['ptimer-test-stubs.c', '../../hw/core/ptimer.c'],
'test-qapi-util': [],
-- 'test-smp-parse': [qom, meson.project_source_root() / 'hw/core/machine-smp.c'],
-+ 'test-smp-parse': [qom, '../../hw/core/machine-smp.c'],
- }
-
- if have_system or have_tools
---
-2.30.2
-
+ 'test-interval-tree': [],
+ 'test-xs-node': [qom],
+@@ -136,7 +136,7 @@ if have_system
+ 'test-util-sockets': ['socket-helpers.c'],
+ 'test-base64': [],
+ 'test-bufferiszero': [],
+- 'test-smp-parse': [qom, meson.project_source_root() / 'hw/core/machine-smp.c'],
++ 'test-smp-parse': [qom, '../../hw/core/machine-smp.c'],
+ 'test-vmstate': [migration, io],
+ 'test-yank': ['socket-helpers.c', qom, io, chardev]
+ }
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch b/poky/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch
index 23d0a69802..4de6cc2445 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch
@@ -18,10 +18,10 @@ Cc: Michael S. Tsirkin <mst@redhat.com>
util/mmap-alloc.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
-diff --git a/util/mmap-alloc.c b/util/mmap-alloc.c
-index 893d86435..86d3cda24 100644
---- a/util/mmap-alloc.c
-+++ b/util/mmap-alloc.c
+Index: qemu-8.0.0/util/mmap-alloc.c
+===================================================================
+--- qemu-8.0.0.orig/util/mmap-alloc.c
++++ qemu-8.0.0/util/mmap-alloc.c
@@ -10,14 +10,18 @@
* later. See the COPYING file in the top-level directory.
*/
@@ -44,6 +44,3 @@ index 893d86435..86d3cda24 100644
#include "qemu/mmap-alloc.h"
#include "qemu/host-utils.h"
#include "qemu/cutils.h"
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch b/poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch
index 810c74fabd..6caf35b634 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch
@@ -21,13 +21,13 @@ Signed-off-by: Yuval Shaia <yuval.shaia.ml@gmail.com>
hw/rdma/vmw/pvrdma_cmd.c | 6 ++++++
1 file changed, 6 insertions(+)
-diff --git a/hw/rdma/vmw/pvrdma_cmd.c b/hw/rdma/vmw/pvrdma_cmd.c
-index da7ddfa548..89db963c46 100644
---- a/hw/rdma/vmw/pvrdma_cmd.c
-+++ b/hw/rdma/vmw/pvrdma_cmd.c
-@@ -796,6 +796,12 @@ int pvrdma_exec_cmd(PVRDMADev *dev)
-
- dsr_info = &dev->dsr_info;
+Index: qemu-8.0.0/hw/rdma/vmw/pvrdma_cmd.c
+===================================================================
+--- qemu-8.0.0.orig/hw/rdma/vmw/pvrdma_cmd.c
++++ qemu-8.0.0/hw/rdma/vmw/pvrdma_cmd.c
+@@ -782,6 +782,12 @@ int pvrdma_exec_cmd(PVRDMADev *dev)
+ goto out;
+ }
+ if (!dsr_info->dsr) {
+ /* Buggy or malicious guest driver */
@@ -38,6 +38,3 @@ index da7ddfa548..89db963c46 100644
if (dsr_info->req->hdr.cmd >= sizeof(cmd_handlers) /
sizeof(struct cmd_handler)) {
rdma_error_report("Unsupported command");
---
-2.34.1
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/cross.patch b/poky/meta/recipes-devtools/qemu/qemu/cross.patch
index ca2ad361ef..112eb92593 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/cross.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/cross.patch
@@ -14,19 +14,19 @@ Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
configure | 4 ----
1 file changed, 4 deletions(-)
-Index: qemu-7.1.0/configure
+Index: qemu-8.0.0/configure
===================================================================
---- qemu-7.1.0.orig/configure
-+++ qemu-7.1.0/configure
-@@ -2710,7 +2710,6 @@ if test "$skip_meson" = no; then
- echo "strip = [$(meson_quote $strip)]" >> $cross
+--- qemu-8.0.0.orig/configure
++++ qemu-8.0.0/configure
+@@ -2590,7 +2590,6 @@ if test "$skip_meson" = no; then
echo "widl = [$(meson_quote $widl)]" >> $cross
echo "windres = [$(meson_quote $windres)]" >> $cross
+ echo "windmc = [$(meson_quote $windmc)]" >> $cross
- if test "$cross_compile" = "yes"; then
cross_arg="--cross-file config-meson.cross"
echo "[host_machine]" >> $cross
echo "system = '$targetos'" >> $cross
-@@ -2728,9 +2727,6 @@ if test "$skip_meson" = no; then
+@@ -2608,9 +2607,6 @@ if test "$skip_meson" = no; then
else
echo "endian = 'little'" >> $cross
fi
diff --git a/poky/meta/recipes-devtools/qemu/qemu/ppc.patch b/poky/meta/recipes-devtools/qemu/qemu/ppc.patch
new file mode 100644
index 0000000000..ade1daf61f
--- /dev/null
+++ b/poky/meta/recipes-devtools/qemu/qemu/ppc.patch
@@ -0,0 +1,70 @@
+target/ppc: Fix fallback to MFSS for MFFSCRN, MFFSCRNI, MFFSCE and MFFSL
+
+The following commits changed the code such that these instructions became invalid
+on pre 3.0 ISAs:
+
+ bf8adfd88b547680aa857c46098f3a1e94373160 - target/ppc: Move mffscrn[i] to decodetree
+ 394c2e2fda70da722f20fb60412d6c0ca4bfaa03 - target/ppc: Move mffsce to decodetree
+ 3e5bce70efe6bd1f684efbb21fd2a316cbf0657e - target/ppc: Move mffsl to decodetree
+
+The hardware will handle them as a MFFS instruction as the code did previously.
+Restore that behaviour. This means applications that were segfaulting under qemu
+when encountering these instructions now operate correctly. The instruction
+is used in glibc libm functions for example.
+
+Upstream-Status: Submitted [https://lore.kernel.org/qemu-devel/20230504110150.3044402-1-richard.purdie@linuxfoundation.org/]
+
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+Index: qemu-8.0.0/target/ppc/translate/fp-impl.c.inc
+===================================================================
+--- qemu-8.0.0.orig/target/ppc/translate/fp-impl.c.inc
++++ qemu-8.0.0/target/ppc/translate/fp-impl.c.inc
+@@ -584,7 +584,10 @@ static bool trans_MFFSCE(DisasContext *c
+ {
+ TCGv_i64 fpscr;
+
+- REQUIRE_INSNS_FLAGS2(ctx, ISA300);
++ if (unlikely(!(ctx->insns_flags2 & PPC2_ISA300))) {
++ return trans_MFFS(ctx, a);
++ }
++
+ REQUIRE_FPU(ctx);
+
+ gen_reset_fpstatus();
+@@ -597,7 +600,10 @@ static bool trans_MFFSCRN(DisasContext *
+ {
+ TCGv_i64 t1, fpscr;
+
+- REQUIRE_INSNS_FLAGS2(ctx, ISA300);
++ if (unlikely(!(ctx->insns_flags2 & PPC2_ISA300))) {
++ return trans_MFFS(ctx, a);
++ }
++
+ REQUIRE_FPU(ctx);
+
+ t1 = tcg_temp_new_i64();
+@@ -631,7 +637,10 @@ static bool trans_MFFSCRNI(DisasContext
+ {
+ TCGv_i64 t1, fpscr;
+
+- REQUIRE_INSNS_FLAGS2(ctx, ISA300);
++ if (unlikely(!(ctx->insns_flags2 & PPC2_ISA300))) {
++ return trans_MFFS(ctx, a);
++ }
++
+ REQUIRE_FPU(ctx);
+
+ t1 = tcg_temp_new_i64();
+@@ -661,7 +670,10 @@ static bool trans_MFFSCDRNI(DisasContext
+
+ static bool trans_MFFSL(DisasContext *ctx, arg_X_t *a)
+ {
+- REQUIRE_INSNS_FLAGS2(ctx, ISA300);
++ if (unlikely(!(ctx->insns_flags2 & PPC2_ISA300))) {
++ return trans_MFFS(ctx, a);
++ }
++
+ REQUIRE_FPU(ctx);
+
+ gen_reset_fpstatus();
diff --git a/poky/meta/recipes-devtools/qemu/qemu_7.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu_8.0.0.bb
index 42e133967e..42e133967e 100644
--- a/poky/meta/recipes-devtools/qemu/qemu_7.2.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu_8.0.0.bb