On 07/28 13:26, Mathieu Poirier wrote: > This patchset provides minimal functionality to start a Realm VM > from an Arm RME capable host using the following command line: > > qemu-system-aarch64 \ > -M confidential-guest-support=rme0 -object rme-guest,id=rme0 \ > -cpu host -M virt -enable-kvm -M gic-version=3,its=on -nodefaults .. > > It is a refactoring of Jean-Philippe Brucker's initial work dating from a > while > back. It is compatible with Steven Price's v14 revision [1] of his work > adding > CCA support to KVM. > > * We are currently working on rebasing the work to v15. > > It was tested on the QEMU SBSA machine. For convenience, a repository is > hosted > here [2], along with the TF-A [3], RMM [4] and Linux kernel [5] for the SBSA > machine (compatible with Steven's v14 patchset). > > Instructions to compile and run the entire stack can be found here [6]. > > Device Assignment is not included. > > Thanks, > Mathieu
Hi Mathieu, thank you for your work on upstreaming CCA support. I've tested this series in QEMU-TCG(x-rme=on) environments and confirmed that the basic functionality works well. I have a question about a QMP command for querying CCA capabilities. Jean's tree contains the following commit adding such a QMP command. Was this functionality intentionally omitted from this series? https://git.codelinaro.org/linaro/dcap/qemu/-/commit/41f7852cc8590a38c47299a35a7238da09ff9a12 We are interested in adding this functionality because we are also planning to upstream CCA support for libvirt, which will need a QMP interface to query the CCA capabilities exposed by QEMU. Since the Linux kernel dropped some configuration parameters such as the hash algorithm, I need to rework the implementation of that QMP command a bit. If it's okay with you, I'd be happy to send out the reworked patch based on this series. Thanks, Kohei > > [1]. > https://lore.kernel.org/kvm/[email protected]/T/#m06dd14216aaf76acab65b0a76fb84653141ea64f > [2]. > https://gitlab.com/Linaro/cca-public/qemu/-/tree/upstream-v2?ref_type=heads > [3]. > https://gitlab.com/Linaro/cca-public/tf-a/trusted-firmware-a/-/tree/cca/v13?ref_type=heads > [4]. https://gitlab.com/Linaro/cca-public/rmm/-/tree/cca/v14?ref_type=heads > [5]. > https://gitlab.com/Linaro/cca-public/linux/-/tree/upstream-v2?ref_type=heads > [6]. https://gitlab.com/Linaro/cca-public/build-instructions > > RFC v1: > https://lists.gnu.org/archive/html/qemu-devel/2026-07/msg02307.html > > Changes for V2: > - Fixed linux headers to include correct bit shift for Realm VM (Gavin). > - Removed obsolete rme-guest options (Markus). > - Set ConfidentialGuestSupportClass::kvm_init() to kvm_arm_rme_init() (Gavin). > - Got rid of kvm_arm_rme_vm_type() (Gavin). > - Used kvm_vm_check_extension() instead of kvm_check_extension() to avoid > error message when starting a Realm (Gavin). > - Removed obsolete kvm_arm_rme_init_guest_ram() (Gavin). > - Collected A-B and R-B.
