[dpdk-dev] [PATCH v6 03/10] vhost: add the inflight structure

Yu, Jin jin.yu at intel.com
Mon Sep 9 05:04:28 CEST 2019


> -----Original Message-----
> From: Maxime Coquelin [mailto:maxime.coquelin at redhat.com]
> Sent: Saturday, September 7, 2019 12:46 AM
> To: Yu, Jin <jin.yu at intel.com>; dev at dpdk.org
> Cc: Liu, Changpeng <changpeng.liu at intel.com>; Bie, Tiwei
> <tiwei.bie at intel.com>; Wang, Zhihong <zhihong.wang at intel.com>; Lin Li
> <lilin24 at baidu.com>; Xun Ni <nixun at baidu.com>; Yu Zhang
> <zhangyu31 at baidu.com>
> Subject: Re: [PATCH v6 03/10] vhost: add the inflight structure
> 
> 
> 
> On 8/29/19 4:12 PM, JinYu wrote:
> > This patch adds the inflight queue region structure include the split
> > and packed.
> >
> > Signed-off-by: Lin Li <lilin24 at baidu.com>
> > Signed-off-by: Xun Ni <nixun at baidu.com>
> > Signed-off-by: Yu Zhang <zhangyu31 at baidu.com>
> > Signed-off-by: Jin Yu <jin.yu at intel.com>
> > ---
> >  lib/librte_vhost/rte_vhost.h | 43
> > ++++++++++++++++++++++++++++++++++++
> >  1 file changed, 43 insertions(+)
> >
> > diff --git a/lib/librte_vhost/rte_vhost.h
> > b/lib/librte_vhost/rte_vhost.h index 7257f0965..1d6b7a1cf 100644
> > --- a/lib/librte_vhost/rte_vhost.h
> > +++ b/lib/librte_vhost/rte_vhost.h
> > @@ -102,6 +102,49 @@ struct rte_vhost_memory {
> >  	struct rte_vhost_mem_region regions[];  };
> >
> > +struct inflight_desc_split {
> 
> the struct names should be prefixed with rte_ as it is part of the API.
Got it.
> 
> > +	uint8_t inflight;
> > +	uint8_t padding[5];
> > +	uint16_t next;
> > +	uint64_t counter;
> > +};
> > +
> > +struct inflight_info_split {
> > +	uint64_t features;
> > +	uint16_t version;
> > +	uint16_t desc_num;
> > +	uint16_t last_inflight_io;
> > +	uint16_t used_idx;
> > +	struct inflight_desc_split desc[0];
> > +};
> > +
> > +struct inflight_desc_packed {
> > +	uint8_t inflight;
> > +	uint8_t padding;
> > +	uint16_t next;
> > +	uint16_t last;
> > +	uint16_t num;
> > +	uint64_t counter;
> > +	uint16_t id;
> > +	uint16_t flags;
> > +	uint32_t len;
> > +	uint64_t addr;
> > +	};
> > +
> > +struct inflight_info_packed {
> > +	uint64_t features;
> > +	uint16_t version;
> > +	uint16_t desc_num;
> > +	uint16_t free_head;
> > +	uint16_t old_free_head;
> > +	uint16_t used_idx;
> > +	uint16_t old_used_idx;
> > +	uint8_t used_wrap_counter;
> > +	uint8_t old_used_wrap_counter;
> > +	uint8_t padding[7];
> > +	struct inflight_desc_packed desc[0]; };
> > +
> >  struct rte_vhost_vring {
> >  	union {
> >  		struct vring_desc *desc;
> >


More information about the dev mailing list