From: Roman Kisel <romank@linux.microsoft.com>
To: Saurabh Singh Sengar <ssengar@linux.microsoft.com>
Cc: arnd@arndb.de, bhelgaas@google.com, bp@alien8.de,
catalin.marinas@arm.com, dave.hansen@linux.intel.com,
decui@microsoft.com, haiyangz@microsoft.com, hpa@zytor.com,
kw@linux.com, kys@microsoft.com, lenb@kernel.org,
lpieralisi@kernel.org, mingo@redhat.com, rafael@kernel.org,
robh@kernel.org, tglx@linutronix.de, wei.liu@kernel.org,
will@kernel.org, linux-acpi@vger.kernel.org,
linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
linux-hyperv@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-pci@vger.kernel.org, x86@kernel.org, apais@microsoft.com,
benhill@microsoft.com, ssengar@microsoft.com,
sunilmut@microsoft.com, vdso@hexbites.dev
Subject: Re: [PATCH v3 4/7] arm64: hyperv: Boot in a Virtual Trust Level
Date: Mon, 5 Aug 2024 08:48:05 -0700 [thread overview]
Message-ID: <97749cb2-35cb-4b54-a5c9-6cf3147c0cdd@linux.microsoft.com> (raw)
In-Reply-To: <20240805062821.GA31897@linuxonhyperv3.guj3yctzbm1etfxqx2vob5hsef.xx.internal.cloudapp.net>
On 8/4/2024 11:28 PM, Saurabh Singh Sengar wrote:
> On Fri, Jul 26, 2024 at 03:59:07PM -0700, Roman Kisel wrote:
>> To run in the VTL mode, Hyper-V drivers have to know what
>> VTL the system boots in, and the arm64/hyperv code does not
>> update the variable that stores the value.
>>
>> Update the variable to enable the Hyper-V drivers to boot
>> in the VTL mode and print the VTL the code runs in.
>>
>> Signed-off-by: Roman Kisel <romank@linux.microsoft.com>
>> ---
>> arch/arm64/hyperv/Makefile | 1 +
>> arch/arm64/hyperv/hv_vtl.c | 13 +++++++++++++
>> arch/arm64/hyperv/mshyperv.c | 4 ++++
>> arch/arm64/include/asm/mshyperv.h | 7 +++++++
>> 4 files changed, 25 insertions(+)
>> create mode 100644 arch/arm64/hyperv/hv_vtl.c
>>
>> diff --git a/arch/arm64/hyperv/Makefile b/arch/arm64/hyperv/Makefile
>> index 87c31c001da9..9701a837a6e1 100644
>> --- a/arch/arm64/hyperv/Makefile
>> +++ b/arch/arm64/hyperv/Makefile
>> @@ -1,2 +1,3 @@
>> # SPDX-License-Identifier: GPL-2.0
>> obj-y := hv_core.o mshyperv.o
>> +obj-$(CONFIG_HYPERV_VTL_MODE) += hv_vtl.o
>> diff --git a/arch/arm64/hyperv/hv_vtl.c b/arch/arm64/hyperv/hv_vtl.c
>> new file mode 100644
>> index 000000000000..38642b7b6be0
>> --- /dev/null
>> +++ b/arch/arm64/hyperv/hv_vtl.c
>> @@ -0,0 +1,13 @@
>> +// SPDX-License-Identifier: GPL-2.0
>> +/*
>> + * Copyright (C) 2024, Microsoft, Inc.
>> + *
>> + * Author : Roman Kisel <romank@linux.microsoft.com>
>> + */
>> +
>> +#include <asm/mshyperv.h>
>> +
>> +void __init hv_vtl_init_platform(void)
>> +{
>> + pr_info("Linux runs in Hyper-V Virtual Trust Level\n");
>> +}
>> diff --git a/arch/arm64/hyperv/mshyperv.c b/arch/arm64/hyperv/mshyperv.c
>> index 341f98312667..8fd04d6e4800 100644
>> --- a/arch/arm64/hyperv/mshyperv.c
>> +++ b/arch/arm64/hyperv/mshyperv.c
>> @@ -98,6 +98,10 @@ static int __init hyperv_init(void)
>> return ret;
>> }
>>
>> + /* Find the VTL */
>> + ms_hyperv.vtl = get_vtl();
>> + hv_vtl_init_platform();
>> +
>> ms_hyperv_late_init();
>>
>> hyperv_initialized = true;
>> diff --git a/arch/arm64/include/asm/mshyperv.h b/arch/arm64/include/asm/mshyperv.h
>> index a7a3586f7cb1..63d6bb6998fc 100644
>> --- a/arch/arm64/include/asm/mshyperv.h
>> +++ b/arch/arm64/include/asm/mshyperv.h
>> @@ -49,6 +49,13 @@ static inline u64 hv_get_msr(unsigned int reg)
>> ARM_SMCCC_OWNER_VENDOR_HYP, \
>> HV_SMCCC_FUNC_NUMBER)
>>
>> +#ifdef CONFIG_HYPERV_VTL_MODE
>> +void __init hv_vtl_init_platform(void);
>> +int __init hv_vtl_early_init(void);
>> +#else
>> +static inline void __init hv_vtl_init_platform(void) {}
>> +#endif
>> +
>
> These functions are defined in x86 header as well. We can move it to generic header.
>
Will do, thanks!
> - Saurabh
--
Thank you,
Roman
next prev parent reply other threads:[~2024-08-05 15:48 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-26 22:59 [PATCH v3 0/7] arm64: hyperv: Support Virtual Trust Level Boot Roman Kisel
2024-07-26 22:59 ` [PATCH v3 1/7] arm64: hyperv: Use SMC to detect hypervisor presence Roman Kisel
2024-08-03 1:21 ` Wei Liu
2024-08-05 14:53 ` Roman Kisel
2024-08-05 3:01 ` Michael Kelley
2024-08-05 16:50 ` Roman Kisel
2024-08-05 20:30 ` Michael Kelley
2024-08-05 21:44 ` Roman Kisel
2024-08-05 3:53 ` Saurabh Singh Sengar
2024-08-05 15:17 ` Roman Kisel
2024-08-05 15:46 ` Saurabh Singh Sengar
2024-08-05 15:56 ` Roman Kisel
2024-07-26 22:59 ` [PATCH v3 2/7] Drivers: hv: Enable VTL mode for arm64 Roman Kisel
2024-08-03 1:21 ` Wei Liu
2024-08-05 3:01 ` Michael Kelley
2024-08-05 4:05 ` Saurabh Singh Sengar
2024-08-05 15:24 ` Roman Kisel
2024-08-05 19:51 ` Michael Kelley
2024-08-05 22:15 ` Roman Kisel
2024-07-26 22:59 ` [PATCH v3 3/7] Drivers: hv: Provide arch-neutral implementation of get_vtl() Roman Kisel
2024-08-03 1:21 ` Wei Liu
2024-08-05 5:45 ` Saurabh Singh Sengar
2024-08-05 3:02 ` Michael Kelley
2024-08-05 16:19 ` Roman Kisel
2024-08-05 20:13 ` Michael Kelley
2024-08-05 21:55 ` Roman Kisel
2024-07-26 22:59 ` [PATCH v3 4/7] arm64: hyperv: Boot in a Virtual Trust Level Roman Kisel
2024-08-03 1:22 ` Wei Liu
2024-08-05 14:55 ` Roman Kisel
2024-08-05 3:02 ` Michael Kelley
2024-08-05 16:20 ` Roman Kisel
2024-08-05 6:28 ` Saurabh Singh Sengar
2024-08-05 15:48 ` Roman Kisel [this message]
2024-07-26 22:59 ` [PATCH v3 5/7] dt-bindings: bus: Add Hyper-V VMBus cache coherency and IRQs Roman Kisel
2024-07-27 8:53 ` Krzysztof Kozlowski
2024-07-29 16:33 ` Roman Kisel
2024-07-26 22:59 ` [PATCH v3 6/7] Drivers: hv: vmbus: Get the IRQ number from DT Roman Kisel
2024-07-27 8:56 ` Krzysztof Kozlowski
2024-07-27 9:17 ` Arnd Bergmann
2024-07-27 9:20 ` Krzysztof Kozlowski
2024-07-29 16:51 ` Roman Kisel
2024-08-05 3:03 ` Michael Kelley
2024-08-05 16:26 ` Roman Kisel
2024-07-29 16:36 ` Roman Kisel
2024-08-05 8:30 ` Saurabh Singh Sengar
2024-08-05 14:12 ` Michael Kelley
2024-08-05 15:49 ` Roman Kisel
2024-07-26 22:59 ` [PATCH v3 7/7] PCI: hv: Get vPCI MSI IRQ domain " Roman Kisel
2024-08-03 1:20 ` Wei Liu
2024-08-05 14:51 ` Roman Kisel
2024-08-05 15:59 ` Roman Kisel
2024-08-05 3:03 ` Michael Kelley
2024-08-05 16:30 ` Roman Kisel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=97749cb2-35cb-4b54-a5c9-6cf3147c0cdd@linux.microsoft.com \
--to=romank@linux.microsoft.com \
--cc=apais@microsoft.com \
--cc=arnd@arndb.de \
--cc=benhill@microsoft.com \
--cc=bhelgaas@google.com \
--cc=bp@alien8.de \
--cc=catalin.marinas@arm.com \
--cc=dave.hansen@linux.intel.com \
--cc=decui@microsoft.com \
--cc=haiyangz@microsoft.com \
--cc=hpa@zytor.com \
--cc=kw@linux.com \
--cc=kys@microsoft.com \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=lpieralisi@kernel.org \
--cc=mingo@redhat.com \
--cc=rafael@kernel.org \
--cc=robh@kernel.org \
--cc=ssengar@linux.microsoft.com \
--cc=ssengar@microsoft.com \
--cc=sunilmut@microsoft.com \
--cc=tglx@linutronix.de \
--cc=vdso@hexbites.dev \
--cc=wei.liu@kernel.org \
--cc=will@kernel.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).