QEMU 9.2 Released with Enhanced RISC-V Support and New Machine Types

QEMU 9.2 open-source machine emulator introduces advanced ARM support, Nitro Enclave emulation, Vulkan-enhanced graphics, and more.

QEMU, the popular open-source machine emulator and virtualizer, has just introduced its 9.2 release, bringing a range of noteworthy enhancements, deprecations, and removals.

Although this update includes several breaking changes, it also offers a clearer roadmap and improved support for emerging hardware features and configurations. In other words, while QEMU 9.2 might require users to adjust some of their existing setups, it ultimately aims to pave the way for a more flexible and future-proof virtualization environment.

To start with, QEMU 9.2 removes several long-deprecated features and options. For instance, the -rotate and -portrait command-line options, previously associated with PXA2xx machines, have been dropped since those machines are no longer supported.

Likewise, the old “proxy” backend for 9pfs and the accompanying virtfs-proxy-helper program have been withdrawn in favor of the “local” backend driver or the more modern virtio-fs solution. In addition, certain properties like “loaded” from โ€˜secretโ€™ and โ€˜tlscredsโ€™ object types have been removed entirely, as they served no practical function.

Meanwhile, various options have now entered the deprecated category, signaling that users should prepare to transition away from them. For example, the query-migrationthreads command, the gluster backend for block devices, and the “reconnect” option for character and network devices have all been marked as deprecated.

Users are encouraged to adopt suggested replacementsโ€”such as “reconnect-ms” for devicesโ€”or explore newer strategies for block migration and I/O. Although these changes might initially seem inconvenient, QEMUโ€™s maintainers are determined to ensure a cleaner, more consistent codebase in the long run.

From a hardware emulation perspective, the Arm architecture sees several important improvements. New CPU architectural features, like FEAT_EBF16 and FEAT_CMOW, have been introduced. Additionally, the sbsa-ref and virt boards now come equipped with System Memory Management Units (SMMUs) capable of two-stage translation, offering more powerful memory virtualization capabilities.

On macOS hosts running 15 or newer, the hvf accelerator can now handle VMs with larger memory spacesโ€”beyond 36-bit addressingโ€”provided the underlying CPU supports it. This opens the door for more substantial workloads and resource-intensive applications to run smoothly on newer Apple hardware.

Furthermore, QEMU 9.2 removes some older Arm machine types that were previously deprecated. As a result, the likes of akita, borzoi, and several others have finally been phased out. While this may be a letdown for those who have yet to update their configurations, it reflects the projectโ€™s shift toward emphasizing more actively maintained targets and robust features.

Similarly, the CRIS target, which became nearly impossible to maintain due to lack of upstream Linux support and modern toolchains, has been removed altogether, streamlining QEMUโ€™s support for practically relevant architectures.

On the RISC-V front, this release brings substantial progress. For example, QEMU 9.2 introduces a property to set vl to ceil(AVL/2), adds the fcsr register to the log for the F extension, and even includes improvements to vector load/store instructions.

In addition, it extends support for the AIA (Advanced Interrupt Architecture) under KVM and enables users to experiment with the IOMMU and Control Flow Integrity (CFI) extensions on RISC-V hardware. These advancements underline QEMUโ€™s continued commitment to RISC-V as the architectureโ€™s adoption grows in the industry.

Turning to x86, a new machine type called “nitro-enclave” makes its debut, enabling emulation of AWS Nitro Enclave environments and supporting booting from EIF (Enclave Image Format) files. This marks another step forward in meeting the demands of cloud-oriented users who need secure, isolated execution environments.

Additionally, QEMUโ€™s KVM support now embraces AVX10 instructions, which can be configured in various ways (such as avx10-128, avx10-256, and so forth), depending on the userโ€™s requirements and the host CPU capabilities.

In the realm of device emulation and front-end features, QEMU 9.2 enhances virtio-gpu with venus encapsulation for Vulkan, potentially improving graphics performance in specialized use cases. Meanwhile, virtio-mem now supports suspend/resume on x86-64, promising more dynamic and flexible memory allocation behavior.

On the development and process side, QEMU 9.2 introduces experimental Rust support for device models. Although not recommended yet for production use, enabling Rust-based device models is as simple as configuring QEMU with –enable-rust (given that the host system meets the required Rust compiler and bindgen versions).

It is worth noting that there are exceptions to the platform policy, and certain distributions might face challenges building QEMU with Rust enabled. Nevertheless, the inclusion of Rust marks a turning point in the projectโ€™s development practices, possibly influencing how future QEMU features are implemented.

Lastly, for smooth building and running, QEMU now requires Meson version 1.5.0 or newer, and the new nitro-enclave machine type brings in a dependency on libcbor. Furthermore, the pycotap Python module is now included for functional testing, reflecting QEMUโ€™s gradual shift away from older frameworks like Avocado in favor of more modern, maintainable solutions.

The new release can be downloadedย from QEMUโ€™s official download page, where users can find the tarball. For those interested in the specifics, visit the changelog, which details a full list of changes.

Bobby Borisov

Bobby Borisov

Bobby, an editor-in-chief at Linuxiac, is a Linux professional with over 20 years of experience. With a strong focus on Linux and open-source software, he has worked as a Senior Linux System Administrator, Software Developer, and DevOps Engineer for small and large multinational companies.

Think You're an Ubuntu Expert? Let's Find Out!

Put your knowledge to the test in our lightning-fast Ubuntu quiz!
Ten questions to challenge yourself to see if you're a Linux legend or just a penguin in the making.

1 / 10

Ubuntu is an ancient African word that means:

2 / 10

Who is the Ubuntu's founder?

3 / 10

What year was the first official Ubuntu release?

4 / 10

What does the Ubuntu logo symbolize?

5 / 10

What package format does Ubuntu use for installing software?

6 / 10

When are Ubuntu's LTS versions released?

7 / 10

What is Unity?

8 / 10

What are Ubuntu versions named after?

9 / 10

What's Ubuntu Core?

10 / 10

Which Ubuntu version is Snap introduced?

The average score is 69%