Commit 666834c4 authored by Shuo Liu's avatar Shuo Liu Committed by Greg Kroah-Hartman
Browse files

virt: acrn: Introduce ACRN HSM basic driver



ACRN Hypervisor Service Module (HSM) is a kernel module in Service VM
which communicates with ACRN userspace through ioctls and talks to ACRN
Hypervisor through hypercalls.

Add a basic HSM driver which allows Service VM userspace to communicate
with ACRN. The following patches will add more ioctls, guest VM memory
mapping caching, I/O request processing, ioeventfd and irqfd into this
module. HSM exports a char device interface (/dev/acrn_hsm) to userspace.

Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Zhi Wang <zhi.a.wang@intel.com>
Cc: Zhenyu Wang <zhenyuw@linux.intel.com>
Cc: Yu Wang <yu1.wang@intel.com>
Cc: Reinette Chatre <reinette.chatre@intel.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: default avatarReinette Chatre <reinette.chatre@intel.com>
Signed-off-by: default avatarShuo Liu <shuo.a.liu@intel.com>
Link: https://lore.kernel.org/r/20210207031040.49576-6-shuo.a.liu@intel.com


Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 8a0a8719
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -442,6 +442,7 @@ L: acrn-dev@lists.projectacrn.org
S:	Supported
W:	https://projectacrn.org
F:	Documentation/virt/acrn/
F:	drivers/virt/acrn/
AD1889 ALSA SOUND DRIVER
L:	linux-parisc@vger.kernel.org
+2 −0
Original line number Diff line number Diff line
@@ -34,4 +34,6 @@ config FSL_HV_MANAGER
source "drivers/virt/vboxguest/Kconfig"

source "drivers/virt/nitro_enclaves/Kconfig"

source "drivers/virt/acrn/Kconfig"
endif
+1 −0
Original line number Diff line number Diff line
@@ -7,3 +7,4 @@ obj-$(CONFIG_FSL_HV_MANAGER) += fsl_hypervisor.o
obj-y				+= vboxguest/

obj-$(CONFIG_NITRO_ENCLAVES)	+= nitro_enclaves/
obj-$(CONFIG_ACRN_HSM)		+= acrn/
+14 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
config ACRN_HSM
	tristate "ACRN Hypervisor Service Module"
	depends on ACRN_GUEST
	help
	  ACRN Hypervisor Service Module (HSM) is a kernel module which
	  communicates with ACRN userspace through ioctls and talks to
	  the ACRN Hypervisor through hypercalls. HSM will only run in
	  a privileged management VM, called Service VM, to manage User
	  VMs and do I/O emulation. Not required for simply running
	  under ACRN as a User VM.

	  To compile as a module, choose M, the module will be called
	  acrn. If unsure, say N.
+3 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
obj-$(CONFIG_ACRN_HSM)	:= acrn.o
acrn-y := hsm.o
Loading