diff --git a/.gitignore b/.gitignore
index 1563109..9faf207 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@
 /x86_64/
 /*.src.rpm
 /qemu-*.tar.xz
+/qemu-*.tar.xz.sig
diff --git a/0001-pc-bios-optionrom-Fix-pvh.img-ld-build-failure-on-fe.patch b/0001-pc-bios-optionrom-Fix-pvh.img-ld-build-failure-on-fe.patch
new file mode 100644
index 0000000..b699c10
--- /dev/null
+++ b/0001-pc-bios-optionrom-Fix-pvh.img-ld-build-failure-on-fe.patch
@@ -0,0 +1,52 @@
+From 12cbd48e1e78f07b19df900b0f9ccdd633aa42ee Mon Sep 17 00:00:00 2001
+From: Cole Robinson <crobinso@redhat.com>
+Date: Mon, 27 Nov 2023 12:51:25 -0500
+Subject: [PATCH] pc-bios/optionrom: Fix pvh.img ld build failure on fedora
+ rawhide
+Content-type: text/plain
+
+binutils 2.39 shows some warnings when building pvh.img
+
+/usr/bin/ld: warning: pvh.o: missing .note.GNU-stack section implies executable stack
+/usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
+/usr/bin/ld: warning: pvh.img has a LOAD segment with RWX permissions
+
+The latter of which is fatal on Fedora rawhide for some reason.
+
+Add linker options to suppress the errors
+
+Signed-off-by: Cole Robinson <crobinso@redhat.com>
+---
+ pc-bios/optionrom/Makefile | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile
+index 30d07026c7..87cfc484c7 100644
+--- a/pc-bios/optionrom/Makefile
++++ b/pc-bios/optionrom/Makefile
+@@ -38,6 +38,16 @@ config-cc.mak: Makefile
+ 
+ override LDFLAGS = -nostdlib -Wl,--build-id=none,-T,$(SRC_DIR)/flat.lds
+ 
++ld-test = $(LD) -v $1 >/dev/null 2>/dev/null
++ld-option = if $(call ld-test, $1); then \
++    echo "$(TARGET_PREFIX)$1 detected" && echo "override LDFLAGS += -Wl,$1" >&3; else \
++    echo "$(TARGET_PREFIX)$1 not detected" $(if $2,&& echo "override LDFLAGS += $2" >&3); fi
++
++config-ld.mak: Makefile
++	$(quiet-@)($(call ld-option,--no-warn-rwx-segments); \
++	    $(call ld-option,--no-warn-execstack)) 3> config-ld.mak
++-include config-ld.mak
++
+ pvh.img: pvh.o pvh_main.o
+ 
+ %.o: %.S
+@@ -61,7 +71,7 @@ clean:
+ 	rm -f *.o *.d *.raw *.img *.bin *~
+ 
+ distclean:
+-	rm -f config-cc.mak
++	rm -f config-cc.mak config-ld.mak
+ 
+ # suppress auto-removal of intermediate files
+ .SECONDARY:
diff --git a/0001-relax-CA-certs-checks.patch b/0001-relax-CA-certs-checks.patch
new file mode 100644
index 0000000..f74e26a
--- /dev/null
+++ b/0001-relax-CA-certs-checks.patch
@@ -0,0 +1,19 @@
+From: Roberto Campesato <render@metalabs.org>
+diff --git a/crypto/tlscredsx509.c b/crypto/tlscredsx509.c
+--- a/crypto/tlscredsx509.c
++++ b/crypto/tlscredsx509.c
+@@ -502,14 +502,6 @@
+         goto cleanup;
+     }
+
+-    for (i = 0; i < ncacerts; i++) {
+-        if (qcrypto_tls_creds_check_cert(creds,
+-                                         cacerts[i], cacertFile,
+-                                         isServer, true, errp) < 0) {
+-            goto cleanup;
+-        }
+-    }
+-
+     if (cert && ncacerts &&
+         qcrypto_tls_creds_check_cert_pair(cert, certFile, cacerts,
+                                           ncacerts, cacertFile,
diff --git a/0001-tests-Disable-iotests-like-RHEL-does.patch b/0001-tests-Disable-iotests-like-RHEL-does.patch
deleted file mode 100644
index 09706e5..0000000
--- a/0001-tests-Disable-iotests-like-RHEL-does.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From e4a112c75a02a789e7710e805f66211426087d55 Mon Sep 17 00:00:00 2001
-Message-ID: <e4a112c75a02a789e7710e805f66211426087d55.1692544104.git.crobinso@redhat.com>
-From: Cole Robinson <crobinso@redhat.com>
-Date: Sun, 20 Aug 2023 10:49:12 -0400
-Subject: [PATCH] tests: Disable iotests, like RHEL does
-Content-type: text/plain
-
-Signed-off-by: Cole Robinson <crobinso@redhat.com>
----
- tests/qemu-iotests/meson.build | 34 +++++++++++++++++-----------------
- 1 file changed, 17 insertions(+), 17 deletions(-)
-
-diff --git a/tests/qemu-iotests/meson.build b/tests/qemu-iotests/meson.build
-index 44761e1e4d..78c5836325 100644
---- a/tests/qemu-iotests/meson.build
-+++ b/tests/qemu-iotests/meson.build
-@@ -51,21 +51,21 @@ foreach format, speed: qemu_iotests_formats
-       check: true,
-   )
- 
--  foreach item: rc.stdout().strip().split()
--      args = [qemu_iotests_check_cmd,
--              '-tap', '-' + format, item,
--              '--source-dir', meson.current_source_dir(),
--              '--build-dir', meson.current_build_dir()]
--      # Some individual tests take as long as 45 seconds
--      # Bump the timeout to 3 minutes for some headroom
--      # on slow machines to minimize spurious failures
--      test('io-' + format + '-' + item,
--           python,
--           args: args,
--           depends: qemu_iotests_binaries,
--           env: qemu_iotests_env,
--           protocol: 'tap',
--           timeout: 180,
--           suite: suites)
--  endforeach
-+#   foreach item: rc.stdout().strip().split()
-+#       args = [qemu_iotests_check_cmd,
-+#               '-tap', '-' + format, item,
-+#               '--source-dir', meson.current_source_dir(),
-+#               '--build-dir', meson.current_build_dir()]
-+#       # Some individual tests take as long as 45 seconds
-+#       # Bump the timeout to 3 minutes for some headroom
-+#       # on slow machines to minimize spurious failures
-+#       test('io-' + format + '-' + item,
-+#            python,
-+#            args: args,
-+#            depends: qemu_iotests_binaries,
-+#            env: qemu_iotests_env,
-+#            protocol: 'tap',
-+#            timeout: 180,
-+#            suite: suites)
-+#   endforeach
- endforeach
--- 
-2.41.0
-
diff --git a/0003-linux-user-default-cpu-model.patch b/0003-linux-user-default-cpu-model.patch
new file mode 100644
index 0000000..87e3148
--- /dev/null
+++ b/0003-linux-user-default-cpu-model.patch
@@ -0,0 +1,33 @@
+From: Roberto Campesato <render@metalabs.org>
+diff --git a/linux-user/main.c b/linux-user/main.c
+index 0cdaf30d34..553faf1309 100644
+--- a/linux-user/main.c
++++ b/linux-user/main.c
+@@ -357,6 +357,10 @@ static void handle_arg_uname(const char *arg)
+
+ static void handle_arg_cpu(const char *arg)
+ {
++    if (cpu_model != NULL) {
++        free(cpu_model);
++        cpu_model = NULL;
++    }
+     cpu_model = strdup(arg);
+     if (cpu_model == NULL || is_help_option(cpu_model)) {
+         list_cpus();
+@@ -717,7 +721,16 @@ int main(int argc, char **argv, char **envp)
+         }
+     }
+
++    /* This is a pretty disgusting hack, in place to get a default
++       CPU that has x86_64-v2 support, required for emulating a
++       CPU that CentOS 9 is happy to run on (via binfmt_misc).  */
++#if defined(TARGET_X86_64) && !defined(__x86_64__)
++    cpu_model = strdup("Nehalem-v1");
++#elif defined(TARGET_AARCH64) && !defined(__aarch64__)
++    cpu_model = strdup("cortex-a72");
++#else
+     cpu_model = NULL;
++#endif
+
+     qemu_add_opts(&qemu_trace_opts);
+     qemu_plugin_add_opts();
diff --git a/0004-BTRFS_V2_IOCTLS.patch b/0004-BTRFS_V2_IOCTLS.patch
new file mode 100644
index 0000000..3908309
--- /dev/null
+++ b/0004-BTRFS_V2_IOCTLS.patch
@@ -0,0 +1,123 @@
+From: Roberto Campesato <render@metalabs.org>
+diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
+--- a/linux-user/ioctls.h
++++ b/linux-user/ioctls.h
+@@ -154,6 +154,10 @@
+      IOCTL(BTRFS_IOC_SNAP_CREATE, IOC_W,
+            MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_vol_args)))
+ #endif
++#ifdef BTRFS_IOC_SNAP_CREATE_V2
++     IOCTL(BTRFS_IOC_SNAP_CREATE_V2, IOC_W,
++           MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_vol_args_v2)))
++#endif
+ #ifdef BTRFS_IOC_SCAN_DEV
+      IOCTL(BTRFS_IOC_SCAN_DEV, IOC_W,
+            MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_vol_args)))
+@@ -170,14 +174,26 @@
+      IOCTL(BTRFS_IOC_RM_DEV, IOC_W,
+            MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_vol_args)))
+ #endif
++#ifdef BTRFS_IOC_RM_DEV_V2
++     IOCTL(BTRFS_IOC_RM_DEV_V2, IOC_W,
++           MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_vol_args_v2)))
++#endif
+ #ifdef BTRFS_IOC_SUBVOL_CREATE
+      IOCTL(BTRFS_IOC_SUBVOL_CREATE, IOC_W,
+            MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_vol_args)))
+ #endif
++#ifdef BTRFS_IOC_SUBVOL_CREATE_V2
++     IOCTL(BTRFS_IOC_SUBVOL_CREATE_V2, IOC_W,
++           MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_vol_args_v2)))
++#endif
+ #ifdef BTRFS_IOC_SNAP_DESTROY
+      IOCTL(BTRFS_IOC_SNAP_DESTROY, IOC_W,
+            MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_vol_args)))
+ #endif
++#ifdef BTRFS_IOC_SNAP_DESTROY_V2
++     IOCTL(BTRFS_IOC_SNAP_DESTROY_V2, IOC_W,
++           MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_vol_args_v2)))
++#endif
+ #ifdef BTRFS_IOC_INO_LOOKUP
+      IOCTL(BTRFS_IOC_INO_LOOKUP, IOC_RW,
+            MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_ino_lookup_args)))
+@@ -273,6 +289,10 @@
+      IOCTL(BTRFS_IOC_INO_LOOKUP_USER, IOC_RW,
+            MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_ino_lookup_user_args)))
+ #endif
++#ifdef BTRFS_IOC_TREE_SEARCH
++     IOCTL(BTRFS_IOC_TREE_SEARCH, IOC_RW,
++           MK_PTR(MK_STRUCT(STRUCT_btrfs_ioctl_search_args)))
++#endif
+
+ #ifdef CONFIG_USBFS
+   /* USB ioctls */
+diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
+--- a/linux-user/syscall_defs.h
++++ b/linux-user/syscall_defs.h
+@@ -966,9 +966,12 @@
+ #define TARGET_BTRFS_IOC_RM_DEV                 TARGET_IOWU(BTRFS_IOCTL_MAGIC, 11)
+ #define TARGET_BTRFS_IOC_SUBVOL_CREATE          TARGET_IOWU(BTRFS_IOCTL_MAGIC, 14)
+ #define TARGET_BTRFS_IOC_SNAP_DESTROY           TARGET_IOWU(BTRFS_IOCTL_MAGIC, 15)
++#define TARGET_BTRFS_IOC_TREE_SEARCH            TARGET_IOWRU(BTRFS_IOCTL_MAGIC, 17)
+ #define TARGET_BTRFS_IOC_INO_LOOKUP             TARGET_IOWRU(BTRFS_IOCTL_MAGIC, 18)
+ #define TARGET_BTRFS_IOC_DEFAULT_SUBVOL         TARGET_IOW(BTRFS_IOCTL_MAGIC, 19, \
+                                                            abi_ullong)
++#define TARGET_BTRFS_IOC_SNAP_CREATE_V2         TARGET_IOWU(BTRFS_IOCTL_MAGIC, 23)
++#define TARGET_BTRFS_IOC_SUBVOL_CREATE_V2       TARGET_IOWU(BTRFS_IOCTL_MAGIC, 24)
+ #define TARGET_BTRFS_IOC_SUBVOL_GETFLAGS        TARGET_IOR(BTRFS_IOCTL_MAGIC, 25, \
+                                                            abi_ullong)
+ #define TARGET_BTRFS_IOC_SUBVOL_SETFLAGS        TARGET_IOW(BTRFS_IOCTL_MAGIC, 26, \
+@@ -990,10 +993,12 @@
+ #define TARGET_BTRFS_IOC_GET_FEATURES           TARGET_IORU(BTRFS_IOCTL_MAGIC, 57)
+ #define TARGET_BTRFS_IOC_SET_FEATURES           TARGET_IOWU(BTRFS_IOCTL_MAGIC, 57)
+ #define TARGET_BTRFS_IOC_GET_SUPPORTED_FEATURES TARGET_IORU(BTRFS_IOCTL_MAGIC, 57)
++#define TARGET_BTRFS_IOC_RM_DEV_V2              TARGET_IOWU(BTRFS_IOCTL_MAGIC, 58)
+ #define TARGET_BTRFS_IOC_LOGICAL_INO_V2         TARGET_IOWRU(BTRFS_IOCTL_MAGIC, 59)
+ #define TARGET_BTRFS_IOC_GET_SUBVOL_INFO        TARGET_IORU(BTRFS_IOCTL_MAGIC, 60)
+ #define TARGET_BTRFS_IOC_GET_SUBVOL_ROOTREF     TARGET_IOWRU(BTRFS_IOCTL_MAGIC, 61)
+ #define TARGET_BTRFS_IOC_INO_LOOKUP_USER        TARGET_IOWRU(BTRFS_IOCTL_MAGIC, 62)
++#define TARGET_BTRFS_IOC_SNAP_DESTROY_V2        TARGET_IOWU(BTRFS_IOCTL_MAGIC, 63)
+ #endif
+
+ /* usb ioctls */
+diff --git a/linux-user/syscall_types.h b/linux-user/syscall_types.h
+--- a/linux-user/syscall_types.h
++++ b/linux-user/syscall_types.h
+@@ -373,6 +373,37 @@
+        MK_ARRAY(TYPE_CHAR, BTRFS_PATH_NAME_MAX + 1)) /* name */
+ #endif
+
++#if defined(BTRFS_IOC_SNAP_CREATE_V2) || \
++    defined(BTRFS_IOC_SUBVOL_CREATE_V2) || \
++    defined(BTRFS_IOC_RM_DEV_V2) || defined(BTRFS_IOC_SNAP_DESTROY_V2)
++STRUCT(btrfs_ioctl_vol_args_v2,
++       TYPE_LONGLONG, /* fd */
++       TYPE_ULONGLONG, /* transid */
++       TYPE_ULONGLONG, /* flags */
++       MK_ARRAY(TYPE_ULONGLONG, 4), /* unused */
++       MK_ARRAY(TYPE_CHAR, BTRFS_SUBVOL_NAME_MAX + 1)) /* name */
++#endif
++
++#ifdef BTRFS_IOC_TREE_SEARCH
++STRUCT(btrfs_ioctl_search_args,
++       TYPE_ULONGLONG, /* tree_id */
++       TYPE_ULONGLONG, /* min_objectid */
++       TYPE_ULONGLONG, /* max_objectid */
++       TYPE_ULONGLONG, /* min_offset */
++       TYPE_ULONGLONG, /* max_offset */
++       TYPE_ULONGLONG, /* min_transid */
++       TYPE_ULONGLONG, /* max_transid */
++       TYPE_INT,       /* min_type */
++       TYPE_INT,       /* max_type */
++       TYPE_INT,       /* nr_items */
++       TYPE_INT,       /* unused */
++       TYPE_ULONGLONG, /* unused1 */
++       TYPE_ULONGLONG, /* unused2 */
++       TYPE_ULONGLONG, /* unused3 */
++       TYPE_ULONGLONG, /* unused4 */
++       MK_ARRAY(TYPE_CHAR, BTRFS_SEARCH_ARGS_BUFSIZE)) /* buf */
++#endif
++
+ #ifdef BTRFS_IOC_GET_SUBVOL_INFO
+ STRUCT(btrfs_ioctl_timespec,
+        TYPE_ULONGLONG, /* sec */
diff --git a/2df5c1f5b014126595a26c6797089d284a3b211c.patch b/2df5c1f5b014126595a26c6797089d284a3b211c.patch
new file mode 100644
index 0000000..9de4a50
--- /dev/null
+++ b/2df5c1f5b014126595a26c6797089d284a3b211c.patch
@@ -0,0 +1,82 @@
+From 2df5c1f5b014126595a26c6797089d284a3b211c Mon Sep 17 00:00:00 2001
+From: Harsh Prateek Bora <harshpb@linux.ibm.com>
+Date: Wed, 24 Jan 2024 10:30:55 +1000
+Subject: [PATCH] ppc/spapr: Introduce SPAPR_IRQ_NR_IPIS to refer IRQ range for
+ CPU IPIs.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+spapr_irq_init currently uses existing macro SPAPR_XIRQ_BASE to refer to
+the range of CPU IPIs during initialization of nr-irqs property.
+It is more appropriate to have its own define which can be further
+reused as appropriate for correct interpretation.
+
+Suggested-by: Cedric Le Goater <clg@kaod.org>
+Reviewed-by: Cédric Le Goater <clg@kaod.org>
+Tested-by: Kowshik Jois <kowsjois@linux.ibm.com>
+Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
+Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
+---
+ hw/ppc/spapr_irq.c         |  6 ++++--
+ include/hw/ppc/spapr_irq.h | 14 +++++++++++++-
+ 2 files changed, 17 insertions(+), 3 deletions(-)
+
+diff --git a/hw/ppc/spapr_irq.c b/hw/ppc/spapr_irq.c
+index a0d1e1298e1e..97b2fc42ab03 100644
+--- a/hw/ppc/spapr_irq.c
++++ b/hw/ppc/spapr_irq.c
+@@ -23,6 +23,8 @@
+ 
+ #include "trace.h"
+ 
++QEMU_BUILD_BUG_ON(SPAPR_IRQ_NR_IPIS > SPAPR_XIRQ_BASE);
++
+ static const TypeInfo spapr_intc_info = {
+     .name = TYPE_SPAPR_INTC,
+     .parent = TYPE_INTERFACE,
+@@ -329,7 +331,7 @@ void spapr_irq_init(SpaprMachineState *spapr, Error **errp)
+         int i;
+ 
+         dev = qdev_new(TYPE_SPAPR_XIVE);
+-        qdev_prop_set_uint32(dev, "nr-irqs", smc->nr_xirqs + SPAPR_XIRQ_BASE);
++        qdev_prop_set_uint32(dev, "nr-irqs", smc->nr_xirqs + SPAPR_IRQ_NR_IPIS);
+         /*
+          * 8 XIVE END structures per CPU. One for each available
+          * priority
+@@ -356,7 +358,7 @@ void spapr_irq_init(SpaprMachineState *spapr, Error **errp)
+     }
+ 
+     spapr->qirqs = qemu_allocate_irqs(spapr_set_irq, spapr,
+-                                      smc->nr_xirqs + SPAPR_XIRQ_BASE);
++                                      smc->nr_xirqs + SPAPR_IRQ_NR_IPIS);
+ 
+     /*
+      * Mostly we don't actually need this until reset, except that not
+diff --git a/include/hw/ppc/spapr_irq.h b/include/hw/ppc/spapr_irq.h
+index c22a72c9e270..4fd2d5853d8b 100644
+--- a/include/hw/ppc/spapr_irq.h
++++ b/include/hw/ppc/spapr_irq.h
+@@ -14,9 +14,21 @@
+ #include "qom/object.h"
+ 
+ /*
+- * IRQ range offsets per device type
++ * The XIVE IRQ backend uses the same layout as the XICS backend but
++ * covers the full range of the IRQ number space. The IRQ numbers for
++ * the CPU IPIs are allocated at the bottom of this space, below 4K,
++ * to preserve compatibility with XICS which does not use that range.
++ */
++
++/*
++ * CPU IPI range (XIVE only)
+  */
+ #define SPAPR_IRQ_IPI        0x0
++#define SPAPR_IRQ_NR_IPIS    0x1000
++
++/*
++ * IRQ range offsets per device type
++ */
+ 
+ #define SPAPR_XIRQ_BASE      XICS_IRQ_BASE /* 0x1000 */
+ #define SPAPR_IRQ_EPOW       (SPAPR_XIRQ_BASE + 0x0000)
diff --git a/c4f91d7b7be76c47015521ab0109c6e998a369b0.patch b/c4f91d7b7be76c47015521ab0109c6e998a369b0.patch
new file mode 100644
index 0000000..b37288b
--- /dev/null
+++ b/c4f91d7b7be76c47015521ab0109c6e998a369b0.patch
@@ -0,0 +1,75 @@
+From c4f91d7b7be76c47015521ab0109c6e998a369b0 Mon Sep 17 00:00:00 2001
+From: Harsh Prateek Bora <harshpb@linux.ibm.com>
+Date: Wed, 24 Jan 2024 10:30:55 +1000
+Subject: [PATCH] ppc/spapr: Initialize max_cpus limit to SPAPR_IRQ_NR_IPIS.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Initialize the machine specific max_cpus limit as per the maximum range
+of CPU IPIs available. Keeping between 4096 to 8192 will throw IRQ not
+free error due to XIVE/XICS limitation and keeping beyond 8192 will hit
+assert in tcg_region_init or spapr_xive_claim_irq.
+
+Logs:
+
+Without patch fix:
+
+[root@host build]# qemu-system-ppc64 -accel tcg -smp 10,maxcpus=4097
+qemu-system-ppc64: IRQ 4096 is not free
+[root@host build]#
+
+On LPAR:
+[root@host build]# qemu-system-ppc64 -accel tcg -smp 10,maxcpus=8193
+**
+ERROR:../tcg/region.c:774:tcg_region_init: assertion failed:
+(region_size >= 2 * page_size)
+Bail out! ERROR:../tcg/region.c:774:tcg_region_init: assertion failed:
+(region_size >= 2 * page_size)
+Aborted (core dumped)
+[root@host build]#
+
+On x86:
+[root@host build]# qemu-system-ppc64 -accel tcg -smp 10,maxcpus=8193
+qemu-system-ppc64: ../hw/intc/spapr_xive.c:596: spapr_xive_claim_irq:
+Assertion `lisn < xive->nr_irqs' failed.
+Aborted (core dumped)
+[root@host build]#
+
+With patch fix:
+[root@host build]# qemu-system-ppc64 -accel tcg -smp 10,maxcpus=4097
+qemu-system-ppc64: Invalid SMP CPUs 4097. The max CPUs supported by
+machine 'pseries-8.2' is 4096
+[root@host build]#
+
+
+Reported-by: Kowshik Jois <kowsjois@linux.ibm.com>
+Tested-by: Kowshik Jois <kowsjois@linux.ibm.com>
+Reviewed-by: Cédric Le Goater <clg@kaod.org>
+Signed-off-by: Harsh Prateek Bora <harshpb@linux.ibm.com>
+Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
+---
+ hw/ppc/spapr.c | 9 +++------
+ 1 file changed, 3 insertions(+), 6 deletions(-)
+
+diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
+index 0d72d286d80f..0028ce0b673b 100644
+--- a/hw/ppc/spapr.c
++++ b/hw/ppc/spapr.c
+@@ -4639,13 +4639,10 @@ static void spapr_machine_class_init(ObjectClass *oc, void *data)
+     mc->block_default_type = IF_SCSI;
+ 
+     /*
+-     * Setting max_cpus to INT32_MAX. Both KVM and TCG max_cpus values
+-     * should be limited by the host capability instead of hardcoded.
+-     * max_cpus for KVM guests will be checked in kvm_init(), and TCG
+-     * guests are welcome to have as many CPUs as the host are capable
+-     * of emulate.
++     * While KVM determines max cpus in kvm_init() using kvm_max_vcpus(),
++     * In TCG the limit is restricted by the range of CPU IPIs available.
+      */
+-    mc->max_cpus = INT32_MAX;
++    mc->max_cpus = SPAPR_IRQ_NR_IPIS;
+ 
+     mc->no_parallel = 1;
+     mc->default_boot_order = "";
diff --git a/gpgkey-CEACC9E15534EBABB82D3FA03353C9CEF108B584.gpg b/gpgkey-CEACC9E15534EBABB82D3FA03353C9CEF108B584.gpg
new file mode 100644
index 0000000..a2590c0
Binary files /dev/null and b/gpgkey-CEACC9E15534EBABB82D3FA03353C9CEF108B584.gpg differ
diff --git a/qemu-fifreeze-fithaw.patch b/qemu-fifreeze-fithaw.patch
new file mode 100644
index 0000000..1d639a7
--- /dev/null
+++ b/qemu-fifreeze-fithaw.patch
@@ -0,0 +1,210 @@
+From qemu-devel-bounces+rjones=redhat.com@nongnu.org  Tue Feb 20 14:15:07 2024
+X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on
+	rhmail.home.annexia.org
+X-Spam-Level: 
+X-Spam-Status: No, score=-3.6 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED,
+	FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,
+	T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.2
+Delivered-To: rjones@gapps.redhat.com
+Received: from imap.gmail.com [2a00:1450:400c:c06::6c]
+	by rhmail.home.annexia.org with IMAP (fetchmail-6.3.24)
+	for <rjones@localhost> (single-drop); Tue, 20 Feb 2024 14:15:07 +0000 (GMT)
+Received: by 2002:adf:9c85:0:b0:337:c4af:7eda with SMTP id d5csp1377865wre;
+ Tue, 20 Feb 2024 06:14:45 -0800 (PST)
+X-Forwarded-Encrypted: i=2;
+ AJvYcCVmEOlyyvvd2pjxJlVqmm6wAsFvP2QS6RrV8WHdcPQ9BbSQtwkd4h6dvrOsn7U4WKwJ+S9i3pICvKhQ6p2IG/C63ey7jQaX6g==
+X-Google-Smtp-Source: AGHT+IE5mSiEO9H5JEkHNlHfhZDS2s9/kx/Heg/BJJ4bRe1DByou2O4YqVcehEElFPcfnv1EbTzP
+X-Received: by 2002:ac8:7e82:0:b0:42e:1a0c:5561 with SMTP id
+ w2-20020ac87e82000000b0042e1a0c5561mr4869415qtj.11.1708438485118; Tue, 20 Feb
+ 2024 06:14:45 -0800 (PST)
+ARC-Seal: i=1; a=rsa-sha256; t=1708438485; cv=none; d=google.com;
+ s=arc-20160816;
+ b=ey2nB0Hz7p8/LRoN4jZjtpNuGZQ63SBhaAnxzcDl/T2RrxPzHh65rz1zmLdWzVCLkQ
+ v+yYlKkQFU8NNp3UT4S4zYwfeGSE1kFImALTRCMrWHrkw9LZZZb2BeEsiziU3hlaWROV
+ UVjYZdUHzbALZboflhpU0jK2UBurjafvHopQR7okuWukM2MkehE707uhOPscNCgZG8f9
+ ZtrZX2StAQhzGbE+rGPka9c6AdsKBWYcVUbAe//oQeRl1NCUorQedrseU25E1dcobqwl
+ 80kRNnHYH+GOx7inmTEi8W2DSWb3g48Q0EEVWc/sfDB/f2t6PO4sELzmSvhytswBISkg D57A==
+ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;
+ s=arc-20160816;
+ h=content-transfer-encoding:sender:errors-to:list-subscribe:list-help
+ :list-post:list-archive:list-unsubscribe:list-id:precedence
+ :mime-version:message-id:date:subject:cc:to:from:delivered-to;
+ bh=uNCdCIQzg/12W/RrXAVFQ1Isw/BMjvNQW4Y14ZuF5vg=;
+ fh=k0ip+oilfdxldYSElE+D70uElArHhwV8D0y78HTEik8=;
+ b=U8UgVOefnhiU8Ata8X00Xvx9Y6fexE3GSwQioOOaRIx9xhn1c0xjhLQ4N5DB19Cbt2
+ U+lqbgtVw4xI915hyyC1NRT3w/ImfJLikpDpzXLpmbJCOMYj0J7qkTFPsPXBLMx/fDi8
+ Ctg2koPP9m5EG4cAEIacP85/2vee28uKUFbdeB/B8DIsSIQYWGskfMNaqv2NOvW9O4Fj
+ qyhK2YEImZY2KK3xW48LAtPW/oqqvfmtYmJn40otnhiU6eErtS71NJmccE1lca4P7xil
+ dtz0Rqc3C8iTH8eayxAeT7xD4AFZznehPPWbMxK3C5kecZ8bnceNw5cmQqfvQRmR0yGB bNKA==;
+ dara=google.com
+ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain
+ of qemu-devel-bounces+rjones=redhat.com@nongnu.org designates 209.51.188.17
+ as permitted sender)
+ smtp.mailfrom="qemu-devel-bounces+rjones=redhat.com@nongnu.org"
+Return-Path: <qemu-devel-bounces+rjones=redhat.com@nongnu.org>
+Received: from us-smtp-inbound-delivery-1.mimecast.com
+ (us-smtp-delivery-1.mimecast.com. [205.139.110.120]) by mx.google.com with
+ ESMTPS id
+ m9-20020ac86889000000b0042c2147b5d1si8208493qtq.474.2024.02.20.06.14.44 for
+ <rjones@gapps.redhat.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384
+ bits=256/256); Tue, 20 Feb 2024 06:14:45 -0800 (PST)
+Received-SPF: pass (google.com: domain of
+ qemu-devel-bounces+rjones=redhat.com@nongnu.org designates 209.51.188.17 as
+ permitted sender) client-ip=209.51.188.17;
+Authentication-Results: mx.google.com; spf=pass (google.com: domain of
+ qemu-devel-bounces+rjones=redhat.com@nongnu.org designates 209.51.188.17 as
+ permitted sender)
+ smtp.mailfrom="qemu-devel-bounces+rjones=redhat.com@nongnu.org"
+Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com
+ [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS
+ (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id
+ us-mta-656-0vwFszxbMwexl4X3OxB3MQ-1; Tue, 20 Feb 2024 09:14:43 -0500
+X-MC-Unique: 0vwFszxbMwexl4X3OxB3MQ-1
+Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.rdu2.redhat.com
+ [10.11.54.3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256
+ bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest
+ SHA256) (No client certificate requested) by mimecast-mx02.redhat.com
+ (Postfix) with ESMTPS id 792F8863732 for <rjones@gapps.redhat.com>; Tue, 20
+ Feb 2024 14:14:43 +0000 (UTC)
+Received: by smtp.corp.redhat.com (Postfix) id 761ED11422B9; Tue, 20 Feb 2024
+ 14:14:43 +0000 (UTC)
+Delivered-To: rjones@redhat.com
+Received: from mimecast-mx02.redhat.com
+ (mimecast10.extmail.prod.ext.rdu2.redhat.com [10.11.55.26]) by
+ smtp.corp.redhat.com (Postfix) with ESMTPS id 3BBF311422B4 for
+ <rjones@redhat.com>; Tue, 20 Feb 2024 14:14:43 +0000 (UTC)
+Received: from us-smtp-inbound-delivery-1.mimecast.com
+ (us-smtp-delivery-1.mimecast.com [207.211.31.120]) (using TLSv1.3 with cipher
+ TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature
+ RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested)
+ by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 1EC691C54037 for
+ <rjones@redhat.com>; Tue, 20 Feb 2024 14:14:43 +0000 (UTC)
+Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by
+ relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2,
+ cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id
+ us-mta-467-K7PF_hWUMIuYn6nNX_NhGQ-1; Tue, 20 Feb 2024 09:14:41 -0500
+X-MC-Unique: K7PF_hWUMIuYn6nNX_NhGQ-1
+Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with
+ esmtp (Exim 4.90_1) (envelope-from <qemu-devel-bounces@nongnu.org>) id
+ 1rcQsH-00027z-CN; Tue, 20 Feb 2024 09:13:33 -0500
+Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with
+ esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from
+ <michael.vogt@gmail.com>) id 1rcNp8-0004k1-C7 for qemu-devel@nongnu.org; Tue,
+ 20 Feb 2024 05:58:06 -0500
+Received: from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a]) by
+ eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim
+ 4.90_1) (envelope-from <michael.vogt@gmail.com>) id 1rcNp6-0004zw-Uh for
+ qemu-devel@nongnu.org; Tue, 20 Feb 2024 05:58:06 -0500
+Received: by mail-wm1-x32a.google.com with SMTP id
+ 5b1f17b1804b1-412698cdd77so8973055e9.1 for <qemu-devel@nongnu.org>; Tue, 20
+ Feb 2024 02:58:04 -0800 (PST)
+X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net;
+ s=20230601; t=1708426683; x=1709031483;
+ h=content-transfer-encoding:mime-version:message-id:date:subject:cc
+ :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to;
+ bh=uNCdCIQzg/12W/RrXAVFQ1Isw/BMjvNQW4Y14ZuF5vg=;
+ b=anLCtG+2+69Viw2YFg93vXg3ZBx/82tUVKrUPKG0+3CgiM2BmSukRsME1L+upQkYAV
+ Llc9ODBvHts9RRZU1MeybdSSRMnAHrXrIJ6HZP30K1cHOxyXB7DOp27hCfOelFBBffpM
+ IVwjaKn+XnJ95IUMwMrhZ2T5Mcicw8tbRkCyDQwqrIpfpGWpOEq2HkEbe9T6z143sCBZ
+ XYDpDvFRQauxu+SUoVeQjDxt1gm0XHFzwdGH/QjQ/2YDwkkB/yUtlaDHgXafwnzwow/8
+ uHvdTZ9neIWDCUHEiHqRg9tHudOy1VhxH6T4jxzakzyTEit+mh2qB05/Yg2brj+hBo1u SaDg==
+X-Gm-Message-State: AOJu0YxyvxpfZhEbdDWqHqfThgFNUwkmqMXvDaxwAQH7HqdpGm5oVEbJ
+ rzstVAif1eTUKOE4NOnCiMyJ9q/vEtd63Er7imeDi7lVutB0bby6fZFsj8mI
+X-Received: by 2002:a05:600c:4f43:b0:411:e86d:85a3 with SMTP id
+ m3-20020a05600c4f4300b00411e86d85a3mr16304898wmq.16.1708426682414; Tue, 20
+ Feb 2024 02:58:02 -0800 (PST)
+Received: from top.fritz.box (p5dd94bc2.dip0.t-ipconnect.de. [93.217.75.194])
+ by smtp.gmail.com with ESMTPSA id
+ co18-20020a0560000a1200b0033d4c3b0beesm7032427wrb.19.2024.02.20.02.58.01
+ (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Feb 2024
+ 02:58:02 -0800 (PST)
+From: Michael Vogt <michael.vogt@gmail.com>
+To: qemu-devel@nongnu.org
+Cc: Michael Vogt <michael.vogt@gmail.com>
+Subject: [PATCH] linux-user: Add FIFREEZE and FITHAW ioctls
+Date: Tue, 20 Feb 2024 11:57:21 +0100
+Message-ID: <20240220105726.8852-1-michael.vogt@gmail.com>
+MIME-Version: 1.0
+X-Spam_score_int: -20
+X-Spam_score: -2.1
+X-Spam_bar: --
+X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
+ DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
+ RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001,
+ T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
+X-Spam_action: no action
+X-Mailman-Approved-At: Tue, 20 Feb 2024 09:13:26 -0500
+X-BeenThere: qemu-devel@nongnu.org
+X-Mailman-Version: 2.1.29
+Precedence: list
+List-Id: <qemu-devel.nongnu.org>
+List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>,
+ <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>
+List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel>
+List-Post: <mailto:qemu-devel@nongnu.org>
+List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help>
+List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>,
+ <mailto:qemu-devel-request@nongnu.org?subject=subscribe>
+Errors-To: qemu-devel-bounces+rjones=redhat.com@nongnu.org
+Sender: qemu-devel-bounces+rjones=redhat.com@nongnu.org
+X-Mimecast-Impersonation-Protect: Policy=CLT - Impersonation Protection
+ Definition;Similar Internal Domain=false;Similar Monitored External
+ Domain=false;Custom External Domain=false;Mimecast External
+ Domain=false;Newly Observed Domain=false;Internal User Name=false;Custom
+ Display Name List=false;Reply-to Address Mismatch=false;Targeted Threat
+ Dictionary=false;Mimecast Threat Dictionary=false;Custom Threat
+ Dictionary=false
+X-Mimecast-Bulk-Signature: yes
+X-Mimecast-Spam-Signature: bulk
+X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.3
+X-Mimecast-Spam-Score: 0
+X-Mimecast-Originator: gmail.com
+Content-Transfer-Encoding: 8bit
+Content-Type: text/plain; charset="US-ASCII"; x-default=true
+Status: RO
+Content-Length: 1327
+Lines: 42
+
+Add missing FIFREEZE and FITHAW ioctls.
+
+Signed-off-by: Michael Vogt <michael.vogt@gmail.com>
+---
+ linux-user/ioctls.h       | 6 ++++++
+ linux-user/syscall_defs.h | 3 +++
+ 2 files changed, 9 insertions(+)
+
+diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
+index 071f7ca253..1aec9d5836 100644
+--- a/linux-user/ioctls.h
++++ b/linux-user/ioctls.h
+@@ -134,6 +134,12 @@
+      IOCTL(FICLONE, IOC_W, TYPE_INT)
+      IOCTL(FICLONERANGE, IOC_W, MK_PTR(MK_STRUCT(STRUCT_file_clone_range)))
+ #endif
++#ifdef FIFREEZE
++     IOCTL(FIFREEZE, IOC_W | IOC_R, TYPE_INT)
++#endif
++#ifdef FITHAW
++     IOCTL(FITHAW, IOC_W | IOC_R, TYPE_INT)
++#endif
+ 
+      IOCTL(FIGETBSZ, IOC_R, MK_PTR(TYPE_LONG))
+ #ifdef CONFIG_FIEMAP
+diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
+index 77ba343c85..744fda599e 100644
+--- a/linux-user/syscall_defs.h
++++ b/linux-user/syscall_defs.h
+@@ -943,6 +943,9 @@ struct target_rtc_pll_info {
+ #define TARGET_FICLONE    TARGET_IOW(0x94, 9, abi_int)
+ #define TARGET_FICLONERANGE TARGET_IOW(0x94, 13, struct file_clone_range)
+ 
++#define TARGET_FIFREEZE    TARGET_IOWR('X', 119, abi_int)
++#define TARGET_FITHAW    TARGET_IOWR('X', 120, abi_int)
++
+ /*
+  * Note that the ioctl numbers for FS_IOC_<GET|SET><FLAGS|VERSION>
+  * claim type "long" but the actual type used by the kernel is "int".
+-- 
+2.43.0
+
+
diff --git a/qemu.spec b/qemu.spec
index bca4897..94cd22b 100644
--- a/qemu.spec
+++ b/qemu.spec
@@ -1,3 +1,4 @@
+
 # Provide a way to skip tests via rpmbuild `--without`
 # This makes it easier to skip tests in copr repos, where
 # the qemu test suite is historically flakey
@@ -103,6 +104,9 @@
 %ifarch x86_64 %{power64}
 %global have_pmem 1
 %endif
+%if 0%{?rhel} >= 10
+%global have_pmem 0
+%endif
 
 %global have_jack 1
 %if 0%{?rhel}
@@ -115,11 +119,7 @@
 %global have_dbus_display 0
 %endif
 
-%global have_libblkio 0
-# TODO(Hyperscale): enable when RHBZ#2232766 is resolved
-%if 0%{?fedora} >= 37
 %global have_libblkio 1
-%endif
 
 %global have_gvnc_devel %{defined fedora}
 %global have_sdl_image %{defined fedora}
@@ -162,6 +162,13 @@
 %define have_libcacard 0
 %endif
 
+%define have_rutabaga_gfx 0
+%if 0%{?fedora} >= 40
+%ifarch x86_64 aarch64
+%define have_rutabaga_gfx 1
+%endif
+%endif
+
 # LTO still has issues with qemu on armv7hl and aarch64
 # https://bugzilla.redhat.com/show_bug.cgi?id=1952483
 %global _lto_cflags %{nil}
@@ -242,6 +249,16 @@
 %define requires_device_display_virtio_gpu_pci_gl %{nil}
 %endif
 
+%if %{have_rutabaga_gfx}
+%define requires_device_display_virtio_gpu_rutabaga Requires: %{name}-device-display-virtio-gpu-rutabaga = %{evr}
+%define requires_device_display_virtio_gpu_pci_rutabaga Requires: %{name}-device-display-virtio-gpu-pci-rutabaga = %{evr}
+%define requires_device_display_virtio_vga_rutabaga Requires: %{name}-device-display-virtio-vga-rutabaga = %{evr}
+%else
+%define requires_device_display_virtio_gpu_rutabaga %{nil}
+%define requires_device_display_virtio_gpu_pci_rutabaga %{nil}
+%define requires_device_display_virtio_vga_rutabaga %{nil}
+%endif
+
 %if %{have_jack}
 %define jack_drv jack,
 %define requires_audio_jack Requires: %{name}-audio-jack = %{evr}
@@ -308,10 +325,13 @@
 %{requires_device_display_virtio_gpu} \
 %{requires_device_display_virtio_gpu_ccw} \
 %{requires_device_display_virtio_gpu_gl} \
+%{requires_device_display_virtio_gpu_rutabaga} \
 %{requires_device_display_virtio_gpu_pci} \
 %{requires_device_display_virtio_gpu_pci_gl} \
+%{requires_device_display_virtio_gpu_pci_rutabaga} \
 %{requires_device_display_virtio_vga} \
 %{requires_device_display_virtio_vga_gl} \
+%{requires_device_display_virtio_vga_rutabaga} \
 %{requires_device_usb_host} \
 %{requires_device_usb_redirect} \
 %{requires_device_usb_smartcard} \
@@ -332,27 +352,62 @@ Obsoletes: %{name}-system-unicore32-core <= %{epoch}:%{version}-%{release} \
 Obsoletes: sgabios-bin <= 1:0.20180715git-10.fc38
 
 # Release candidate version tracking
-# global rcver rc4
+#global rcver rc2
 %if 0%{?rcver:1}
 %global rcrel .%{rcver}
 %global rcstr -%{rcver}
 %endif
 
 # To prevent rpmdev-bumpspec breakage
-%global baserelease 2
+%global baserelease 1
 
 # Hyperscale release
 %global hsrel .1
 
 Summary: QEMU is a FAST! processor emulator
 Name: qemu
-Version: 8.1.0
+Version: 8.2.2
 Release: %{baserelease}%{?rcrel}%{?hsrel}%{?dist}
 Epoch: 2
-License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND FSFAP AND GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-2.0-or-later with GCC-exception-2.0 exception AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND MIT AND public-domain AND CC-BY-3.0
+License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND FSFAP AND GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-2.0-or-later WITH GCC-exception-2.0 AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND MIT AND LicenseRef-Fedora-Public-Domain AND CC-BY-3.0
 URL: http://www.qemu.org/
 
-Source0: http://wiki.qemu-project.org/download/%{name}-%{version}%{?rcstr}.tar.xz
+%global dlurl https://download.qemu.org
+
+Source0: %{dlurl}/%{name}-%{version}%{?rcstr}.tar.xz
+Source1: %{dlurl}/%{name}-%{version}%{?rcstr}.tar.xz.sig
+Source2: gpgkey-CEACC9E15534EBABB82D3FA03353C9CEF108B584.gpg
+
+# Fix pvh.img ld build failure on fedora rawhide
+# Not yet submitted upstream in this form. Original attempt is here:
+# https://patchwork.kernel.org/project/qemu-devel/patch/20231128143647.847668-1-crobinso@redhat.com/
+Patch: 0001-pc-bios-optionrom-Fix-pvh.img-ld-build-failure-on-fe.patch
+
+# Fix user-emulation of FIFREEZE and FITHAW ioctls
+# Posted upstream 20-02-2024
+# https://lists.nongnu.org/archive/html/qemu-devel/2024-02/msg03971.html
+Patch: qemu-fifreeze-fithaw.patch
+
+# ppc/spapr: Initialize max_cpus limit to SPAPR_IRQ_NR_IPIS
+# https://bugzilla.redhat.com/show_bug.cgi?id=2265982
+Patch: https://github.com/qemu/qemu/commit/2df5c1f5b014126595a26c6797089d284a3b211c.patch
+Patch: https://github.com/qemu/qemu/commit/c4f91d7b7be76c47015521ab0109c6e998a369b0.patch
+
+# fb-only patches.
+%if 0%{?facebook}
+# internal hack #1: skip validation of all CA certs in the provided bundle including
+# those not in the chain of trust. evaluating rework for potential upstreaming.
+Patch: 0001-relax-CA-certs-checks.patch
+
+# internal hack #2: when using qemu-user from binfmt_misc we cannot pass parameters to select
+# which cpu to use. changing the default to use the oldest cpu supported by CentOS 9.
+# evaluating if an environment variable could be used for this
+Patch: 0003-linux-user-default-cpu-model.patch
+
+# Add new btrfs *_v2 ioctls for user-level emulation.
+# will be reworked for potential upstreaming.
+Patch: 0004-BTRFS_V2_IOCTLS.patch
+%endif
 
 Source10: qemu-guest-agent.service
 Source11: 99-qemu-guest-agent.rules
@@ -365,8 +420,7 @@ Source30: kvm-s390x.conf
 Source31: kvm-x86.conf
 Source36: README.tests
 
-Patch0001: 0001-tests-Disable-iotests-like-RHEL-does.patch
-
+BuildRequires: gnupg2
 BuildRequires: meson >= %{meson_version}
 BuildRequires: bison
 BuildRequires: flex
@@ -520,7 +574,16 @@ BuildRequires: SDL2_image-devel
 # Used by vnc-display-test
 BuildRequires: pkgconfig(gvnc-1.0)
 %endif
+# Used by pipewire audio backend
 BuildRequires: pipewire-devel
+# Used by cryptodev-backend-lkcf
+BuildRequires: keyutils-libs-devel
+# Used by net AF_XDP
+BuildRequires: libxdp-devel
+# used by virtio-gpu-rutabaga
+%if %{have_rutabaga_gfx}
+BuildRequires: rutabaga-gfx-ffi-devel
+%endif
 
 %if %{user_static}
 BuildRequires: glibc-static glib2-static zlib-static
@@ -834,13 +897,24 @@ This package provides the virtio-gpu display device for QEMU.
 %package device-display-virtio-gpu-gl
 Summary: QEMU virtio-gpu-gl display device
 Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name}-device-display-virtio-gpu%{?_isa} = %{epoch}:%{version}-%{release}
 %description device-display-virtio-gpu-gl
 This package provides the virtio-gpu-gl display device for QEMU.
 %endif
 
+%if %{have_rutabaga_gfx}
+%package device-display-virtio-gpu-rutabaga
+Summary: QEMU virtio-gpu-rutabaga display device
+Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name}-device-display-virtio-gpu%{?_isa} = %{epoch}:%{version}-%{release}
+%description device-display-virtio-gpu-rutabaga
+This package provides the virtio-gpu-rutabaga display device for QEMU.
+%endif
+
 %package device-display-virtio-gpu-pci
 Summary: QEMU virtio-gpu-pci display device
 Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name}-device-display-virtio-gpu%{?_isa} = %{epoch}:%{version}-%{release}
 %description device-display-virtio-gpu-pci
 This package provides the virtio-gpu-pci display device for QEMU.
 
@@ -848,28 +922,52 @@ This package provides the virtio-gpu-pci display device for QEMU.
 %package device-display-virtio-gpu-pci-gl
 Summary: QEMU virtio-gpu-pci-gl display device
 Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name}-device-display-virtio-gpu-pci%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name}-device-display-virtio-gpu-gl%{?_isa} = %{epoch}:%{version}-%{release}
 %description device-display-virtio-gpu-pci-gl
 This package provides the virtio-gpu-pci-gl display device for QEMU.
 %endif
 
+%if %{have_rutabaga_gfx}
+%package device-display-virtio-gpu-pci-rutabaga
+Summary: QEMU virtio-gpu-pci-rutabaga display device
+Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name}-device-display-virtio-gpu-pci%{?_isa} = %{epoch}:%{version}-%{release}
+%description device-display-virtio-gpu-pci-rutabaga
+This package provides the virtio-gpu-pci-rutabaga display device for QEMU.
+%endif
+
 %package device-display-virtio-gpu-ccw
 Summary: QEMU virtio-gpu-ccw display device
 Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name}-device-display-virtio-gpu%{?_isa} = %{epoch}:%{version}-%{release}
 %description device-display-virtio-gpu-ccw
 This package provides the virtio-gpu-ccw display device for QEMU.
 
 %package device-display-virtio-vga
 Summary: QEMU virtio-vga display device
 Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name}-device-display-virtio-gpu%{?_isa} = %{epoch}:%{version}-%{release}
 %description device-display-virtio-vga
 This package provides the virtio-vga display device for QEMU.
 
 %package device-display-virtio-vga-gl
 Summary: QEMU virtio-vga-gl display device
 Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name}-device-display-virtio-vga%{?_isa} = %{epoch}:%{version}-%{release}
 %description device-display-virtio-vga-gl
 This package provides the virtio-vga-gl display device for QEMU.
 
+%if %{have_rutabaga_gfx}
+%package device-display-virtio-vga-rutabaga
+Summary: QEMU virtio-vga-rutabaga display device
+Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: %{name}-device-display-virtio-vga%{?_isa} = %{epoch}:%{version}-%{release}
+%description device-display-virtio-vga-rutabaga
+This package provides the virtio-vga-rutabaga display device for QEMU.
+%endif
+
+
 %package device-usb-host
 Summary: QEMU usb host device
 Requires: %{name}-common%{?_isa} = %{epoch}:%{version}-%{release}
@@ -1442,6 +1540,8 @@ This package provides the QEMU system emulator for Xtensa boards.
 
 
 %prep
+gpgv2 --keyring %{SOURCE2} %{SOURCE1} %{SOURCE0}
+
 %autosetup -n qemu-%{version}%{?rcstr} -S git_am
 
 %global qemu_kvm_build qemu_kvm_build
@@ -1454,6 +1554,7 @@ mkdir -p %{static_builddir}
 %build
 %define disable_everything         \\\
   --audio-drv-list=                \\\
+  --disable-af-xdp                 \\\
   --disable-alsa                   \\\
   --disable-attr                   \\\
   --disable-auth-pam               \\\
@@ -1500,7 +1601,7 @@ mkdir -p %{static_builddir}
   --disable-gtk-clipboard          \\\
   --disable-guest-agent            \\\
   --disable-guest-agent-msi        \\\
-  --disable-hax                    \\\
+  --disable-hv-balloon             \\\
   --disable-hvf                    \\\
   --disable-iconv                  \\\
   --disable-jack                   \\\
@@ -1508,6 +1609,7 @@ mkdir -p %{static_builddir}
   --disable-l2tpv3                 \\\
   --disable-libdaxctl              \\\
   --disable-libdw                  \\\
+  --disable-libkeyutils            \\\
   --disable-libiscsi               \\\
   --disable-libnfs                 \\\
   --disable-libpmem                \\\
@@ -1537,13 +1639,17 @@ mkdir -p %{static_builddir}
   --disable-parallels              \\\
   --disable-pie                    \\\
   --disable-pipewire               \\\
+  --disable-pixman                 \\\
+  --disable-plugins                \\\
   --disable-pvrdma                 \\\
   --disable-qcow1                  \\\
   --disable-qed                    \\\
   --disable-qom-cast-debug         \\\
   --disable-rbd                    \\\
   --disable-rdma                   \\\
+  --disable-relocatable            \\\
   --disable-replication            \\\
+  --disable-rutabaga-gfx           \\\
   --disable-rng-none               \\\
   --disable-safe-stack             \\\
   --disable-sanitizers             \\\
@@ -1642,6 +1748,7 @@ run_configure \
 %if %{defined block_drivers_ro_list}
   --block-drv-ro-whitelist=%{block_drivers_ro_list} \
 %endif
+  --enable-af-xdp \
   --enable-alsa \
   --enable-attr \
 %ifarch %{ix86} x86_64
@@ -1699,9 +1806,11 @@ run_configure \
   --enable-pa \
   --enable-pie \
   --enable-pipewire \
+  --enable-pixman \
 %if %{have_block_rbd}
   --enable-rbd \
 %endif
+  --enable-relocatable \
 %if %{have_librdma}
   --enable-rdma \
 %endif
@@ -1747,8 +1856,10 @@ run_configure \
   --enable-glusterfs \
 %endif
   --enable-gtk \
+  --enable-hv-balloon \
   --enable-libdaxctl \
   --enable-libdw \
+  --enable-libkeyutils \
 %if %{have_block_nfs}
   --enable-libnfs \
 %endif
@@ -1766,6 +1877,9 @@ run_configure \
   --enable-qed \
   --enable-qom-cast-debug \
   --enable-replication \
+%if %{have_rutabaga_gfx}
+  --enable-rutabaga-gfx \
+%endif
   --enable-sdl \
 %if %{have_sdl_image}
   --enable-sdl-image \
@@ -1825,6 +1939,9 @@ pushd %{static_builddir}
 run_configure \
   --enable-attr \
   --enable-linux-user \
+%ifnarch %{power64}
+  --enable-pie \
+%endif
   --enable-tcg \
   --disable-install-blobs \
   --static
@@ -2030,12 +2147,18 @@ rm -rf %{static_buildroot}
 
 
 %check
+# Disable iotests. RHEL has done this forever, and these
+# tests have been flakey in the past
+export MTESTARGS="--no-suite block"
+
 %if %{with check}
 %if !%{tools_only}
 
 pushd %{qemu_kvm_build}
 echo "Testing %{name}-build"
-# 2022-06: ppc64le random qtest segfaults with no discernable pattern
+# ppc64le random qtest segfaults with no discernable pattern
+#   Last check: 2023-10
+#   Added: 2022-06
 %ifnarch %{power64}
 %make_build check
 %endif
@@ -2338,18 +2461,30 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files device-display-virtio-gpu-gl
 %{_libdir}/%{name}/hw-display-virtio-gpu-gl.so
 %endif
+%if %{have_rutabaga_gfx}
+%files device-display-virtio-gpu-rutabaga
+%{_libdir}/%{name}/hw-display-virtio-gpu-rutabaga.so
+%endif
 %files device-display-virtio-gpu-pci
 %{_libdir}/%{name}/hw-display-virtio-gpu-pci.so
 %if %{have_virgl}
 %files device-display-virtio-gpu-pci-gl
 %{_libdir}/%{name}/hw-display-virtio-gpu-pci-gl.so
 %endif
+%if %{have_rutabaga_gfx}
+%files device-display-virtio-gpu-pci-rutabaga
+%{_libdir}/%{name}/hw-display-virtio-gpu-pci-rutabaga.so
+%endif
 %files device-display-virtio-gpu-ccw
 %{_libdir}/%{name}/hw-s390x-virtio-gpu-ccw.so
 %files device-display-virtio-vga
 %{_libdir}/%{name}/hw-display-virtio-vga.so
 %files device-display-virtio-vga-gl
 %{_libdir}/%{name}/hw-display-virtio-vga-gl.so
+%if %{have_rutabaga_gfx}
+%files device-display-virtio-vga-rutabaga
+%{_libdir}/%{name}/hw-display-virtio-vga-rutabaga.so
+%endif
 %files device-usb-host
 %{_libdir}/%{name}/hw-usb-host.so
 %files device-usb-redirect
@@ -2426,26 +2561,111 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %{_bindir}/qemu-xtensa
 %{_bindir}/qemu-xtensaeb
 
-%{_datadir}/systemtap/tapset/qemu-i386*.stp
-%{_datadir}/systemtap/tapset/qemu-x86_64*.stp
-%{_datadir}/systemtap/tapset/qemu-aarch64*.stp
-%{_datadir}/systemtap/tapset/qemu-alpha*.stp
-%{_datadir}/systemtap/tapset/qemu-arm*.stp
-%{_datadir}/systemtap/tapset/qemu-cris*.stp
-%{_datadir}/systemtap/tapset/qemu-hppa*.stp
-%{_datadir}/systemtap/tapset/qemu-hexagon*.stp
-%{_datadir}/systemtap/tapset/qemu-loongarch64*.stp
-%{_datadir}/systemtap/tapset/qemu-m68k*.stp
-%{_datadir}/systemtap/tapset/qemu-microblaze*.stp
-%{_datadir}/systemtap/tapset/qemu-mips*.stp
-%{_datadir}/systemtap/tapset/qemu-nios2*.stp
-%{_datadir}/systemtap/tapset/qemu-or1k*.stp
-%{_datadir}/systemtap/tapset/qemu-ppc*.stp
-%{_datadir}/systemtap/tapset/qemu-riscv*.stp
-%{_datadir}/systemtap/tapset/qemu-s390x*.stp
-%{_datadir}/systemtap/tapset/qemu-sh4*.stp
-%{_datadir}/systemtap/tapset/qemu-sparc*.stp
-%{_datadir}/systemtap/tapset/qemu-xtensa*.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64-log.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64_be.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64_be-log.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64_be-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-alpha.stp
+%{_datadir}/systemtap/tapset/qemu-alpha-log.stp
+%{_datadir}/systemtap/tapset/qemu-alpha-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-armeb.stp
+%{_datadir}/systemtap/tapset/qemu-armeb-log.stp
+%{_datadir}/systemtap/tapset/qemu-armeb-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-arm.stp
+%{_datadir}/systemtap/tapset/qemu-arm-log.stp
+%{_datadir}/systemtap/tapset/qemu-arm-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-cris.stp
+%{_datadir}/systemtap/tapset/qemu-cris-log.stp
+%{_datadir}/systemtap/tapset/qemu-cris-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-hexagon.stp
+%{_datadir}/systemtap/tapset/qemu-hexagon-log.stp
+%{_datadir}/systemtap/tapset/qemu-hexagon-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-hppa.stp
+%{_datadir}/systemtap/tapset/qemu-hppa-log.stp
+%{_datadir}/systemtap/tapset/qemu-hppa-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-i386.stp
+%{_datadir}/systemtap/tapset/qemu-i386-log.stp
+%{_datadir}/systemtap/tapset/qemu-i386-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-loongarch64.stp
+%{_datadir}/systemtap/tapset/qemu-loongarch64-log.stp
+%{_datadir}/systemtap/tapset/qemu-loongarch64-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-m68k.stp
+%{_datadir}/systemtap/tapset/qemu-m68k-log.stp
+%{_datadir}/systemtap/tapset/qemu-m68k-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-microblaze.stp
+%{_datadir}/systemtap/tapset/qemu-microblaze-log.stp
+%{_datadir}/systemtap/tapset/qemu-microblaze-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-microblazeel.stp
+%{_datadir}/systemtap/tapset/qemu-microblazeel-log.stp
+%{_datadir}/systemtap/tapset/qemu-microblazeel-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-mips.stp
+%{_datadir}/systemtap/tapset/qemu-mips-log.stp
+%{_datadir}/systemtap/tapset/qemu-mips-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-mips64el.stp
+%{_datadir}/systemtap/tapset/qemu-mips64el-log.stp
+%{_datadir}/systemtap/tapset/qemu-mips64el-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-mips64.stp
+%{_datadir}/systemtap/tapset/qemu-mips64-log.stp
+%{_datadir}/systemtap/tapset/qemu-mips64-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-mipsel.stp
+%{_datadir}/systemtap/tapset/qemu-mipsel-log.stp
+%{_datadir}/systemtap/tapset/qemu-mipsel-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-mipsn32.stp
+%{_datadir}/systemtap/tapset/qemu-mipsn32-log.stp
+%{_datadir}/systemtap/tapset/qemu-mipsn32-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-mipsn32el.stp
+%{_datadir}/systemtap/tapset/qemu-mipsn32el-log.stp
+%{_datadir}/systemtap/tapset/qemu-mipsn32el-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-nios2.stp
+%{_datadir}/systemtap/tapset/qemu-nios2-log.stp
+%{_datadir}/systemtap/tapset/qemu-nios2-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-or1k.stp
+%{_datadir}/systemtap/tapset/qemu-or1k-log.stp
+%{_datadir}/systemtap/tapset/qemu-or1k-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-ppc.stp
+%{_datadir}/systemtap/tapset/qemu-ppc-log.stp
+%{_datadir}/systemtap/tapset/qemu-ppc-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-ppc64.stp
+%{_datadir}/systemtap/tapset/qemu-ppc64-log.stp
+%{_datadir}/systemtap/tapset/qemu-ppc64-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-ppc64le.stp
+%{_datadir}/systemtap/tapset/qemu-ppc64le-log.stp
+%{_datadir}/systemtap/tapset/qemu-ppc64le-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-riscv32.stp
+%{_datadir}/systemtap/tapset/qemu-riscv32-log.stp
+%{_datadir}/systemtap/tapset/qemu-riscv32-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-riscv64.stp
+%{_datadir}/systemtap/tapset/qemu-riscv64-log.stp
+%{_datadir}/systemtap/tapset/qemu-riscv64-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-s390x.stp
+%{_datadir}/systemtap/tapset/qemu-s390x-log.stp
+%{_datadir}/systemtap/tapset/qemu-s390x-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-sh4.stp
+%{_datadir}/systemtap/tapset/qemu-sh4-log.stp
+%{_datadir}/systemtap/tapset/qemu-sh4-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-sh4eb.stp
+%{_datadir}/systemtap/tapset/qemu-sh4eb-log.stp
+%{_datadir}/systemtap/tapset/qemu-sh4eb-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-sparc.stp
+%{_datadir}/systemtap/tapset/qemu-sparc-log.stp
+%{_datadir}/systemtap/tapset/qemu-sparc-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-sparc32plus.stp
+%{_datadir}/systemtap/tapset/qemu-sparc32plus-log.stp
+%{_datadir}/systemtap/tapset/qemu-sparc32plus-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-sparc64.stp
+%{_datadir}/systemtap/tapset/qemu-sparc64-log.stp
+%{_datadir}/systemtap/tapset/qemu-sparc64-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-x86_64.stp
+%{_datadir}/systemtap/tapset/qemu-x86_64-log.stp
+%{_datadir}/systemtap/tapset/qemu-x86_64-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-xtensa.stp
+%{_datadir}/systemtap/tapset/qemu-xtensa-log.stp
+%{_datadir}/systemtap/tapset/qemu-xtensa-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-xtensaeb.stp
+%{_datadir}/systemtap/tapset/qemu-xtensaeb-log.stp
+%{_datadir}/systemtap/tapset/qemu-xtensaeb-simpletrace.stp
 
 
 %files user-binfmt
@@ -2458,7 +2678,11 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files user-static-aarch64
 %{_bindir}/qemu-aarch64-static
 %{_bindir}/qemu-aarch64_be-static
-%{_datadir}/systemtap/tapset/qemu-aarch64.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64-simpletrace-static.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64-static.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64_be-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-aarch64_be-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-aarch64_be-static.stp
 %ifnarch aarch64
 %{_exec_prefix}/lib/binfmt.d/qemu-aarch64-static.conf
@@ -2467,12 +2691,19 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 
 %files user-static-alpha
 %{_bindir}/qemu-alpha-static
+%{_datadir}/systemtap/tapset/qemu-alpha-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-alpha-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-alpha-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-alpha-static.conf
 
 %files user-static-arm
 %{_bindir}/qemu-arm-static
 %{_bindir}/qemu-armeb-static
+%{_datadir}/systemtap/tapset/qemu-arm-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-arm-simpletrace-static.stp
+%{_datadir}/systemtap/tapset/qemu-arm-static.stp
+%{_datadir}/systemtap/tapset/qemu-armeb-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-armeb-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-armeb-static.stp
 %ifnarch aarch64
 %{_exec_prefix}/lib/binfmt.d/qemu-arm-static.conf
@@ -2481,32 +2712,46 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 
 %files user-static-cris
 %{_bindir}/qemu-cris-static
+%{_datadir}/systemtap/tapset/qemu-cris-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-cris-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-cris-static.stp
 
 %files user-static-hexagon
 %{_bindir}/qemu-hexagon-static
+%{_datadir}/systemtap/tapset/qemu-hexagon-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-hexagon-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-hexagon-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-hexagon-static.conf
 
 %files user-static-hppa
 %{_bindir}/qemu-hppa-static
+%{_datadir}/systemtap/tapset/qemu-hppa-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-hppa-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-hppa-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-hppa-static.conf
 
 %files user-static-loongarch64
 %{_bindir}/qemu-loongarch64-static
+%{_datadir}/systemtap/tapset/qemu-loongarch64-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-loongarch64-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-loongarch64-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-loongarch64-static.conf
 
 %files user-static-m68k
 %{_bindir}/qemu-m68k-static
+%{_datadir}/systemtap/tapset/qemu-m68k-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-m68k-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-m68k-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-m68k-static.conf
 
 %files user-static-microblaze
 %{_bindir}/qemu-microblaze-static
 %{_bindir}/qemu-microblazeel-static
+%{_datadir}/systemtap/tapset/qemu-microblaze-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-microblaze-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-microblaze-static.stp
+%{_datadir}/systemtap/tapset/qemu-microblazeel-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-microblazeel-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-microblazeel-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-microblaze-static.conf
 %{_exec_prefix}/lib/binfmt.d/qemu-microblazeel-static.conf
@@ -2518,11 +2763,23 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %{_bindir}/qemu-mipsel-static
 %{_bindir}/qemu-mipsn32-static
 %{_bindir}/qemu-mipsn32el-static
+%{_datadir}/systemtap/tapset/qemu-mips-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-mips-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-mips-static.stp
+%{_datadir}/systemtap/tapset/qemu-mips64-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-mips64-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-mips64-static.stp
+%{_datadir}/systemtap/tapset/qemu-mips64el-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-mips64el-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-mips64el-static.stp
+%{_datadir}/systemtap/tapset/qemu-mipsel-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-mipsel-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-mipsel-static.stp
+%{_datadir}/systemtap/tapset/qemu-mipsn32-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-mipsn32-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-mipsn32-static.stp
+%{_datadir}/systemtap/tapset/qemu-mipsn32el-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-mipsn32el-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-mipsn32el-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-mips-static.conf
 %{_exec_prefix}/lib/binfmt.d/qemu-mips64-static.conf
@@ -2533,10 +2790,14 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 
 %files user-static-nios2
 %{_bindir}/qemu-nios2-static
+%{_datadir}/systemtap/tapset/qemu-nios2-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-nios2-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-nios2-static.stp
 
 %files user-static-or1k
 %{_bindir}/qemu-or1k-static
+%{_datadir}/systemtap/tapset/qemu-or1k-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-or1k-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-or1k-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-or1k-static.conf
 
@@ -2544,8 +2805,14 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %{_bindir}/qemu-ppc-static
 %{_bindir}/qemu-ppc64-static
 %{_bindir}/qemu-ppc64le-static
+%{_datadir}/systemtap/tapset/qemu-ppc-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-ppc-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-ppc-static.stp
+%{_datadir}/systemtap/tapset/qemu-ppc64-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-ppc64-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-ppc64-static.stp
+%{_datadir}/systemtap/tapset/qemu-ppc64le-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-ppc64le-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-ppc64le-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-ppc-static.conf
 %{_exec_prefix}/lib/binfmt.d/qemu-ppc64-static.conf
@@ -2556,7 +2823,11 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files user-static-riscv
 %{_bindir}/qemu-riscv32-static
 %{_bindir}/qemu-riscv64-static
+%{_datadir}/systemtap/tapset/qemu-riscv32-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-riscv32-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-riscv32-static.stp
+%{_datadir}/systemtap/tapset/qemu-riscv64-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-riscv64-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-riscv64-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-riscv32-static.conf
 %ifnarch riscv64
@@ -2565,6 +2836,8 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 
 %files user-static-s390x
 %{_bindir}/qemu-s390x-static
+%{_datadir}/systemtap/tapset/qemu-s390x-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-s390x-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-s390x-static.stp
 %ifnarch s390x
 %{_exec_prefix}/lib/binfmt.d/qemu-s390x-static.conf
@@ -2573,7 +2846,11 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files user-static-sh4
 %{_bindir}/qemu-sh4-static
 %{_bindir}/qemu-sh4eb-static
+%{_datadir}/systemtap/tapset/qemu-sh4-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-sh4-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-sh4-static.stp
+%{_datadir}/systemtap/tapset/qemu-sh4eb-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-sh4eb-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-sh4eb-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-sh4-static.conf
 %{_exec_prefix}/lib/binfmt.d/qemu-sh4eb-static.conf
@@ -2582,9 +2859,15 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %{_bindir}/qemu-sparc-static
 %{_bindir}/qemu-sparc32plus-static
 %{_bindir}/qemu-sparc64-static
+%{_datadir}/systemtap/tapset/qemu-sparc-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-sparc-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-sparc-static.stp
-%{_datadir}/systemtap/tapset/qemu-sparc32plus-static.stp
+%{_datadir}/systemtap/tapset/qemu-sparc64-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-sparc64-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-sparc64-static.stp
+%{_datadir}/systemtap/tapset/qemu-sparc32plus-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-sparc32plus-simpletrace-static.stp
+%{_datadir}/systemtap/tapset/qemu-sparc32plus-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-sparc-static.conf
 %{_exec_prefix}/lib/binfmt.d/qemu-sparc32plus-static.conf
 %{_exec_prefix}/lib/binfmt.d/qemu-sparc64-static.conf
@@ -2592,7 +2875,11 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files user-static-x86
 %{_bindir}/qemu-i386-static
 %{_bindir}/qemu-x86_64-static
+%{_datadir}/systemtap/tapset/qemu-i386-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-i386-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-i386-static.stp
+%{_datadir}/systemtap/tapset/qemu-x86_64-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-x86_64-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-x86_64-static.stp
 %ifnarch %{ix86} x86_64
 %{_exec_prefix}/lib/binfmt.d/qemu-i386-static.conf
@@ -2603,7 +2890,11 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files user-static-xtensa
 %{_bindir}/qemu-xtensa-static
 %{_bindir}/qemu-xtensaeb-static
+%{_datadir}/systemtap/tapset/qemu-xtensa-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-xtensa-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-xtensa-static.stp
+%{_datadir}/systemtap/tapset/qemu-xtensaeb-log-static.stp
+%{_datadir}/systemtap/tapset/qemu-xtensaeb-simpletrace-static.stp
 %{_datadir}/systemtap/tapset/qemu-xtensaeb-static.stp
 %{_exec_prefix}/lib/binfmt.d/qemu-xtensa-static.conf
 %{_exec_prefix}/lib/binfmt.d/qemu-xtensaeb-static.conf
@@ -2614,14 +2905,18 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files system-aarch64
 %files system-aarch64-core
 %{_bindir}/qemu-system-aarch64
-%{_datadir}/systemtap/tapset/qemu-system-aarch64*.stp
+%{_datadir}/systemtap/tapset/qemu-system-aarch64.stp
+%{_datadir}/systemtap/tapset/qemu-system-aarch64-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-aarch64-simpletrace.stp
 %{_mandir}/man1/qemu-system-aarch64.1*
 
 
 %files system-alpha
 %files system-alpha-core
 %{_bindir}/qemu-system-alpha
-%{_datadir}/systemtap/tapset/qemu-system-alpha*.stp
+%{_datadir}/systemtap/tapset/qemu-system-alpha.stp
+%{_datadir}/systemtap/tapset/qemu-system-alpha-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-alpha-simpletrace.stp
 %{_mandir}/man1/qemu-system-alpha.1*
 %{_datadir}/%{name}/palcode-clipper
 
@@ -2630,28 +2925,36 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files system-arm-core
 %{_bindir}/qemu-system-arm
 %{_datadir}/%{name}/npcm7xx_bootrom.bin
-%{_datadir}/systemtap/tapset/qemu-system-arm*.stp
+%{_datadir}/systemtap/tapset/qemu-system-arm.stp
+%{_datadir}/systemtap/tapset/qemu-system-arm-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-arm-simpletrace.stp
 %{_mandir}/man1/qemu-system-arm.1*
 
 
 %files system-avr
 %files system-avr-core
 %{_bindir}/qemu-system-avr
-%{_datadir}/systemtap/tapset/qemu-system-avr*.stp
+%{_datadir}/systemtap/tapset/qemu-system-avr.stp
+%{_datadir}/systemtap/tapset/qemu-system-avr-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-avr-simpletrace.stp
 %{_mandir}/man1/qemu-system-avr.1*
 
 
 %files system-cris
 %files system-cris-core
 %{_bindir}/qemu-system-cris
-%{_datadir}/systemtap/tapset/qemu-system-cris*.stp
+%{_datadir}/systemtap/tapset/qemu-system-cris.stp
+%{_datadir}/systemtap/tapset/qemu-system-cris-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-cris-simpletrace.stp
 %{_mandir}/man1/qemu-system-cris.1*
 
 
 %files system-hppa
 %files system-hppa-core
 %{_bindir}/qemu-system-hppa
-%{_datadir}/systemtap/tapset/qemu-system-hppa*.stp
+%{_datadir}/systemtap/tapset/qemu-system-hppa.stp
+%{_datadir}/systemtap/tapset/qemu-system-hppa-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-hppa-simpletrace.stp
 %{_mandir}/man1/qemu-system-hppa.1*
 %{_datadir}/%{name}/hppa-firmware.img
 
@@ -2659,14 +2962,18 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files system-loongarch64
 %files system-loongarch64-core
 %{_bindir}/qemu-system-loongarch64
-%{_datadir}/systemtap/tapset/qemu-system-loongarch64*.stp
+%{_datadir}/systemtap/tapset/qemu-system-loongarch64.stp
+%{_datadir}/systemtap/tapset/qemu-system-loongarch64-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-loongarch64-simpletrace.stp
 %{_mandir}/man1/qemu-system-loongarch64.1*
 
 
 %files system-m68k
 %files system-m68k-core
 %{_bindir}/qemu-system-m68k
-%{_datadir}/systemtap/tapset/qemu-system-m68k*.stp
+%{_datadir}/systemtap/tapset/qemu-system-m68k.stp
+%{_datadir}/systemtap/tapset/qemu-system-m68k-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-m68k-simpletrace.stp
 %{_mandir}/man1/qemu-system-m68k.1*
 
 
@@ -2674,7 +2981,12 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files system-microblaze-core
 %{_bindir}/qemu-system-microblaze
 %{_bindir}/qemu-system-microblazeel
-%{_datadir}/systemtap/tapset/qemu-system-microblaze*.stp
+%{_datadir}/systemtap/tapset/qemu-system-microblaze.stp
+%{_datadir}/systemtap/tapset/qemu-system-microblaze-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-microblaze-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-system-microblazeel.stp
+%{_datadir}/systemtap/tapset/qemu-system-microblazeel-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-microblazeel-simpletrace.stp
 %{_mandir}/man1/qemu-system-microblaze.1*
 %{_mandir}/man1/qemu-system-microblazeel.1*
 %{_datadir}/%{name}/petalogix*.dtb
@@ -2686,7 +2998,18 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %{_bindir}/qemu-system-mipsel
 %{_bindir}/qemu-system-mips64
 %{_bindir}/qemu-system-mips64el
-%{_datadir}/systemtap/tapset/qemu-system-mips*.stp
+%{_datadir}/systemtap/tapset/qemu-system-mips.stp
+%{_datadir}/systemtap/tapset/qemu-system-mips-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-mips-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-system-mipsel.stp
+%{_datadir}/systemtap/tapset/qemu-system-mipsel-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-mipsel-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-system-mips64.stp
+%{_datadir}/systemtap/tapset/qemu-system-mips64-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-mips64-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-system-mips64el.stp
+%{_datadir}/systemtap/tapset/qemu-system-mips64el-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-mips64el-simpletrace.stp
 %{_mandir}/man1/qemu-system-mips.1*
 %{_mandir}/man1/qemu-system-mipsel.1*
 %{_mandir}/man1/qemu-system-mips64el.1*
@@ -2696,14 +3019,18 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files system-nios2
 %files system-nios2-core
 %{_bindir}/qemu-system-nios2
-%{_datadir}/systemtap/tapset/qemu-system-nios2*.stp
+%{_datadir}/systemtap/tapset/qemu-system-nios2.stp
+%{_datadir}/systemtap/tapset/qemu-system-nios2-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-nios2-simpletrace.stp
 %{_mandir}/man1/qemu-system-nios2.1*
 
 
 %files system-or1k
 %files system-or1k-core
 %{_bindir}/qemu-system-or1k
-%{_datadir}/systemtap/tapset/qemu-system-or1k*.stp
+%{_datadir}/systemtap/tapset/qemu-system-or1k.stp
+%{_datadir}/systemtap/tapset/qemu-system-or1k-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-or1k-simpletrace.stp
 %{_mandir}/man1/qemu-system-or1k.1*
 
 
@@ -2711,7 +3038,12 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files system-ppc-core
 %{_bindir}/qemu-system-ppc
 %{_bindir}/qemu-system-ppc64
-%{_datadir}/systemtap/tapset/qemu-system-ppc*.stp
+%{_datadir}/systemtap/tapset/qemu-system-ppc.stp
+%{_datadir}/systemtap/tapset/qemu-system-ppc-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-ppc-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-system-ppc64.stp
+%{_datadir}/systemtap/tapset/qemu-system-ppc64-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-ppc64-simpletrace.stp
 %{_mandir}/man1/qemu-system-ppc.1*
 %{_mandir}/man1/qemu-system-ppc64.1*
 %{_datadir}/%{name}/bamboo.dtb
@@ -2731,21 +3063,30 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %{_bindir}/qemu-system-riscv32
 %{_bindir}/qemu-system-riscv64
 %{_datadir}/%{name}/opensbi-riscv*.bin
-%{_datadir}/systemtap/tapset/qemu-system-riscv*.stp
+%{_datadir}/systemtap/tapset/qemu-system-riscv32.stp
+%{_datadir}/systemtap/tapset/qemu-system-riscv32-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-riscv32-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-system-riscv64.stp
+%{_datadir}/systemtap/tapset/qemu-system-riscv64-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-riscv64-simpletrace.stp
 %{_mandir}/man1/qemu-system-riscv*.1*
 
 
 %files system-rx
 %files system-rx-core
 %{_bindir}/qemu-system-rx
-%{_datadir}/systemtap/tapset/qemu-system-rx*.stp
+%{_datadir}/systemtap/tapset/qemu-system-rx.stp
+%{_datadir}/systemtap/tapset/qemu-system-rx-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-rx-simpletrace.stp
 %{_mandir}/man1/qemu-system-rx.1*
 
 
 %files system-s390x
 %files system-s390x-core
 %{_bindir}/qemu-system-s390x
-%{_datadir}/systemtap/tapset/qemu-system-s390x*.stp
+%{_datadir}/systemtap/tapset/qemu-system-s390x.stp
+%{_datadir}/systemtap/tapset/qemu-system-s390x-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-s390x-simpletrace.stp
 %{_mandir}/man1/qemu-system-s390x.1*
 %{_datadir}/%{name}/s390-ccw.img
 %{_datadir}/%{name}/s390-netboot.img
@@ -2755,7 +3096,12 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files system-sh4-core
 %{_bindir}/qemu-system-sh4
 %{_bindir}/qemu-system-sh4eb
-%{_datadir}/systemtap/tapset/qemu-system-sh4*.stp
+%{_datadir}/systemtap/tapset/qemu-system-sh4.stp
+%{_datadir}/systemtap/tapset/qemu-system-sh4-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-sh4-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-system-sh4eb.stp
+%{_datadir}/systemtap/tapset/qemu-system-sh4eb-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-sh4eb-simpletrace.stp
 %{_mandir}/man1/qemu-system-sh4.1*
 %{_mandir}/man1/qemu-system-sh4eb.1*
 
@@ -2764,7 +3110,12 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files system-sparc-core
 %{_bindir}/qemu-system-sparc
 %{_bindir}/qemu-system-sparc64
-%{_datadir}/systemtap/tapset/qemu-system-sparc*.stp
+%{_datadir}/systemtap/tapset/qemu-system-sparc.stp
+%{_datadir}/systemtap/tapset/qemu-system-sparc-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-sparc-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-system-sparc64.stp
+%{_datadir}/systemtap/tapset/qemu-system-sparc64-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-sparc64-simpletrace.stp
 %{_mandir}/man1/qemu-system-sparc.1*
 %{_mandir}/man1/qemu-system-sparc64.1*
 %{_datadir}/%{name}/QEMU,tcx.bin
@@ -2774,7 +3125,9 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files system-tricore
 %files system-tricore-core
 %{_bindir}/qemu-system-tricore
-%{_datadir}/systemtap/tapset/qemu-system-tricore*.stp
+%{_datadir}/systemtap/tapset/qemu-system-tricore.stp
+%{_datadir}/systemtap/tapset/qemu-system-tricore-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-tricore-simpletrace.stp
 %{_mandir}/man1/qemu-system-tricore.1*
 
 
@@ -2784,8 +3137,12 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %{_bindir}/qemu-system-x86_64
 %{_libdir}/%{name}/accel-tcg-i386.so
 %{_libdir}/%{name}/accel-tcg-x86_64.so
-%{_datadir}/systemtap/tapset/qemu-system-i386*.stp
-%{_datadir}/systemtap/tapset/qemu-system-x86_64*.stp
+%{_datadir}/systemtap/tapset/qemu-system-i386.stp
+%{_datadir}/systemtap/tapset/qemu-system-i386-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-i386-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-system-x86_64.stp
+%{_datadir}/systemtap/tapset/qemu-system-x86_64-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-x86_64-simpletrace.stp
 %{_mandir}/man1/qemu-system-i386.1*
 %{_mandir}/man1/qemu-system-x86_64.1*
 %{_datadir}/%{name}/kvmvapic.bin
@@ -2804,7 +3161,12 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 %files system-xtensa-core
 %{_bindir}/qemu-system-xtensa
 %{_bindir}/qemu-system-xtensaeb
-%{_datadir}/systemtap/tapset/qemu-system-xtensa*.stp
+%{_datadir}/systemtap/tapset/qemu-system-xtensa.stp
+%{_datadir}/systemtap/tapset/qemu-system-xtensa-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-xtensa-simpletrace.stp
+%{_datadir}/systemtap/tapset/qemu-system-xtensaeb.stp
+%{_datadir}/systemtap/tapset/qemu-system-xtensaeb-log.stp
+%{_datadir}/systemtap/tapset/qemu-system-xtensaeb-simpletrace.stp
 %{_mandir}/man1/qemu-system-xtensa.1*
 %{_mandir}/man1/qemu-system-xtensaeb.1*
 # endif !tools_only
@@ -2812,6 +3174,65 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 
 
 %changelog
+* Tue Mar 19 2024 Roberto Campesato <render@metalabs.org> - 8.2.2-1.1
+- Merge latest changes from Fedora
+- Re-enabled libblkio (RHBZ#2232766 closed)
+- Added fb-only patches
+  . relaxing CA cert bundle validatation
+  . setting default cpu_model for linux-user x86_64 and aarch64
+  . btrfs v2 ioctls
+
+* Wed Mar 06 2024 Cole Robinson <crobinso@redhat.com> - 8.2.2-1
+- New release qemu 8.2.2
+
+* Mon Feb 26 2024 Richard W.M. Jones <rjones@redhat.com> - 2:8.2.0-9
+- ppc/spapr: Initialize max_cpus limit to SPAPR_IRQ_NR_IPIS (RHBZ#2265982)
+
+* Wed Feb 21 2024 Richard W.M. Jones <rjones@redhat.com> - 2:8.2.0-8
+- Fix user-emulation of FIFREEZE and FITHAW ioctls
+
+* Thu Feb 01 2024 Cole Robinson <crobinso@redhat.com> - 8.2.0-7
+- Enable PIE for qemu-user-static builds
+- Replace PVH build fix patch with version that should work on centos
+
+* Tue Jan 30 2024 Richard W.M. Jones <rjones@redhat.com> - 2:8.2.0-6
+- Fix builds on i686.
+
+* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2:8.2.0-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
+
+* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2:8.2.0-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
+
+* Fri Jan 12 2024 Daan De Meyer <daan.j.demeyer@gmail.com> - 8.2.0-2
+- Backport TCG patch that fixes OVMF boot with 4M variables
+
+* Tue Jan  9 2024 Daniel P. Berrangé <berrange@redhat.com> - 8.2.0-1
+- Update to 8.2.0 release
+- Add gpg verification of source tarball
+
+* Sat Dec  9 2023 Richard W.M. Jones <rjones@redhat.com> - 2:8.2.0-0.3.rc2
+- Further fix for Xen 4.18
+
+* Tue Dec 05 2023 Richard W.M. Jones <rjones@redhat.com> - 2:8.2.0-0.2.rc2
+- Bump and rebuild for xen 4.18.0
+
+* Sat Dec 02 2023 Cole Robinson <crobinso@redhat.com> - 8.2.0-0.1-rc2
+- Rebase to qemu 8.2.0-rc2
+
+* Wed Nov 29 2023 Richard W.M. Jones <rjones@redhat.com> - 2:8.1.2-3
+- Bump and rebuild for xen 4.18.0
+
+* Tue Nov 28 2023 Richard W.M. Jones <rjones@redhat.com> - 2:8.1.2-2
+- Bump and rebuild for capstone 5.0.1
+- Backport patch from crobinso to fix build on Rawhide
+
+* Tue Oct 17 2023 Cole Robinson <crobinso@redhat.com> - 8.1.2-1
+- Update to version 8.1.2
+
+* Tue Sep 26 2023 Cole Robinson <crobinso@redhat.com> - 8.1.1-1
+- Rebase to qemu 8.1.1
+
 * Tue Sep 19 2023 Davide Cavalca <dcavalca@centosproject.org> - 2:8.1.0-2.1
 - Merge latest changes from Fedora
 - Enable libcacard support for Hyperscale builds
@@ -2953,133 +3374,3 @@ useradd -r -u 107 -g qemu -G kvm -d / -s /sbin/nologin \
 
 * Tue Jan 11 2022 Richard W.M. Jones <rjones@redhat.com> - 2:6.2.0-2
 - Bump release and rebuild for new xen
-
-* Wed Dec 15 2021 Eduardo Lima (Etrunko) <etrunko@redhat.com> - 6.2.0-1
-- Rebase to qemu 6.2.0
-
-* Thu Dec 09 2021 Eduardo Lima (Etrunko) <etrunko@redhat.com> - 6.2.0-0.1-rc4
-- Rebase to qemu 6.2.0-rc4
-
-* Fri Dec 03 2021 Eduardo Lima (Etrunko) <etrunko@redhat.com> - 6.2.0-0.1-rc3
-- Rebase to qemu 6.2.0-rc3
-
-* Thu Nov 25 2021 Daniel P. Berrangé <berrange@redhat.com> - 6.1.0-13
-- Fix iovec limits with scsi-generic
-
-* Wed Nov 24 2021 Richard W.M. Jones <rjones@redhat.com> - 6.1.0-12
-- Add support for qemu-nbd --selinux-relabel option (RHBZ#1984938)
-- Define STAP_SDT_ARG_CONSTRAINT=g on %%{arm}, workaround for:
-  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103395
-
-* Mon Nov 08 2021 Adam Williamson <awilliam@redhat.com> - 6.1.0-10
-- Fix snapshot creation with qxl graphics
-
-* Fri Oct 08 2021 Cole Robinson <crobinso@redhat.com> - 6.1.0-9
-- Fix tcg PVH test with binutils 2.36+
-
-* Wed Oct 06 2021 Cole Robinson <crobinso@redhat.com> - 6.1.0-8
-- Fix qemu crash with vnc + libvirt virDomainOpenConsole
-
-* Sun Sep 12 2021 Richard W.M. Jones <rjones@redhat.com> - 6.1.0-7
-- Alternate fix for assertion on armv7hl (RHBZ#1999878)
-
-* Wed Sep 01 2021 Richard W.M. Jones <rjones@redhat.com> - 6.1.0-6
-- Fix assertion on armv7hl (RHBZ#1999878)
-
-* Tue Aug 31 2021 Richard W.M. Jones <rjones@redhat.com> - 6.1.0-5
-- Fix -cpu max (RHBZ#1999700)
-
-* Fri Aug 27 2021 Richard W.M. Jones <rjones@redhat.com> - 6.1.0-4
-- Disable gcrypt (for real this time).
-
-* Fri Aug 27 2021 Richard W.M. Jones <rjones@redhat.com> - 6.1.0-3
-- Revert "Disable gcrypt" which seems to disable gnutls (RHBZ#1998452)
-
-* Thu Aug 26 2021 Richard W.M. Jones <rjones@redhat.com> - 6.1.0-2
-- Fix dependency pci_gl -> pci-gl and vga_gl -> vga-gl (RHBZ#1997855)
-
-* Tue Aug 24 2021 Eduardo Lima (Etrunko) <etrunko@redhat.com> - 6.1.0-1
-- Rebase to qemu 6.1.0
-
-* Tue Aug 10 2021 Eduardo Lima (Etrunko) <etrunko@redhat.com> - 6.1.0-0.3-rc4
-- Rebase to qemu 6.1.0-rc4
-
-* Tue Aug 10 2021 Eduardo Lima (Etrunko) <etrunko@redhat.com> - 6.1.0-0.2-rc3
-- Rebase to qemu 6.1.0-rc3
-
-* Mon Aug 9 2021 Eduardo Lima (Etrunko) <etrunko@redhat.com> - 6.1.0-0.1-rc2
-- Rebase to qemu 6.1.0-rc2
-
-* Thu Jul 29 2021 Cole Robinson <crobinso@redhat.com> - 6.0.0-12
-- Drop python3 shebang fixup for tests rpm
-- Parallelize make check
-- Explicitly disable c++ build
-
-* Fri Jul 23 2021 Richard W.M. Jones <rjones@redhat.com> - 6.0.0-11
-- Fix dependencies of qemu metapackage.
-
-* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2:6.0.0-10.1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
-
-* Sun Jul 18 2021 Cole Robinson <crobinso@redhat.com> - 6.0.0-10
-- Split out qemu-pr-helper and qemu-tools subpackages
-
-* Wed Jul 07 2021 Cole Robinson <crobinso@redhat.com> - 6.0.0-9
-- Use standard fedora build macros
-- Access roms directly in ipxe, seabios, seavgabios directories
-
-* Wed Jun 30 2021 Cole Robinson <crobinso@redhat.com> - 6.0.0-8
-- Relax meson version to fix building on older Fedora
-- More attempts to get CI working
-
-* Wed Jun 23 2021 Cole Robinson <crobinso@redhat.com> - 6.0.0-7
-- Add qemu-tests package
-- Move qemu-sanity-check test to fedora CI
-- Add s390x and generic kvm modprobe file from RHEL
-- Add vhost modprobe file from RHEL
-- Distribute tracetool, simpletrace, dump-guest-memory tools
-
-* Wed Jun 16 2021 Cole Robinson <crobinso@redhat.com> - 6.0.0-6
-- Build against fuse3 and SDL2_image
-- Move qemu-storage-daemon to qemu-img subpackage
-
-* Mon Jun 07 2021 Cole Robinson <crobinso@redhat.com> - 6.0.0-5
-- Rebuild for xen 4.15
-
-* Tue Jun 01 2021 Cole Robinson <crobinso@redhat.com> - 2:6.0.0-4
-- Split out qemu-device-display-vhost-user-gpu subpackage
-- Split out qemu-docs subpackage
-
-* Wed May 19 2021 Paolo Bonzini <pbonzini@redhat.com> - 2:6.0.0-3
-- add another patch to fix configuration files
-
-* Wed May 19 2021 Paolo Bonzini <pbonzini@redhat.com> - 2:6.0.0-2
-- fix spice option from configuration file
-- fix object option from configuration file
-- allow not specifying size in -m when using -M memory-backend
-
-* Wed May 12 2021 Cole Robinson <crobinso@redhat.com> - 2:6.0.0-1
-- Rebase to qemu 6.0.0 GA
-
-* Wed Apr 21 2021 Cole Robinson <crobinso@redhat.com> - 2:6.0.0-0.3.rc4
-- Rebase to qemu 6.0.0-rc4
-
-* Wed Apr 14 2021 Richard W.M. Jones <rjones@redhat.com> - 2:6.0.0-0.2.rc2
-- Rebuild for updated liburing.
-
-* Tue Apr 06 2021 Cole Robinson <aintdiscole@gmail.com> - 6.0.0-0.1.rc2
-- Rebase to qemu 6.0.0-rc2
-
-* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2:5.2.0-6.1
-- Rebuilt for updated systemd-rpm-macros
-  See https://pagure.io/fesco/issue/2583.
-
-* Mon Mar 01 2021 Cole Robinson <aintdiscole@gmail.com> - 5.2.0-6
-- Fix building on centos stream in copr
-
-* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2:5.2.0-5.1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
-
-* Mon Jan 11 2021 Paolo Bonzini <pbonzini@redhat.com> - 2:5.2.0-5
-- Use symlink for qemu-kvm.
-- Fix make check on bash 5.1.
diff --git a/rpminspect.yaml b/rpminspect.yaml
new file mode 100644
index 0000000..b6ec74c
--- /dev/null
+++ b/rpminspect.yaml
@@ -0,0 +1,27 @@
+# These pre-compiled files have `.symtab`
+debuginfo:
+  ignore:
+    - /usr/share/qemu/palcode-clipper
+    - /usr/share/qemu/hppa-firmware.img
+
+# More pre-compiled rom warnings:
+# - Program built without GNU_STACK: /usr/share/qemu/u-boot.e500
+# - Stack is still executable: /usr/share/qemu/hppa-firmware.img
+elf:
+  exclude_path: ^/usr/share/qemu/(u-boot.e500|hppa-firmware.img)$
+
+
+inspections:
+  # complains about qemu use of: gethostbyname, inet_aton, inet_ntoa
+  # Warning here isn't really accomplishing anything
+  badfuncs: off
+
+  # bundled edk2 source CryptoPkg fuzz tests have invalid unicode,
+  # but I assume that's intentional
+  #
+  # We would exclude that path using `unicode:` section, but fedora CI
+  # doesn't allow it:
+  # rpminspect: *** ignoring 'unicode' section in ...rpminspect.yaml; only allowed in system-wide configuration
+  #
+  # So instead we fully disable the unicode check
+  unicode: off
diff --git a/sources b/sources
index 6b76115..6517d45 100644
--- a/sources
+++ b/sources
@@ -1 +1,2 @@
-SHA512 (qemu-8.1.0.tar.xz) = c5f5e7ce2d8e3c93a02012b136c866e8577df07da4705a0045916c71caeaa21fa1b2d59a4b22a660789a4159b192e12a443e7cbb0724ee85fea258251731724c
+SHA512 (qemu-8.2.2.tar.xz) = dfd2e1305f9e51bfbc90a7738c69336d5f805481a626ea527b971bdfb6dbe6867e5df7461d48d1c22b79be2dc18e057ea9fa36ef593127cd8b262a5c33f1aa41
+SHA512 (qemu-8.2.2.tar.xz.sig) = 2a2dac01cc8f1aff8fbc4e6bfd13d7dd80b7bf6505388c04605a76a27aff870e1520d9879a5781508e65d1feb74e8c036d9cd4f21ab1e35fb7a845c2d66476de