Re: [PATCH v5 06/17] virt: acrn: Introduce VM management interfaces

From: Greg Kroah-Hartman
Date: Wed Nov 04 2020 - 14:02:30 EST


On Mon, Oct 19, 2020 at 02:17:52PM +0800, shuo.a.liu@xxxxxxxxx wrote:
> --- /dev/null
> +++ b/include/uapi/linux/acrn.h
> @@ -0,0 +1,56 @@
> +/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
> +/*
> + * Userspace interface for /dev/acrn_hsm - ACRN Hypervisor Service Module
> + *
> + * This file can be used by applications that need to communicate with the HSM
> + * via the ioctl interface.
> + */
> +
> +#ifndef _UAPI_ACRN_H
> +#define _UAPI_ACRN_H
> +
> +#include <linux/types.h>
> +
> +/**
> + * struct acrn_vm_creation - Info to create a User VM
> + * @vmid: User VM ID returned from the hypervisor
> + * @reserved0: Reserved
> + * @vcpu_num: Number of vCPU in the VM. Return from hypervisor.
> + * @reserved1: Reserved
> + * @uuid: UUID of the VM. Pass to hypervisor directly.
> + * @vm_flag: Flag of the VM creating. Pass to hypervisor directly.
> + * @ioreq_buf: Service VM GPA of I/O request buffer. Pass to
> + * hypervisor directly.
> + * @cpu_affinity: CPU affinity of the VM. Pass to hypervisor directly.
> + * @reserved2: Reserved

Reserved and must be 0? What are they reserved for?

Same for all of the reserved fields, why?

> + */
> +struct acrn_vm_creation {
> + __u16 vmid;
> + __u16 reserved0;
> + __u16 vcpu_num;
> + __u16 reserved1;
> + __u8 uuid[16];

We have a userspace-visable uid structure in include/uapi/uuid.h, why
not use that?

thanks,

greg k-h