This looks good to me.OK. How about just say:Yes, thereturn code of the GetQuote TDVMCALL.+via the same buffer. The 'ret' field represents the return value.return value of the GetQuote TDVMCALL?
Because only userspace knows whether the request has been queued successfully.The userspaceI don't quite follow. Why userspace should "update" the return value?
+should update the return value before resuming the vCPU according to TDX GHCI
+spec.
According to GHCI, TDG.VP.VMCALL<GetQuote> API allows one TD to issue multiple
requests. This is implementation specific as to how many concurrent requests
are allowed. The TD should be able to handle TDG.VP.VMCALL_RETRY if it chooses
to issue multiple requests simultaneously.
So the userspace may set the return code as TDG.VP.VMCALL_RETRY.
The 'ret' field represents the return value of the GetQuote request. KVM only
bridges the request to userspace VMM after sanity checks, and the userspace VMM
is responsible for setting up the return value since only userspace knows
whether the request has been queued successfully or not.