Re: [PATCH] arm64: kvm, smccc: Fix vendor uuid

From: Roman Kisel
Date: Mon Jul 21 2025 - 13:22:37 EST




On 7/21/2025 9:15 AM, Sudeep Holla wrote:
(I can't see this original patch in my mailbox, got only Marc's response)

On Mon, Jul 21, 2025 at 02:05:58PM +0100, Jack Thomson wrote:
From: Jack Thomson <jackabt@xxxxxxxxxx>

Commit 13423063c7cb ("arm64: kvm, smccc: Introduce and use API for
getting hypervisor UUID") replaced the explicit register constants
with the UUID_INIT macro. However, there is an endian issue, meaning
the UUID generated and used in the handshake didn't match UUID prior to
the commit.

The change in UUID causes the SMCCC vendor handshake to fail with older
guest kernels, meaning devices such as PTP were not available in the
guest.

This patch updates the parameters to the macro to generate a UUID which
matches the previous value, and re-establish backwards compatibility
with older guest kernels.


Nice catch. This is result of classic confusion with UUID and GUID especially
coming from Microsoft who tend to use GUID more.

Reviewed-by: Sudeep Holla <sudeep.holla@xxxxxxx>

This also makes me wonder if the initialisation in arch/arm64/hyperv/mshyperv.c
is also wrong or may be that's correct only MS guys can confirm as I couldn't
find the UUID string for that.

MUCH appreciated!! Apologies for that miss in testing of the older
kernels. I'll check on our side and will fix what needs fixing.



--
Thank you,
Roman