search for: vring_union

Displaying 20 results from an estimated 27 matches for "vring_union".

2018 Sep 12
1
[PATCH net-next v2 2/5] virtio_ring: support creating packed ring
...nst char *name) > > > { > > > - struct vring vring; > > > - vring_init(&vring, num, pages, vring_align); > > > - return __vring_new_virtqueue(index, vring, vdev, weak_barriers, context, > > > - notify, callback, name); > > > + union vring_union vring; > > > + bool packed; > > > + > > > + packed = virtio_has_feature(vdev, VIRTIO_F_RING_PACKED); > > > + if (packed) > > > + vring_init_packed(&vring.vring_packed, num, pages, vring_align); > > > + else > > > + vring_init(&amp...
2018 Sep 07
3
[PATCH net-next v2 2/5] virtio_ring: support creating packed ring
...} > EXPORT_SYMBOL_GPL(virtqueue_detach_unused_buf); > > @@ -954,7 +1166,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) > EXPORT_SYMBOL_GPL(vring_interrupt); > > struct virtqueue *__vring_new_virtqueue(unsigned int index, > - struct vring vring, > + union vring_union vring, > + bool packed, > struct virtio_device *vdev, > bool weak_barriers, > bool context, > @@ -962,19 +1175,22 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, > void (*callback)(struct virtqueue *), > const char *name) > {...
2018 Sep 07
3
[PATCH net-next v2 2/5] virtio_ring: support creating packed ring
...} > EXPORT_SYMBOL_GPL(virtqueue_detach_unused_buf); > > @@ -954,7 +1166,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) > EXPORT_SYMBOL_GPL(vring_interrupt); > > struct virtqueue *__vring_new_virtqueue(unsigned int index, > - struct vring vring, > + union vring_union vring, > + bool packed, > struct virtio_device *vdev, > bool weak_barriers, > bool context, > @@ -962,19 +1175,22 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, > void (*callback)(struct virtqueue *), > const char *name) > {...
2018 Sep 10
0
[PATCH net-next v2 2/5] virtio_ring: support creating packed ring
...*vq), > > const char *name) > > { > > - struct vring vring; > > - vring_init(&vring, num, pages, vring_align); > > - return __vring_new_virtqueue(index, vring, vdev, weak_barriers, context, > > - notify, callback, name); > > + union vring_union vring; > > + bool packed; > > + > > + packed = virtio_has_feature(vdev, VIRTIO_F_RING_PACKED); > > + if (packed) > > + vring_init_packed(&vring.vring_packed, num, pages, vring_align); > > + else > > + vring_init(&vring.vring_split, num, pages, vri...
2018 Mar 16
2
[PATCH RFC 2/2] virtio_ring: support packed ring
...ng.num)); > > END_USE(vq); > return NULL; > @@ -957,7 +1423,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) > EXPORT_SYMBOL_GPL(vring_interrupt); > > struct virtqueue *__vring_new_virtqueue(unsigned int index, > - struct vring vring, > + union vring_union vring, > + bool packed, > struct virtio_device *vdev, > bool weak_barriers, > bool context, > @@ -965,19 +1432,20 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, > void (*callback)(struct virtqueue *), > const char *name) &g...
2018 Mar 16
2
[PATCH RFC 2/2] virtio_ring: support packed ring
...ng.num)); > > END_USE(vq); > return NULL; > @@ -957,7 +1423,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) > EXPORT_SYMBOL_GPL(vring_interrupt); > > struct virtqueue *__vring_new_virtqueue(unsigned int index, > - struct vring vring, > + union vring_union vring, > + bool packed, > struct virtio_device *vdev, > bool weak_barriers, > bool context, > @@ -965,19 +1432,20 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, > void (*callback)(struct virtqueue *), > const char *name) &g...
2018 Feb 23
0
[PATCH RFC 2/2] virtio_ring: support packed ring
...acked ? vq->vring_packed.num : + vq->vring.num)); END_USE(vq); return NULL; @@ -957,7 +1423,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) EXPORT_SYMBOL_GPL(vring_interrupt); struct virtqueue *__vring_new_virtqueue(unsigned int index, - struct vring vring, + union vring_union vring, + bool packed, struct virtio_device *vdev, bool weak_barriers, bool context, @@ -965,19 +1432,20 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, void (*callback)(struct virtqueue *), const char *name) { - unsigned int i; + unsigned int num, i...
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 May 22
0
[RFC v5 2/5] virtio_ring: support creating packed ring
...irtqueue_detach_unused_buf_split(_vq); } EXPORT_SYMBOL_GPL(virtqueue_detach_unused_buf); @@ -955,7 +1167,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) EXPORT_SYMBOL_GPL(vring_interrupt); struct virtqueue *__vring_new_virtqueue(unsigned int index, - struct vring vring, + union vring_union vring, + bool packed, struct virtio_device *vdev, bool weak_barriers, bool context, @@ -963,19 +1176,22 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, void (*callback)(struct virtqueue *), const char *name) { - unsigned int i; struct vring_virtqu...
2018 Jul 11
0
[PATCH net-next v2 2/5] virtio_ring: support creating packed ring
...irtqueue_detach_unused_buf_split(_vq); } EXPORT_SYMBOL_GPL(virtqueue_detach_unused_buf); @@ -954,7 +1166,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) EXPORT_SYMBOL_GPL(vring_interrupt); struct virtqueue *__vring_new_virtqueue(unsigned int index, - struct vring vring, + union vring_union vring, + bool packed, struct virtio_device *vdev, bool weak_barriers, bool context, @@ -962,19 +1175,22 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, void (*callback)(struct virtqueue *), const char *name) { - unsigned int i; struct vring_virtqu...
2018 Mar 16
0
[PATCH RFC 2/2] virtio_ring: support packed ring
...END_USE(vq); > > return NULL; > > @@ -957,7 +1423,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) > > EXPORT_SYMBOL_GPL(vring_interrupt); > > struct virtqueue *__vring_new_virtqueue(unsigned int index, > > - struct vring vring, > > + union vring_union vring, > > + bool packed, > > struct virtio_device *vdev, > > bool weak_barriers, > > bool context, > > @@ -965,19 +1432,20 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, > > void (*callback)(struct virtqueue *), &g...
2018 May 29
2
[RFC v5 2/5] virtio_ring: support creating packed ring
...; EXPORT_SYMBOL_GPL(virtqueue_detach_unused_buf); > > @@ -955,7 +1167,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) > EXPORT_SYMBOL_GPL(vring_interrupt); > > struct virtqueue *__vring_new_virtqueue(unsigned int index, > - struct vring vring, > + union vring_union vring, > + bool packed, > struct virtio_device *vdev, > bool weak_barriers, > bool context, > @@ -963,19 +1176,22 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, > void (*callback)(struct virtqueue *), > const char *name) &g...
2018 May 29
2
[RFC v5 2/5] virtio_ring: support creating packed ring
...; EXPORT_SYMBOL_GPL(virtqueue_detach_unused_buf); > > @@ -955,7 +1167,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) > EXPORT_SYMBOL_GPL(vring_interrupt); > > struct virtqueue *__vring_new_virtqueue(unsigned int index, > - struct vring vring, > + union vring_union vring, > + bool packed, > struct virtio_device *vdev, > bool weak_barriers, > bool context, > @@ -963,19 +1176,22 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, > void (*callback)(struct virtqueue *), > const char *name) &g...
2018 Mar 16
2
[PATCH RFC 2/2] virtio_ring: support packed ring
...int index, >>> unsigned int num, >>> @@ -1074,7 +1572,8 @@ struct virtqueue *vring_create_virtqueue( >>> void *queue = NULL; >>> dma_addr_t dma_addr; >>> size_t queue_size_in_bytes; >>> - struct vring vring; >>> + union vring_union vring; >>> + bool packed; >>> /* We assume num is a power of 2. */ >>> if (num & (num - 1)) { >>> @@ -1082,9 +1581,13 @@ struct virtqueue *vring_create_virtqueue( >>> return NULL; >>> } >>> + packed = virtio_has_fea...
2018 Mar 16
2
[PATCH RFC 2/2] virtio_ring: support packed ring
...int index, >>> unsigned int num, >>> @@ -1074,7 +1572,8 @@ struct virtqueue *vring_create_virtqueue( >>> void *queue = NULL; >>> dma_addr_t dma_addr; >>> size_t queue_size_in_bytes; >>> - struct vring vring; >>> + union vring_union vring; >>> + bool packed; >>> /* We assume num is a power of 2. */ >>> if (num & (num - 1)) { >>> @@ -1082,9 +1581,13 @@ struct virtqueue *vring_create_virtqueue( >>> return NULL; >>> } >>> + packed = virtio_has_fea...
2018 Apr 10
0
[RFC v2] virtio: support packed ring
...; EXPORT_SYMBOL_GPL(virtqueue_detach_unused_buf); > > @@ -955,7 +1596,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) > EXPORT_SYMBOL_GPL(vring_interrupt); > > struct virtqueue *__vring_new_virtqueue(unsigned int index, > - struct vring vring, > + union vring_union vring, > + bool packed, > struct virtio_device *vdev, > bool weak_barriers, > bool context, > @@ -963,19 +1605,20 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, > void (*callback)(struct virtqueue *), > const char *name) &g...
2018 Apr 13
0
[RFC v2] virtio: support packed ring
...; EXPORT_SYMBOL_GPL(virtqueue_detach_unused_buf); > > @@ -955,7 +1596,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) > EXPORT_SYMBOL_GPL(vring_interrupt); > > struct virtqueue *__vring_new_virtqueue(unsigned int index, > - struct vring vring, > + union vring_union vring, > + bool packed, > struct virtio_device *vdev, > bool weak_barriers, > bool context, > @@ -963,19 +1605,20 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, > void (*callback)(struct virtqueue *), > const char *name) &g...
2018 May 22
9
[RFC v5 0/5] virtio: support packed ring
Hello everyone, This RFC implements packed ring support in virtio driver. Some simple functional tests have been done with Jason's packed ring implementation in vhost (RFC v4): https://lkml.org/lkml/2018/5/16/501 Both of ping and netperf worked as expected w/ EVENT_IDX disabled. Ping worked as expected w/ EVENT_IDX enabled, but netperf didn't (A hack has been added in the driver to
2018 May 22
9
[RFC v5 0/5] virtio: support packed ring
Hello everyone, This RFC implements packed ring support in virtio driver. Some simple functional tests have been done with Jason's packed ring implementation in vhost (RFC v4): https://lkml.org/lkml/2018/5/16/501 Both of ping and netperf worked as expected w/ EVENT_IDX disabled. Ping worked as expected w/ EVENT_IDX enabled, but netperf didn't (A hack has been added in the driver to
2018 Apr 01
8
[RFC v2] virtio: support packed ring
...irtqueue_detach_unused_buf_split(_vq); } EXPORT_SYMBOL_GPL(virtqueue_detach_unused_buf); @@ -955,7 +1596,8 @@ irqreturn_t vring_interrupt(int irq, void *_vq) EXPORT_SYMBOL_GPL(vring_interrupt); struct virtqueue *__vring_new_virtqueue(unsigned int index, - struct vring vring, + union vring_union vring, + bool packed, struct virtio_device *vdev, bool weak_barriers, bool context, @@ -963,19 +1605,20 @@ struct virtqueue *__vring_new_virtqueue(unsigned int index, void (*callback)(struct virtqueue *), const char *name) { - unsigned int i; + unsigned int num, i...