qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC/PATCH v0 00/12] Gunyah hypervisor support


From: Paolo Bonzini
Subject: Re: [RFC/PATCH v0 00/12] Gunyah hypervisor support
Date: Wed, 18 Oct 2023 18:40:25 +0200
User-agent: Mozilla Thunderbird

On 10/11/23 18:52, Srivatsa Vaddagiri wrote:
Gunyah is an open-source Type-1 hypervisor, that is currently supported on ARM64
architecture. Source code for it can be obtained from:

https://github.com/quic/gunyah-hypervisor.

This patch series adds support for Gunyah hypervisor via a new
accelerator option, 'gunyah'. This patch series is based on the Linux kernel's
Gunyah driver, which is being actively developed and not yet merged upstream
[1].

This patch series is thus *NOT YET READY* for merge. Early version of this patch
is being published to solicit comments from Qemu community.

This patch has been tested with the open-source version of Gunyah hypervisor.
Instructions to build hypervisor and test this patch are provided in this
patch series.

Limitations:

1) SMP is not yet supported. This restriction will be removed in the next 
version
of this patch series.

2) virtio-pci is not yet supported. hw/virtio/virtio-pci.c seems to support only
KVM and would need changes to support other hypervisors. If there is any ongoing
work in this regard, would like to build upon it and add support for Gunyah
hypervisor.

virtio-pci does support other hypervisors; what is not yet supported is cross-hypervisor support for IRQFD[1]. This is more of a QEMU issue than something specific to virtio-pci. The way to fix it is to add wrappers for kvm_irqchip_add_irqfd_notifier_gsi and kvm_irqchip_remove_irqfd_notifier_gsi to AccelOpsClass, and move the stub implementations in accel/stubs/kvm-stub.c to the abstract superclass. Then you can switch the users of these KVM functions to the AccelOpsClass wrapper.

By the way I've just posted a series to remove support for really really old kernels, and this should remove more KVM-specific code from device models.

Paolo

[1] a Linux eventfd (or QEMU EventNotifier) that triggers a guest interrupt when it becomes readable. QEMU writes to the eventfd and the kernel responds by injecting the interrupt




reply via email to

[Prev in Thread] Current Thread [Next in Thread]