Messages in this thread | | | Date | Wed, 16 Nov 2022 12:42:16 +0100 | From | Greg Kroah-Hartman <> | Subject | Re: [PATCH v4 1/1] virt: acrn: Mark the uuid field as unused |
| |
On Wed, Nov 16, 2022 at 11:22:54AM +0200, Andy Shevchenko wrote: > After the commits for userspace (see Link tags below) the uuid field is > not being used in the ACRN code. Update kernel to reflect these changes. > I.e. we do the following: > - adding a comment explaining that it's not used anymore > - replacing the specific type by a raw buffer > - updating the example code accordingly > > The advertised field confused users and actually never been used. So > the wrong part here is that kernel puts something which userspace never > used and hence this may confuse a reader of this code. > > Link: https://github.com/projectacrn/acrn-hypervisor/commit/da0d24326ed6 > Link: https://github.com/projectacrn/acrn-hypervisor/commit/bb0327e70097 > Fixes: 5b06931d7f8b ("sample/acrn: Introduce a sample of HSM ioctl interface usage") > Fixes: 9c5137aedd11 ("virt: acrn: Introduce VM management interfaces") > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > Acked-by: Rafael J. Wysocki <rafael@kernel.org> > --- > v4: added tag (Rafael), Cc'ed to Greg (missing in the previous version > by some reason) > v3: converted to Link tags (Rafael), explained what was wrong (Rafael) > v2: added tag (Fei) > > include/uapi/linux/acrn.h | 5 ++--- > samples/acrn/vm-sample.c | 3 --- > 2 files changed, 2 insertions(+), 6 deletions(-) > > diff --git a/include/uapi/linux/acrn.h b/include/uapi/linux/acrn.h > index ccf47ed92500..04fa83647ae5 100644 > --- a/include/uapi/linux/acrn.h > +++ b/include/uapi/linux/acrn.h > @@ -12,7 +12,6 @@ > #define _UAPI_ACRN_H > > #include <linux/types.h> > -#include <linux/uuid.h> > > #define ACRN_IO_REQUEST_MAX 16 > > @@ -186,7 +185,7 @@ struct acrn_ioreq_notify { > * @reserved0: Reserved and must be 0 > * @vcpu_num: Number of vCPU in the VM. Return from hypervisor. > * @reserved1: Reserved and must be 0 > - * @uuid: UUID of the VM. Pass to hypervisor directly. > + * @uuid: Reserved (used to be UUID of the VM)
If it's reserved, then don't you need to check for 0?
> * @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. > @@ -198,7 +197,7 @@ struct acrn_vm_creation { > __u16 reserved0; > __u16 vcpu_num; > __u16 reserved1; > - guid_t uuid; > + __u8 uuid[16];
You just changed the type here, so what is that going to break in userspace that depended on this being of a structure type and now it's an array?
And no other kernel changes needed? Shouldn't you warn if this field is set?
thanks,
greg k-h
| |