search for: vhost_enable_zcopy

Displaying 16 results from an estimated 16 matches for "vhost_enable_zcopy".

2013 May 03
4
[PATCH 0/3] vhost cleanups and separate module
Asias He (3): vhost: Remove vhost_enable_zcopy in vhost.h vhost: Move VHOST_NET_FEATURES to net.c vhost: Make vhost a separate module drivers/vhost/Kconfig | 8 ++++++++ drivers/vhost/Makefile | 3 ++- drivers/vhost/net.c | 6 ++++++ drivers/vhost/scsi.c | 1 - drivers/vhost/vhost.c | 50 ++++++++++++++++++++++++++++++++++++++++...
2013 May 03
4
[PATCH 0/3] vhost cleanups and separate module
Asias He (3): vhost: Remove vhost_enable_zcopy in vhost.h vhost: Move VHOST_NET_FEATURES to net.c vhost: Make vhost a separate module drivers/vhost/Kconfig | 8 ++++++++ drivers/vhost/Makefile | 3 ++- drivers/vhost/net.c | 6 ++++++ drivers/vhost/scsi.c | 1 - drivers/vhost/vhost.c | 50 ++++++++++++++++++++++++++++++++++++++++...
2011 Jul 18
1
[PATCHv11] vhost: vhost TX zero-copy support
...t *n, unsigned index, int fd) mutex_unlock(&n->dev.mutex); return 0; +err_ubufs: + fput(sock->file); err_vq: mutex_unlock(&vq->mutex); err: @@ -776,6 +849,8 @@ static struct miscdevice vhost_net_misc = { static int vhost_net_init(void) { + if (experimental_zcopytx) + vhost_enable_zcopy(VHOST_NET_VQ_TX); return misc_register(&vhost_net_misc); } module_init(vhost_net_init); diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c index ea966b3..5ef2f62 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -37,6 +37,8 @@ enum { VHOST_MEMORY_F_LOG = 0x1, };...
2011 Jul 18
1
[PATCHv11] vhost: vhost TX zero-copy support
...t *n, unsigned index, int fd) mutex_unlock(&n->dev.mutex); return 0; +err_ubufs: + fput(sock->file); err_vq: mutex_unlock(&vq->mutex); err: @@ -776,6 +849,8 @@ static struct miscdevice vhost_net_misc = { static int vhost_net_init(void) { + if (experimental_zcopytx) + vhost_enable_zcopy(VHOST_NET_VQ_TX); return misc_register(&vhost_net_misc); } module_init(vhost_net_init); diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c index ea966b3..5ef2f62 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -37,6 +37,8 @@ enum { VHOST_MEMORY_F_LOG = 0x1, };...
2013 May 07
0
[PULL] vhost: more fixes for 3.10
...com> ---------------------------------------------------------------- Asias He (7): vhost: Export vhost_dev_set_owner vhost-net: Free ubuf when vhost_dev_set_owner fails vhost: Move VHOST_NET_FEATURES to net.c vhost: Remove comments for hdr in vhost.h vhost: Remove vhost_enable_zcopy in vhost.h vhost-net: Cleanup vhost_ubuf and vhost_zcopy vhost-scsi: Enable VIRTIO_RING_F_EVENT_IDX Michael S. Tsirkin (1): vhost: drop virtio_net.h dependency drivers/vhost/net.c | 100 +++++++++++++++++++++++++++++++++----------------- drivers/vhost/scsi.c | 8 +--- driv...
2013 May 07
0
[PULL] vhost: more fixes for 3.10
...com> ---------------------------------------------------------------- Asias He (7): vhost: Export vhost_dev_set_owner vhost-net: Free ubuf when vhost_dev_set_owner fails vhost: Move VHOST_NET_FEATURES to net.c vhost: Remove comments for hdr in vhost.h vhost: Remove vhost_enable_zcopy in vhost.h vhost-net: Cleanup vhost_ubuf and vhost_zcopy vhost-scsi: Enable VIRTIO_RING_F_EVENT_IDX Michael S. Tsirkin (1): vhost: drop virtio_net.h dependency drivers/vhost/net.c | 100 +++++++++++++++++++++++++++++++++----------------- drivers/vhost/scsi.c | 8 +--- driv...
2013 Apr 27
0
[PATCH] vhost: Move vhost-net zerocopy support fields to net.c
...f_info; + /* Reference counting for outstanding ubufs. + * Protected by vq mutex. Writers must also take device mutex. */ + struct vhost_ubuf_ref *ubufs; }; struct vhost_net { @@ -92,6 +108,88 @@ struct vhost_net { bool tx_flush; }; +static unsigned vhost_zcopy_mask __read_mostly; + +void vhost_enable_zcopy(int vq) +{ + vhost_zcopy_mask |= 0x1 << vq; +} + +static void vhost_zerocopy_done_signal(struct kref *kref) +{ + struct vhost_ubuf_ref *ubufs = container_of(kref, struct vhost_ubuf_ref, + kref); + wake_up(&ubufs->wait); +} + +struct vhost_ubuf_ref *vhost_ubuf_alloc(struct vhos...
2013 Apr 27
0
[PATCH] vhost: Move vhost-net zerocopy support fields to net.c
...f_info; + /* Reference counting for outstanding ubufs. + * Protected by vq mutex. Writers must also take device mutex. */ + struct vhost_ubuf_ref *ubufs; }; struct vhost_net { @@ -92,6 +108,88 @@ struct vhost_net { bool tx_flush; }; +static unsigned vhost_zcopy_mask __read_mostly; + +void vhost_enable_zcopy(int vq) +{ + vhost_zcopy_mask |= 0x1 << vq; +} + +static void vhost_zerocopy_done_signal(struct kref *kref) +{ + struct vhost_ubuf_ref *ubufs = container_of(kref, struct vhost_ubuf_ref, + kref); + wake_up(&ubufs->wait); +} + +struct vhost_ubuf_ref *vhost_ubuf_alloc(struct vhos...
2013 May 06
13
[PATCH v2 00/11] vhost cleanups
MST, This is on top of [PATCH 0/2] vhost-net fix ubuf. Asias He (11): vhost: Remove vhost_enable_zcopy in vhost.h vhost: Move VHOST_NET_FEATURES to net.c vhost: Make vhost a separate module vhost: Remove comments for hdr in vhost.h vhost: Simplify dev->vqs[i] access vhost-net: Cleanup vhost_ubuf and vhost_zcopy vhost-scsi: Remove unnecessary forward struct vhost_scsi declaration vho...
2013 May 06
13
[PATCH v2 00/11] vhost cleanups
MST, This is on top of [PATCH 0/2] vhost-net fix ubuf. Asias He (11): vhost: Remove vhost_enable_zcopy in vhost.h vhost: Move VHOST_NET_FEATURES to net.c vhost: Make vhost a separate module vhost: Remove comments for hdr in vhost.h vhost: Simplify dev->vqs[i] access vhost-net: Cleanup vhost_ubuf and vhost_zcopy vhost-scsi: Remove unnecessary forward struct vhost_scsi declaration vho...
2012 Jul 12
2
[PATCH 3/5] vhost: Make vhost a separate module
...uct vhost_work *work) @@ -155,6 +160,7 @@ void vhost_poll_queue(struct vhost_poll *poll) { vhost_work_queue(poll->dev, &poll->work); } +EXPORT_SYMBOL_GPL(vhost_poll_queue); static void vhost_vq_reset(struct vhost_dev *dev, struct vhost_virtqueue *vq) @@ -251,6 +257,7 @@ void vhost_enable_zcopy(int vq) { vhost_zcopy_mask |= 0x1 << vq; } +EXPORT_SYMBOL_GPL(vhost_enable_zcopy); /* Helper to allocate iovec buffers for all vqs. */ static long vhost_dev_alloc_iovecs(struct vhost_dev *dev) @@ -322,6 +329,7 @@ long vhost_dev_init(struct vhost_dev *dev, return 0; } +EXPORT_SYMB...
2012 Jul 12
2
[PATCH 3/5] vhost: Make vhost a separate module
...uct vhost_work *work) @@ -155,6 +160,7 @@ void vhost_poll_queue(struct vhost_poll *poll) { vhost_work_queue(poll->dev, &poll->work); } +EXPORT_SYMBOL_GPL(vhost_poll_queue); static void vhost_vq_reset(struct vhost_dev *dev, struct vhost_virtqueue *vq) @@ -251,6 +257,7 @@ void vhost_enable_zcopy(int vq) { vhost_zcopy_mask |= 0x1 << vq; } +EXPORT_SYMBOL_GPL(vhost_enable_zcopy); /* Helper to allocate iovec buffers for all vqs. */ static long vhost_dev_alloc_iovecs(struct vhost_dev *dev) @@ -322,6 +329,7 @@ long vhost_dev_init(struct vhost_dev *dev, return 0; } +EXPORT_SYMB...
2012 Jul 13
9
[PATCH RESEND 0/5] Add vhost-blk support
Hi folks, [I am resending to fix the broken thread in the previous one.] This patchset adds vhost-blk support. vhost-blk is a in kernel virito-blk device accelerator. Compared to userspace virtio-blk implementation, vhost-blk gives about 5% to 15% performance improvement. Asias He (5): aio: Export symbols and struct kiocb_batch for in kernel aio usage eventfd: Export symbol
2012 Jul 13
9
[PATCH RESEND 0/5] Add vhost-blk support
Hi folks, [I am resending to fix the broken thread in the previous one.] This patchset adds vhost-blk support. vhost-blk is a in kernel virito-blk device accelerator. Compared to userspace virtio-blk implementation, vhost-blk gives about 5% to 15% performance improvement. Asias He (5): aio: Export symbols and struct kiocb_batch for in kernel aio usage eventfd: Export symbol
2011 Nov 11
10
[RFC] [ver3 PATCH 0/6] Implement multiqueue virtio-net
This patch series resurrects the earlier multiple TX/RX queues functionality for virtio_net, and addresses the issues pointed out. It also includes an API to share irq's, f.e. amongst the TX vqs. I plan to run TCP/UDP STREAM and RR tests for local->host and local->remote, and send the results in the next couple of days. patch #1: Introduce VIRTIO_NET_F_MULTIQUEUE patch #2: Move
2011 Nov 11
10
[RFC] [ver3 PATCH 0/6] Implement multiqueue virtio-net
This patch series resurrects the earlier multiple TX/RX queues functionality for virtio_net, and addresses the issues pointed out. It also includes an API to share irq's, f.e. amongst the TX vqs. I plan to run TCP/UDP STREAM and RR tests for local->host and local->remote, and send the results in the next couple of days. patch #1: Introduce VIRTIO_NET_F_MULTIQUEUE patch #2: Move