On 6/3/25 01:13, Edgar E. Iglesias wrote:
On Wed, Mar 5, 2025 at 5:22 PM Stefano Stabellini
<[email protected] <mailto:[email protected]>> wrote:
+Edgar
On Wed, 5 Mar 2025, Philippe Mathieu-Daudé wrote:
> On 16/6/23 01:52, Stefano Stabellini wrote:
> > From: Vikram Garhwal <[email protected]
<mailto:[email protected]>>
> >
> > Add a new machine xenpvh which creates a IOREQ server to
register/connect
> > with
> > Xen Hypervisor.
> >
> > Optional: When CONFIG_TPM is enabled, it also creates a tpm-
tis-device, adds
> > a
> > TPM emulator and connects to swtpm running on host machine via
chardev
> > socket
> > and support TPM functionalities for a guest domain.
> >
> > Extra command line for aarch64 xenpvh QEMU to connect to swtpm:
> > -chardev socket,id=chrtpm,path=/tmp/myvtpm2/swtpm-sock \
> > -tpmdev emulator,id=tpm0,chardev=chrtpm \
> > -machine tpm-base-addr=0x0c000000 \
> >
> > swtpm implements a TPM software emulator(TPM 1.2 & TPM 2) built
on libtpms
> > and
> > provides access to TPM functionality over socket, chardev and CUSE
> > interface.
> > Github repo: https://github.com/stefanberger/swtpm <https://
github.com/stefanberger/swtpm>
> > Example for starting swtpm on host machine:
> > mkdir /tmp/vtpm2
> > swtpm socket --tpmstate dir=/tmp/vtpm2 \
> > --ctrl type=unixio,path=/tmp/vtpm2/swtpm-sock &
> >
> > Signed-off-by: Vikram Garhwal <[email protected]
<mailto:[email protected]>>
> > Signed-off-by: Stefano Stabellini <[email protected]
<mailto:[email protected]>>
> > Reviewed-by: Stefano Stabellini <[email protected]
<mailto:[email protected]>>
> > ---
> > docs/system/arm/xenpvh.rst | 34 +++++++
> > docs/system/target-arm.rst | 1 +
> > hw/arm/meson.build | 2 +
> > hw/arm/xen_arm.c | 181 +++++++++++++++++++++++++
+++++++++
> > include/hw/arm/xen_arch_hvm.h | 9 ++
> > include/hw/xen/arch_hvm.h | 2 +
> > 6 files changed, 229 insertions(+)
> > create mode 100644 docs/system/arm/xenpvh.rst
> > create mode 100644 hw/arm/xen_arm.c
> > create mode 100644 include/hw/arm/xen_arch_hvm.h
>
>
> > diff --git a/include/hw/xen/arch_hvm.h b/include/hw/xen/arch_hvm.h
> > index 26674648d8..c7c515220d 100644
> > --- a/include/hw/xen/arch_hvm.h
> > +++ b/include/hw/xen/arch_hvm.h
> > @@ -1,3 +1,5 @@
> > #if defined(TARGET_I386) || defined(TARGET_X86_64)
> > #include "hw/i386/xen_arch_hvm.h"
> > +#elif defined(TARGET_ARM) || defined(TARGET_ARM_64)
>
> I suppose this is a typo and you meant TARGET_AARCH64 :)
> Luckily TARGET_AARCH64 defines TARGET_ARM.
Hi Philippe, it looks like this is an older patch.
Edgar, is this patch still valid?
Hi,
Yes, I think Phil is right, this works by luck and should have been
TARGET_AARCH64.
Phil, will you send a patch?
On the list:
https://lore.kernel.org/qemu-devel/[email protected]/
But IIUC since there is no vCPU emulated in HVM I wonder why the
32/64-bit distinction matters here.