Re: [PATCH RFC 07/13] vhost: format-independent API for used buffers

From: Jason Wang
Date: Thu Jun 04 2020 - 05:18:15 EST



On 2020/6/4 äå5:03, Michael S. Tsirkin wrote:
static bool vhost_notify(struct vhost_dev *dev, struct vhost_virtqueue *vq)
{
__u16 old, new;
diff --git a/drivers/vhost/vhost.h b/drivers/vhost/vhost.h
index a67bda9792ec..6c10e99ff334 100644
--- a/drivers/vhost/vhost.h
+++ b/drivers/vhost/vhost.h
@@ -67,6 +67,13 @@ struct vhost_desc {
u16 id;
};
+struct vhost_buf {
+ u32 out_len;
+ u32 in_len;
+ u16 descs;
+ u16 id;
+};
So it looks to me the struct vhost_buf can work for both split ring and
packed ring.

If this is true, we'd better make struct vhost_desc work for both.

Thanks
Both vhost_desc and vhost_buf can work for split and packed.

Do you mean we should add packed ring support based on this?
For sure, this is one of the motivators for the patchset.


Somehow. But the reason I ask is that I see "split" suffix is used in patch 1 as:

peek_split_desc()
pop_split_desc()
push_split_desc()

But that suffix is not used for the new used ring API invented in this patch.

Thanks