-
Notifications
You must be signed in to change notification settings - Fork 67
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add packed ring layout support #3
Labels
virtio-v1.1-cs01
Fixed in previous specification release.
Comments
BALLOT CREATED AT URL: https://www.oasis-open.org/committees/ballot.php?id=3177 |
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
Will be easier to manage this way. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
virtqueue operation description is specific to the virtqueue format. Move it out to split-ring.tex and update all references. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
Document buffer used len and use that terminology everywhere in the generic section. Further, drop the 'used ring' terminology and just say virtqueue. Reviewed-by: Cornelia Huck <cohuck@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
Replace descriptor table/available ring/used ring with descriptor area/driver area/device area in all transports. Document what's in which area. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
Update generic text to talk about available/used buffers, not rings. Move some split-ring specific text to the correct section. Update conformance section with link to the new conformance clause. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
Performance analysis of this is in my kvm forum 2016 presentation. The idea is to have a r/w descriptor in a ring structure, replacing the used and available ring, index and descriptor buffer. This is also easier for devices to implement than the 1.0 layout. Several more enhancements will be necessary to actually make this efficient for devices to use. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Cornelia Huck <cohuck@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
Using descriptors in-order is sometimes beneficial. Add an option for that - per-format detail allowing more optimizations will be added by follow-up patches. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
Support in-order requests for packed rings. This allows selective write-out of used descriptors. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
mstsirkin
added a commit
that referenced
this issue
Mar 20, 2018
For a split ring, require that drivers use descriptors in order too. This allows devices to skip reading the available ring. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Approved-by: https://www.oasis-open.org/apps/org/workgroup/virtio/ballot.php?id=3177 Fixes: #3
Resolved-by: commit ad89d36 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This is a proposal to implement an alternative ring layout.
The idea is to have a r/w descriptor in a ring structure, replacing the used
and available ring, index and descriptor buffer.
This is more efficient and easier for devices to implement than the 1.0 layout.
Additionally, a new feature flag is proposed that makes devices promise to process descriptors
in-order. With this feature drivers can also be made simpler and more efficient.
Discussion and performance analysis of this is in Michael Tsirkin's kvm forum 2016 and 2017 presentations.
Proposal: https://lists.oasis-open.org/archives/virtio/201803/msg00041.html
Note: should this proposal be accepted and approved, one or more
claims disclosed to the TC admin and listed on the Virtio TC
IPR page https://github.com/oasis-tcs/virtio-admin/blob/master/IPR.md
might become Essential Claims.
The text was updated successfully, but these errors were encountered: