linux-stable/include/uapi
Dave Martin 7dd32a0d01 KVM: arm/arm64: Add KVM_ARM_VCPU_FINALIZE ioctl
Some aspects of vcpu configuration may be too complex to be
completed inside KVM_ARM_VCPU_INIT.  Thus, there may be a
requirement for userspace to do some additional configuration
before various other ioctls will work in a consistent way.

In particular this will be the case for SVE, where userspace will
need to negotiate the set of vector lengths to be made available to
the guest before the vcpu becomes fully usable.

In order to provide an explicit way for userspace to confirm that
it has finished setting up a particular vcpu feature, this patch
adds a new ioctl KVM_ARM_VCPU_FINALIZE.

When userspace has opted into a feature that requires finalization,
typically by means of a feature flag passed to KVM_ARM_VCPU_INIT, a
matching call to KVM_ARM_VCPU_FINALIZE is now required before
KVM_RUN or KVM_GET_REG_LIST is allowed.  Individual features may
impose additional restrictions where appropriate.

No existing vcpu features are affected by this, so current
userspace implementations will continue to work exactly as before,
with no need to issue KVM_ARM_VCPU_FINALIZE.

As implemented in this patch, KVM_ARM_VCPU_FINALIZE is currently a
placeholder: no finalizable features exist yet, so ioctl is not
required and will always yield EINVAL.  Subsequent patches will add
the finalization logic to make use of this ioctl for SVE.

No functional change for existing userspace.

Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Reviewed-by: Julien Thierry <julien.thierry@arm.com>
Tested-by: zhang.lei <zhang.lei@jp.fujitsu.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2019-03-29 14:41:54 +00:00
..
asm-generic Kbuild updates for v5.1 (2nd) 2019-03-17 13:25:26 -07:00
drm Merge branch 'drm-next-5.1' of git://people.freedesktop.org/~agd5f/linux into drm-next 2019-02-22 15:56:42 +10:00
linux KVM: arm/arm64: Add KVM_ARM_VCPU_FINALIZE ioctl 2019-03-29 14:41:54 +00:00
misc habanalabs: add comments in uapi/misc/habanalabs.h 2019-02-28 13:06:09 +01:00
mtd ubi: Expose the bitrot interface 2019-02-24 11:40:45 +01:00
rdma RDMA/core: Add RDMA_NLDEV_CMD_NEWLINK/DELLINK support 2019-02-19 20:52:19 -07:00
scsi scsi: ufs: fix integer type usage in uapi header 2018-10-15 22:44:30 -04:00
sound ALSA: firewire-tascam: notify events of change of state for userspace applications 2018-11-23 15:31:15 +01:00
video
xen xen/gntdev: Add initial support for dma-buf UAPI 2018-07-26 23:05:14 -04:00