[PATCH v9 14/27] gunyah: vm_mgr: Add ioctls to support basic non-proxy VM boot

Srivatsa Vaddagiri quic_svaddagi at quicinc.com
Mon Jan 30 00:53:59 PST 2023


* Elliot Berman <quic_eberman at quicinc.com> [2023-01-20 14:46:13]:

> +static int gh_vm_start(struct gunyah_vm *ghvm)
> +{
> +	struct gunyah_vm_memory_mapping *mapping;
> +	u64 dtb_offset;
> +	u32 mem_handle;
> +	int ret;
> +
> +	down_write(&ghvm->status_lock);
> +	if (ghvm->vm_status != GH_RM_VM_STATUS_NO_STATE) {
> +		up_write(&ghvm->status_lock);
> +		return 0;

return -EINVAL in this case.

Additionally check if its already GH_RM_VM_STATUS_READY and return 0 in that
case.

[snip]


> +	mem_handle = mapping->parcel.mem_handle;
> +	dtb_offset = ghvm->dtb_config.gpa - mapping->guest_phys_addr;
> +
> +	ret = gh_rm_vm_configure(ghvm->rm, ghvm->vmid, ghvm->auth, mem_handle,
> +				0, 0, dtb_offset, ghvm->dtb_config.size);

Default value of auth is 0 (GH_RM_VM_AUTH_NONE). Is that what you wanted here?
Perhaps initialize default value of auth to be GH_RM_VM_AUTH_QCOM_PIL_ELF?




More information about the linux-arm-kernel mailing list