On 26/07/2017 19:04, Mihai Donțu wrote: >> I think you should implement transactions in the protocol, so >> effectively KVMI_SET_REGISTERS would be bundled with the event response >> anyway. > > I see. Then maybe we should provide a way for commands to specify an > event ID. If zero, then the command is satisfied using data straight > from the vCPU (when making changes), otherwise a structure associated > with the event will be used as cache for all get-s/set-s and apply them > all in one go when the event reply arrives. This should work nicely > since we read a good deal of the register set anyway when sending the > event. Yes, that is okay. Just a question, why would the event ID provide more information than just the vCPU id? How can there be more than one event active on the same vCPU? Paolo