Message ID | cover.1563293545.git.ppircalabu@bitdefender.com (mailing list archive) |
---|---|
Headers | show |
Series | Per vcpu vm_event channels | expand |
On Tue, Jul 16, 2019 at 11:06 AM Petre Pircalabu <ppircalabu@bitdefender.com> wrote: > > This patchset adds a new mechanism of sending synchronous vm_event > requests and handling vm_event responses without using a ring. > As each synchronous request pauses the vcpu until the corresponding > response is handled, it can be stored in a slotted memory buffer > (one per vcpu) shared between the hypervisor and the controlling domain. > > The main advantages of this approach are: > * the ability to dynamicaly allocate the necessary memory used to hold > the requests/responses (the size of vm_event_request_t/vm_event_response_t > can grow unrestricted by the ring's one page limitation) > * the ring's waitqueue logic is unnecessary in this case because the > vcpu sending the request is blocked until a response is received. Could you please push a git branch for this somewhere? Thanks, Tamas
On Tue, 2019-07-16 at 14:45 -0600, Tamas K Lengyel wrote: > On Tue, Jul 16, 2019 at 11:06 AM Petre Pircalabu > <ppircalabu@bitdefender.com> wrote: > > > > This patchset adds a new mechanism of sending synchronous vm_event > > requests and handling vm_event responses without using a ring. > > As each synchronous request pauses the vcpu until the corresponding > > response is handled, it can be stored in a slotted memory buffer > > (one per vcpu) shared between the hypervisor and the controlling > > domain. > > > > The main advantages of this approach are: > > * the ability to dynamicaly allocate the necessary memory used to > > hold > > the requests/responses (the size of > > vm_event_request_t/vm_event_response_t > > can grow unrestricted by the ring's one page limitation) > > * the ring's waitqueue logic is unnecessary in this case because > > the > > vcpu sending the request is blocked until a response is received. > > Could you please push a git branch for this somewhere? > > Thanks, > Tamas I've pushed this changes to my github xen fork: https://github.com/petrepircalabu/xen/tree/vm_event_ng/devel The tag for patchset is per_cpu_vm_event_channels_v2. Many thanks for your support, Petre