[dpdk-dev] [PATCH v6 02/15] vhost: add helpers for packed virtqueues

Tiwei Bie tiwei.bie at intel.com
Wed Jul 4 07:39:40 CEST 2018


On Mon, Jul 02, 2018 at 10:16:16AM +0200, Maxime Coquelin wrote:
> From: Jens Freimann <jfreimann at redhat.com>
> 
> Add some helper functions to check descriptor flags
> and check if a vring is of type packed.
> 
> Signed-off-by: Jens Freimann <jfreimann at redhat.com>
> Signed-off-by: Maxime Coquelin <maxime.coquelin at redhat.com>
> ---
>  lib/librte_vhost/vhost.h         | 6 ++++++
>  lib/librte_vhost/virtio-packed.h | 8 ++++++++
>  2 files changed, 14 insertions(+)
> 
> diff --git a/lib/librte_vhost/vhost.h b/lib/librte_vhost/vhost.h
> index cecd5c1ee..cabbc3ab7 100644
> --- a/lib/librte_vhost/vhost.h
> +++ b/lib/librte_vhost/vhost.h
> @@ -318,6 +318,12 @@ struct virtio_net {
>  	struct vhost_user_extern_ops extern_ops;
>  } __rte_cache_aligned;
>  
> +static __rte_always_inline bool
> +vq_is_packed(struct virtio_net *dev)
> +{
> +	return dev->features & (1ull << VIRTIO_F_RING_PACKED);
> +}
> +
>  #define VHOST_LOG_PAGE	4096
>  
>  /*
> diff --git a/lib/librte_vhost/virtio-packed.h b/lib/librte_vhost/virtio-packed.h
> index 744b3991b..d386cb6df 100644
> --- a/lib/librte_vhost/virtio-packed.h
> +++ b/lib/librte_vhost/virtio-packed.h
> @@ -19,4 +19,12 @@ struct vring_desc_packed {
>  	uint16_t flags;
>  };
>  
> +

There is no need to add above blank line.

> +static inline bool
> +desc_is_avail(struct vring_desc_packed *desc, bool wrap_counter)
> +{
> +	return wrap_counter == !!(desc->flags & VRING_DESC_F_AVAIL) &&
> +		wrap_counter != !!(desc->flags & VRING_DESC_F_USED);
> +}
> +
>  #endif /* __VIRTIO_PACKED_H */
> -- 
> 2.14.4
> 


More information about the dev mailing list