qemu-devel
[Top][All Lists]
Advanced

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

Re: [RFC PATCH v2 1/9] Add Rust SEV library as subproject


From: Philippe Mathieu-Daudé
Subject: Re: [RFC PATCH v2 1/9] Add Rust SEV library as subproject
Date: Tue, 5 Mar 2024 16:40:21 +0100
User-agent: Mozilla Thunderbird

On 5/3/24 14:47, Daniel P. Berrangé wrote:
On Wed, Oct 04, 2023 at 04:34:10PM -0400, Tyler Fanelli wrote:
The Rust sev library provides a C API for the AMD SEV launch ioctls, as
well as the ability to build with meson. Add the Rust sev library as a
QEMU subproject with the goal of outsourcing all SEV launch ioctls to C
APIs provided by it.

Signed-off-by: Tyler Fanelli <tfanelli@redhat.com>
---
  meson.build                   | 8 ++++++++
  meson_options.txt             | 2 ++
  scripts/meson-buildoptions.sh | 3 +++
  subprojects/sev.wrap          | 6 ++++++
  target/i386/meson.build       | 2 +-
  5 files changed, 20 insertions(+), 1 deletion(-)
  create mode 100644 subprojects/sev.wrap


Now, the second issue is that my patch to QEMU's meson.build where
I look for "CONFIG_SEV" is wrong. I've not tested whether it behaves
correctly on non-x86 hosts - basically I'm hoping that CONFIG_SEV is
*NOT* present if building qemu-system-x86_64 on an aarch64 host.

See hw/i386/Kconfig:

  config SEV
      bool
      ...
      depends on KVM

and meson.build ($cpu is the host):

  ...
elif cpu == 'x86'
  host_arch = 'i386'

if cpu in ['x86', 'x86_64']
  kvm_targets = ['i386-softmmu', 'x86_64-softmmu']

So SEV is only on selectable on x86 hosts, with KVM enabled.

Assuming we get this logic correct though, this unblocks one issue
with getting this merged - Rust platform support.

We've said we want Rust platform support to be a match for QEMU's
platform support. We're probably pretty close, but still it is a
review stumbling block.

If, however, we demonstrate that we /only/ try to use libsev crate
when building on an x86_64 host, then we don't need to think about
Rust platform support in any detail. We know Rust is fully supported
on x86_64 on Linux, and we're not introducing any Rust dependency
for QEMU on other build target arches.

With regards,
Daniel




reply via email to

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