mbox series

[0/3] Introduce some interfaces for ACRN hypervisor HSM

Message ID 20210820060306.10682-1-fei1.li@intel.com
Headers show
Series Introduce some interfaces for ACRN hypervisor HSM | expand

Message

Fei Li Aug. 20, 2021, 6:03 a.m. UTC
Add some new interfaces for ACRN hypervisor HSM driver:
  - MMIO device passthrough
  - virtual device creating/destroying
  - platform information fetching from the hypervisor

Shuo Liu (3):
  virt: acrn: Introduce interfaces for MMIO device passthrough
  virt: acrn: Introduce interfaces for virtual device
    creating/destroying
  virt: acrn: Introduce interface to fetch platform info from the
    hypervisor

 drivers/virt/acrn/hsm.c       | 102 ++++++++++++++++++++++++++++++
 drivers/virt/acrn/hypercall.h |  64 +++++++++++++++++++
 include/uapi/linux/acrn.h     | 114 ++++++++++++++++++++++++++++++++++
 3 files changed, 280 insertions(+)


base-commit: 7c60610d476766e128cc4284bb6349732cbd6606

Comments

Greg Kroah-Hartman Aug. 21, 2021, 11:49 a.m. UTC | #1
On Fri, Aug 20, 2021 at 02:03:03PM +0800, Fei Li wrote:
> Add some new interfaces for ACRN hypervisor HSM driver:

>   - MMIO device passthrough

>   - virtual device creating/destroying

>   - platform information fetching from the hypervisor

> 

> Shuo Liu (3):

>   virt: acrn: Introduce interfaces for MMIO device passthrough

>   virt: acrn: Introduce interfaces for virtual device

>     creating/destroying

>   virt: acrn: Introduce interface to fetch platform info from the

>     hypervisor

> 

>  drivers/virt/acrn/hsm.c       | 102 ++++++++++++++++++++++++++++++

>  drivers/virt/acrn/hypercall.h |  64 +++++++++++++++++++

>  include/uapi/linux/acrn.h     | 114 ++++++++++++++++++++++++++++++++++

>  3 files changed, 280 insertions(+)

> 

> 

> base-commit: 7c60610d476766e128cc4284bb6349732cbd6606

> -- 

> 2.25.1

> 


<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read:
    https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
for how to do this properly.

</formletter>
Greg Kroah-Hartman Aug. 21, 2021, 11:49 a.m. UTC | #2
On Fri, Aug 20, 2021 at 02:03:04PM +0800, Fei Li wrote:
> From: Shuo Liu <shuo.a.liu@intel.com>

> 

> MMIO device passthrough enables an OS in a virtual machine to directly

> access a MMIO device in the host. It promises almost the native

> performance, which is required in performance-critical scenarios of

> ACRN.

> 

> HSM provides the following ioctls:

>   - Assign - ACRN_IOCTL_ASSIGN_MMIODEV

>     Pass data struct acrn_mmiodev from userspace to the hypervisor, and

>     inform the hypervisor to assign a MMIO device to a User VM.

> 

>   - De-assign - ACRN_IOCTL_DEASSIGN_PCIDEV

>     Pass data struct acrn_mmiodev from userspace to the hypervisor, and

>     inform the hypervisor to de-assign a MMIO device from a User VM.

> 

> Signed-off-by: Shuo Liu <shuo.a.liu@intel.com>

> Signed-off-by: Fei Li <fei1.li@intel.com>

> ---

>  drivers/virt/acrn/hsm.c       | 25 +++++++++++++++++++++++++

>  drivers/virt/acrn/hypercall.h | 26 ++++++++++++++++++++++++++

>  include/uapi/linux/acrn.h     | 28 ++++++++++++++++++++++++++++

>  3 files changed, 79 insertions(+)

> 


<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read:
    https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
for how to do this properly.

</formletter>
Greg Kroah-Hartman Aug. 21, 2021, 11:49 a.m. UTC | #3
On Fri, Aug 20, 2021 at 02:03:06PM +0800, Fei Li wrote:
> From: Shuo Liu <shuo.a.liu@intel.com>

> 

> The ACRN hypervisor configures the guest VMs information statically and

> builds guest VM configurations within the hypervisor. There are also

> some hardware information are stored in the hypervisor in boot stage.

> The ACRN userspace needs platform information to do the orchestration.

> 

> The HSM provides the following interface for the ACRN userspace to fetch

> platform info:

>  - ACRN_IOCTL_GET_PLATFORM_INFO

>    Exchange the basic information by a struct acrn_platform_info. If the

>    ACRN userspace provides a userspace buffer (whose vma filled in

>    vm_configs_addr), the HSM creates a bounce buffer (kmalloced for

>    continuous memory region) to fetch VM configurations data from the

>    hypervisor.

> 

> Signed-off-by: Shuo Liu <shuo.a.liu@intel.com>

> Signed-off-by: Fei Li <fei1.li@intel.com>

> ---

>  drivers/virt/acrn/hsm.c       | 53 +++++++++++++++++++++++++++++++++++

>  drivers/virt/acrn/hypercall.h | 12 ++++++++

>  include/uapi/linux/acrn.h     | 44 +++++++++++++++++++++++++++++

>  3 files changed, 109 insertions(+)

: 

<formletter>

This is not the correct way to submit patches for inclusion in the
stable kernel tree.  Please read:
    https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html
for how to do this properly.

</formletter>