search for: virtio_f_in_order

Displaying 20 results from an estimated 29 matches for "virtio_f_in_order".

2018 Nov 23
5
[PATCH net-next 0/3] basic in order support for vhost_net
Hi: This series implement basic in order feature support for vhost_net. This feature requires both driver and device to use descriptors in order which can simplify the implementation and optimizaton for both side. The series also implement a simple optimization that avoid read available ring. Test shows 10% performance improvement. More optimizations could be done on top. Jason Wang (3):
2018 May 10
2
[PATCH v1] virtio: support VIRTIO_F_IO_BARRIER
...> In 1.0 it says: > > 24 to 32 > Feature bits reserved for extensions to the queue and feature negotiation mechanisms > > This information is out-of-date. > No. In the latest spec draft, it's 24 to 33. And it becomes out-of-date since VIRTIO_F_RING_PACKED(34) and VIRTIO_F_IN_ORDER(35) were introduced. Do you want me to update it in the IO_BARRIER patch or do you want me to update it in a new patch? Best regards, Tiwei Bie
2018 May 10
2
[PATCH v1] virtio: support VIRTIO_F_IO_BARRIER
...> In 1.0 it says: > > 24 to 32 > Feature bits reserved for extensions to the queue and feature negotiation mechanisms > > This information is out-of-date. > No. In the latest spec draft, it's 24 to 33. And it becomes out-of-date since VIRTIO_F_RING_PACKED(34) and VIRTIO_F_IN_ORDER(35) were introduced. Do you want me to update it in the IO_BARRIER patch or do you want me to update it in a new patch? Best regards, Tiwei Bie
2018 Nov 23
1
[PATCH net-next 3/3] vhost: don't touch avail ring if in_order is negotiated
...81a66d34..c8be151bc897 100644 > --- a/drivers/vhost/vhost.c > +++ b/drivers/vhost/vhost.c > @@ -2002,6 +2002,7 @@ int vhost_get_vq_desc(struct vhost_virtqueue *vq, > __virtio16 avail_idx; > __virtio16 ring_head; > int ret, access; > + bool in_order = vhost_has_feature(vq, VIRTIO_F_IN_ORDER); > > /* Check it isn't doing very strange things with descriptor numbers. */ > last_avail_idx = vq->last_avail_idx; > @@ -2034,15 +2035,19 @@ int vhost_get_vq_desc(struct vhost_virtqueue *vq, > > /* Grab the next descriptor number they're advertising, and inc...
2018 Nov 23
0
[PATCH net-next 2/3] vhost_net: support in order feature
.../vhost/net.c @@ -74,7 +74,8 @@ enum { VHOST_NET_FEATURES = VHOST_FEATURES | (1ULL << VHOST_NET_F_VIRTIO_NET_HDR) | (1ULL << VIRTIO_NET_F_MRG_RXBUF) | - (1ULL << VIRTIO_F_IOMMU_PLATFORM) + (1ULL << VIRTIO_F_IOMMU_PLATFORM) | + (1ULL << VIRTIO_F_IN_ORDER) }; enum { @@ -971,7 +972,8 @@ static void handle_tx(struct vhost_net *net) vhost_disable_notify(&net->dev, vq); vhost_net_disable_vq(net, vq); - if (vhost_sock_zcopy(sock)) + if (vhost_sock_zcopy(sock) && + !vhost_has_feature(vq, VIRTIO_F_IN_ORDER)) handle_tx_zeroco...
2018 Nov 23
1
[PATCH net-next 2/3] vhost_net: support in order feature
...enum { > VHOST_NET_FEATURES = VHOST_FEATURES | > (1ULL << VHOST_NET_F_VIRTIO_NET_HDR) | > (1ULL << VIRTIO_NET_F_MRG_RXBUF) | > - (1ULL << VIRTIO_F_IOMMU_PLATFORM) > + (1ULL << VIRTIO_F_IOMMU_PLATFORM) | > + (1ULL << VIRTIO_F_IN_ORDER) > }; > > enum { > @@ -971,7 +972,8 @@ static void handle_tx(struct vhost_net *net) > vhost_disable_notify(&net->dev, vq); > vhost_net_disable_vq(net, vq); > > - if (vhost_sock_zcopy(sock)) > + if (vhost_sock_zcopy(sock) && > + !vhost_has_f...
2018 Feb 27
3
[PATCH RFC 1/2] virtio: introduce packed ring defines
...port for the packed virtqueue layout. */ >+#define VIRTIO_F_RING_PACKED 34 Spec says VIRTIO_F_PACKED_RING not RING_PACKED >+ >+/* >+ * This feature indicates that all buffers are used by the device >+ * in the same order in which they have been made available. >+ */ >+#define VIRTIO_F_IN_ORDER 35 >+ >+/* >+ * This feature indicates that drivers pass extra data (besides >+ * identifying the Virtqueue) in their device notifications. >+ */ >+#define VIRTIO_F_NOTIFICATION_DATA 36 >+ > #endif /* _UAPI_LINUX_VIRTIO_CONFIG_H */ >diff --git a/include/uapi/linux/virtio...
2018 May 10
0
[virtio-dev] Re: [PATCH v1] virtio: support VIRTIO_F_IO_BARRIER
...32 > > Feature bits reserved for extensions to the queue and feature negotiation mechanisms > > > > This information is out-of-date. > > > > No. In the latest spec draft, it's 24 to 33. And it > becomes out-of-date since VIRTIO_F_RING_PACKED(34) > and VIRTIO_F_IN_ORDER(35) were introduced. Do you > want me to update it in the IO_BARRIER patch or do > you want me to update it in a new patch? Please update it to 37 in the IO_BARRIER patch. Stefan -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: applicat...
2018 Nov 23
0
[PATCH net-next 3/3] vhost: don't touch avail ring if in_order is negotiated
...b/drivers/vhost/vhost.c index 3a5f81a66d34..c8be151bc897 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -2002,6 +2002,7 @@ int vhost_get_vq_desc(struct vhost_virtqueue *vq, __virtio16 avail_idx; __virtio16 ring_head; int ret, access; + bool in_order = vhost_has_feature(vq, VIRTIO_F_IN_ORDER); /* Check it isn't doing very strange things with descriptor numbers. */ last_avail_idx = vq->last_avail_idx; @@ -2034,15 +2035,19 @@ int vhost_get_vq_desc(struct vhost_virtqueue *vq, /* Grab the next descriptor number they're advertising, and increment * the index we'v...
2018 Feb 23
0
[PATCH RFC 1/2] virtio: introduce packed ring defines
.... */ #define VIRTIO_F_IOMMU_PLATFORM 33 + +/* This feature indicates support for the packed virtqueue layout. */ +#define VIRTIO_F_RING_PACKED 34 + +/* + * This feature indicates that all buffers are used by the device + * in the same order in which they have been made available. + */ +#define VIRTIO_F_IN_ORDER 35 + +/* + * This feature indicates that drivers pass extra data (besides + * identifying the Virtqueue) in their device notifications. + */ +#define VIRTIO_F_NOTIFICATION_DATA 36 + #endif /* _UAPI_LINUX_VIRTIO_CONFIG_H */ diff --git a/include/uapi/linux/virtio_ring.h b/include/uapi/linux/virtio_...
2018 May 04
2
[PATCH v1] virtio: support VIRTIO_F_IO_BARRIER
This patch introduces the support for VIRTIO_F_IO_BARRIER. When this feature is negotiated, driver will use the barriers suitable for hardware devices. Signed-off-by: Tiwei Bie <tiwei.bie at intel.com> --- This patch depends on below proposal for virtio-spec: https://lists.oasis-open.org/archives/virtio-dev/201805/msg00019.html This patch also depends on below patch:
2018 May 03
6
[RFC] virtio: support VIRTIO_F_IO_BARRIER
This patch introduces the support for VIRTIO_F_IO_BARRIER. When this feature is negotiated, driver will use the barriers suitable for hardware devices. Signed-off-by: Tiwei Bie <tiwei.bie at intel.com> --- drivers/virtio/virtio_ring.c | 5 +++++ include/uapi/linux/virtio_config.h | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/drivers/virtio/virtio_ring.c
2018 May 03
6
[RFC] virtio: support VIRTIO_F_IO_BARRIER
This patch introduces the support for VIRTIO_F_IO_BARRIER. When this feature is negotiated, driver will use the barriers suitable for hardware devices. Signed-off-by: Tiwei Bie <tiwei.bie at intel.com> --- drivers/virtio/virtio_ring.c | 5 +++++ include/uapi/linux/virtio_config.h | 8 +++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/drivers/virtio/virtio_ring.c
2018 Feb 14
6
[PATCH RFC 0/2] Packed ring for vhost
Hi all: This RFC implement a subset of packed ring which was described at https://github.com/oasis-tcs/virtio-docs/blob/master/virtio-v1.1-packed-wd07.pdf . The code were tested with pmd implement by Jens at http://dpdk.org/ml/archives/dev/2018-January/089417.html. Minor change was needed for pmd codes to kick virtqueue since it assumes a busy polling backend. Test were done between localhost
2018 Feb 14
6
[PATCH RFC 0/2] Packed ring for vhost
Hi all: This RFC implement a subset of packed ring which was described at https://github.com/oasis-tcs/virtio-docs/blob/master/virtio-v1.1-packed-wd07.pdf . The code were tested with pmd implement by Jens at http://dpdk.org/ml/archives/dev/2018-January/089417.html. Minor change was needed for pmd codes to kick virtqueue since it assumes a busy polling backend. Test were done between localhost
2018 Feb 23
5
[PATCH RFC 0/2] Packed ring for virtio
Hello everyone, This RFC implements a subset of packed ring which is described at https://github.com/oasis-tcs/virtio-docs/blob/master/virtio-v1.1-packed-wd08.pdf The code was tested with DPDK vhost (testpmd/vhost-PMD) implemented by Jens at http://dpdk.org/ml/archives/dev/2018-January/089417.html Minor changes are needed for the vhost code, e.g. to kick the guest. It's not a complete
2018 Apr 10
0
[RFC v2] virtio: support packed ring
...gt; + > +/* This feature indicates support for the packed virtqueue layout. */ > +#define VIRTIO_F_RING_PACKED 34 > + > +/* > + * This feature indicates that all buffers are used by the device > + * in the same order in which they have been made available. > + */ > +#define VIRTIO_F_IN_ORDER 35 > + > #endif /* _UAPI_LINUX_VIRTIO_CONFIG_H */ > diff --git a/include/uapi/linux/virtio_ring.h b/include/uapi/linux/virtio_ring.h > index 6d5d5faa989b..735d4207c988 100644 > --- a/include/uapi/linux/virtio_ring.h > +++ b/include/uapi/linux/virtio_ring.h > @@ -44,6 +44,9 @...
2018 Apr 13
0
[RFC v2] virtio: support packed ring
...gt; + > +/* This feature indicates support for the packed virtqueue layout. */ > +#define VIRTIO_F_RING_PACKED 34 > + > +/* > + * This feature indicates that all buffers are used by the device > + * in the same order in which they have been made available. > + */ > +#define VIRTIO_F_IN_ORDER 35 > + > #endif /* _UAPI_LINUX_VIRTIO_CONFIG_H */ > diff --git a/include/uapi/linux/virtio_ring.h b/include/uapi/linux/virtio_ring.h > index 6d5d5faa989b..735d4207c988 100644 > --- a/include/uapi/linux/virtio_ring.h > +++ b/include/uapi/linux/virtio_ring.h > @@ -44,6 +44,9 @...
2018 Apr 01
8
[RFC v2] virtio: support packed ring
.... */ #define VIRTIO_F_IOMMU_PLATFORM 33 + +/* This feature indicates support for the packed virtqueue layout. */ +#define VIRTIO_F_RING_PACKED 34 + +/* + * This feature indicates that all buffers are used by the device + * in the same order in which they have been made available. + */ +#define VIRTIO_F_IN_ORDER 35 + #endif /* _UAPI_LINUX_VIRTIO_CONFIG_H */ diff --git a/include/uapi/linux/virtio_ring.h b/include/uapi/linux/virtio_ring.h index 6d5d5faa989b..735d4207c988 100644 --- a/include/uapi/linux/virtio_ring.h +++ b/include/uapi/linux/virtio_ring.h @@ -44,6 +44,9 @@ /* This means the buffer contains...
2018 Apr 01
8
[RFC v2] virtio: support packed ring
.... */ #define VIRTIO_F_IOMMU_PLATFORM 33 + +/* This feature indicates support for the packed virtqueue layout. */ +#define VIRTIO_F_RING_PACKED 34 + +/* + * This feature indicates that all buffers are used by the device + * in the same order in which they have been made available. + */ +#define VIRTIO_F_IN_ORDER 35 + #endif /* _UAPI_LINUX_VIRTIO_CONFIG_H */ diff --git a/include/uapi/linux/virtio_ring.h b/include/uapi/linux/virtio_ring.h index 6d5d5faa989b..735d4207c988 100644 --- a/include/uapi/linux/virtio_ring.h +++ b/include/uapi/linux/virtio_ring.h @@ -44,6 +44,9 @@ /* This means the buffer contains...