Re: [net-next RFC V5 5/5] virtio_net: support negotiating the number of queues through ctrl vq

2012-07-06 Thread Stephen Hemminger
On Fri, 06 Jul 2012 11:20:06 +0800 Jason Wang jasow...@redhat.com wrote: On 07/05/2012 08:51 PM, Sasha Levin wrote: On Thu, 2012-07-05 at 18:29 +0800, Jason Wang wrote: @@ -1387,6 +1404,10 @@ static int virtnet_probe(struct virtio_device *vdev) if (virtio_has_feature(vdev,

Re: [net-next RFC V5 0/5] Multiqueue virtio-net

2012-07-06 Thread Jason Wang
On 07/06/2012 01:45 AM, Rick Jones wrote: On 07/05/2012 03:29 AM, Jason Wang wrote: Test result: 1) 1 vm 2 vcpu 1q vs 2q, 1 - 1q, 2 - 2q, no pinning - Guest to External Host TCP STREAM sessions size throughput1 throughput2 norm1 norm2 1 64 650.55 655.61 100% 24.88 24.86 99% 2 64 1446.81

Re: [net-next RFC V5 4/5] virtio_net: multiqueue support

2012-07-06 Thread Jason Wang
On 07/06/2012 04:02 AM, Amos Kong wrote: On 07/05/2012 06:29 PM, Jason Wang wrote: This patch converts virtio_net to a multi queue device. After negotiated VIRTIO_NET_F_MULTIQUEUE feature, the virtio device has many tx/rx queue pairs, and driver could read the number from config space. The

Re: [net-next RFC V5 5/5] virtio_net: support negotiating the number of queues through ctrl vq

2012-07-06 Thread Jason Wang
On 07/06/2012 04:07 AM, Amos Kong wrote: On 07/05/2012 08:51 PM, Sasha Levin wrote: On Thu, 2012-07-05 at 18:29 +0800, Jason Wang wrote: @@ -1387,6 +1404,10 @@ static int virtnet_probe(struct virtio_device *vdev) if (virtio_has_feature(vdev, VIRTIO_NET_F_CTRL_VQ))

Re: [net-next RFC V5 5/5] virtio_net: support negotiating the number of queues through ctrl vq

2012-07-06 Thread Sasha Levin
On Fri, 2012-07-06 at 11:20 +0800, Jason Wang wrote: On 07/05/2012 08:51 PM, Sasha Levin wrote: On Thu, 2012-07-05 at 18:29 +0800, Jason Wang wrote: @@ -1387,6 +1404,10 @@ static int virtnet_probe(struct virtio_device *vdev) if (virtio_has_feature(vdev, VIRTIO_NET_F_CTRL_VQ))

Re: SCSI Performance regression [was Re: [PATCH 0/6] tcm_vhost/virtio-scsi WIP code for-3.6]

2012-07-06 Thread Nicholas A. Bellinger
On Fri, 2012-07-06 at 09:43 +0400, James Bottomley wrote: On Thu, 2012-07-05 at 20:01 -0700, Nicholas A. Bellinger wrote: So I'm pretty sure this discrepancy is attributed to the small block random I/O bottleneck currently present for all Linux/SCSI core LLDs regardless of physical or

Re: [net-next RFC V5 5/5] virtio_net: support negotiating the number of queues through ctrl vq

2012-07-06 Thread Jason Wang
On 07/06/2012 02:38 PM, Stephen Hemminger wrote: On Fri, 06 Jul 2012 11:20:06 +0800 Jason Wangjasow...@redhat.com wrote: On 07/05/2012 08:51 PM, Sasha Levin wrote: On Thu, 2012-07-05 at 18:29 +0800, Jason Wang wrote: @@ -1387,6 +1404,10 @@ static int virtnet_probe(struct virtio_device

[RFC V3 0/5] Multiqueue support for tap and virtio-net/vhost

2012-07-06 Thread Jason Wang
Hello all: This seires is an update of last version of multiqueue support to add multiqueue capability to both tap and virtio-net. Some kinds of tap backends has (macvatp in linux) or would (tap) support multiqueue. In such kind of tap backend, each file descriptor of a tap is a qeueu and ioctls

[RFC V3 1/5] option: introduce qemu_get_opt_all()

2012-07-06 Thread Jason Wang
Sometimes, we need to pass option like -netdev tap,fd=100,fd=101,fd=102 which can not be properly parsed by qemu_find_opt() because it only returns the first matched option. So qemu_get_opt_all() were introduced to return an array of pointers which contains all matched option. Signed-off-by:

[RFC V3 2/5] tap: multiqueue support

2012-07-06 Thread Jason Wang
Some operating system ( such as Linux ) supports multiqueue tap, this is done through attaching multiple sockets to the net device and expose multiple file descriptors. This patch let qemu utilizes this kind of backend, and introduces helpter for: - creating a multiple capable tap device -

[RFC V3 3/5] net: multiqueue support

2012-07-06 Thread Jason Wang
This patch adds the multiqueues support for emulated nics. Each VLANClientState pairs are now abstract as a queue instead of a nic, and multiple VLANClientState pointers were stored in the NICState. A queue_index were also introduced to let the emulated nics know which queue the packet were came

[RFC V3 4/5] vhost: multiqueue support

2012-07-06 Thread Jason Wang
This patch converts the vhost to support multiqueue queues. It implement a 1:1 mapping of vhost devs and tap fds. That it to say, the patch creates and uses N vhost devs as the backend of the N queues virtio-net deivce. The main work is to convert the virtqueue index into vhost queue index, this

[RFC V3 5/5] virtio-net: add multiqueue support

2012-07-06 Thread Jason Wang
Based on the multiqueue support for taps and NICState, this patch add the capability of multiqueue for virtio-net. For userspace virtio-net emulation, each pair of VLANClientState peers were abstracted as a tx/rx queue. For vhost, the vhost net devices were created per virtio-net tx/rx queue

Re: [net-next RFC V5 0/5] Multiqueue virtio-net

2012-07-06 Thread Rick Jones
On 07/06/2012 12:42 AM, Jason Wang wrote: I'm not expert of tcp, but looks like the changes are reasonable: - we can do full-sized TSO check in tcp_tso_should_defer() only for westwood, according to tcp westwood - run tcp_tso_should_defer for tso_segs = 1 when tso is enabled. I'm sure Eric and

Re: SCSI Performance regression [was Re: [PATCH 0/6] tcm_vhost/virtio-scsi WIP code for-3.6]

2012-07-06 Thread Nicholas A. Bellinger
On Fri, 2012-07-06 at 17:49 +0400, James Bottomley wrote: On Fri, 2012-07-06 at 02:13 -0700, Nicholas A. Bellinger wrote: On Fri, 2012-07-06 at 09:43 +0400, James Bottomley wrote: On Thu, 2012-07-05 at 20:01 -0700, Nicholas A. Bellinger wrote: SNIP This bottleneck has been

[PATCH] virtio-scsi: Add vdrv-scan for post VIRTIO_CONFIG_S_DRIVER_OK LUN scanning

2012-07-06 Thread Nicholas A. Bellinger
From: Nicholas Bellinger n...@linux-iscsi.org This patch changes virtio-scsi to use a new virtio_driver-scan() callback so that scsi_scan_host() can be properly invoked once virtio_dev_probe() has set add_status(dev, VIRTIO_CONFIG_S_DRIVER_OK) to signal active virtio-ring operation, instead of

Re: [PATCH] virtio-scsi: Add vdrv-scan for post VIRTIO_CONFIG_S_DRIVER_OK LUN scanning

2012-07-06 Thread Nicholas A. Bellinger
Hi James, Please consider picking this one up for your next scsi-rc-fixes PULL, and it's CC'ed to stable following Paolo's request. Thank you, --nab On Fri, 2012-07-06 at 20:15 +, Nicholas A. Bellinger wrote: From: Nicholas Bellinger n...@linux-iscsi.org This patch changes virtio-scsi

Re: [Ksummit-2012-discuss] SCSI Performance regression [was Re: [PATCH 0/6] tcm_vhost/virtio-scsi WIP code for-3.6]

2012-07-06 Thread Nicholas A. Bellinger
On Fri, 2012-07-06 at 15:30 -0500, Christoph Lameter wrote: On Fri, 6 Jul 2012, James Bottomley wrote: What people might pay attention to is evidence that there's a problem in 3.5-rc6 (without any OFED crap). If you're not going to bother investigating, it has to be in an environment