On Fri, May 23, 2025 at 02:55:32PM +0530, Naman Jain wrote: > > > On 5/22/2025 11:40 PM, Stanislav Kinsburskii wrote: > > On Wed, May 21, 2025 at 11:33:29AM +0530, Naman Jain wrote: > > > > > > > > > On 5/21/2025 12:25 AM, Stanislav Kinsburskii wrote: > > > > On Mon, May 19, 2025 at 10:26:42AM +0530, Naman Jain wrote: > > > > > Provide an interface for Virtual Machine Monitor like OpenVMM and its > > > > > use as OpenHCL paravisor to control VTL0 (Virtual trust Level). > > > > > Expose devices and support IOCTLs for features like VTL creation, > > > > > VTL0 memory management, context switch, making hypercalls, > > > > > mapping VTL0 address space to VTL2 userspace, getting new VMBus > > > > > messages and channel events in VTL2 etc. > > > > > > > > > > Co-developed-by: Roman Kisel <rom...@linux.microsoft.com> > > > > > Signed-off-by: Roman Kisel <rom...@linux.microsoft.com> > > > > > Co-developed-by: Saurabh Sengar <ssen...@linux.microsoft.com> > > > > > Signed-off-by: Saurabh Sengar <ssen...@linux.microsoft.com> > > > > > Reviewed-by: Roman Kisel <rom...@linux.microsoft.com> > > > > > Reviewed-by: Alok Tiwari <alok.a.tiw...@oracle.com> > > > > > Message-ID: <20250512140432.2387503-3-namj...@linux.microsoft.com> > > > > > Signed-off-by: Naman Jain <namj...@linux.microsoft.com> > > > > > --- > > > > > drivers/hv/Kconfig | 20 + > > > > > drivers/hv/Makefile | 7 +- > > > > > drivers/hv/mshv_vtl.h | 52 + > > > > > drivers/hv/mshv_vtl_main.c | 1783 > > > > > +++++++++++++++++++++++++++++++++++ > > > > > include/hyperv/hvgdk_mini.h | 81 ++ > > > > > include/hyperv/hvhdk.h | 1 + > > > > > include/uapi/linux/mshv.h | 82 ++ > > > > > 7 files changed, 2025 insertions(+), 1 deletion(-) > > > > > create mode 100644 drivers/hv/mshv_vtl.h > > > > > create mode 100644 drivers/hv/mshv_vtl_main.c > > > > > > > > > > diff --git a/drivers/hv/Kconfig b/drivers/hv/Kconfig > > > > > index eefa0b559b73..21cee5564d70 100644 > > > > > --- a/drivers/hv/Kconfig > > > > > +++ b/drivers/hv/Kconfig > > > > > @@ -72,4 +72,24 @@ config MSHV_ROOT > > > > > If unsure, say N. > > > > > +config MSHV_VTL > > > > > + tristate "Microsoft Hyper-V VTL driver" > > > > > + depends on HYPERV && X86_64 > > > > > + depends on TRANSPARENT_HUGEPAGE > > > > > > > > Why does it depend on TRANSPARENT_HUGEPAGE? > > > > > > > > > > > Let me rephrase: can this driver work without transparent huge pages? > > If yes, then it shouldn't depend on the option and rather select it. > > If not, then it should be either fixed to be able to or have an > > expalanation why this dependecy was introduced. > > No, it won't work. Reason being - we are adding support to map VTL0 address > space to a user-mode process in VTL2. VTL2 for OpenHCL makes use of Huge > pages to improve performance on VMs having large memory requirements. Thus, > we need TRANSPARENT_HUGEPAGE. > > I will add this as a comment in Kconfig. >
Then I'd suggest selecting huge pages instead of depending on them: it's kinda weird that one need to select huge pages first to be able to even find out, that there is some virtualization driver, depending on it. Thanks, Stanislav