"Michael S. Tsirkin" <mst@xxxxxxxxxx> wrote on 11/24/2011 03:29:03 PM: > Subject Re: [PATCH] macvtap: Fix macvtap_get_queue to use rxhash first > > On Thu, Nov 24, 2011 at 01:47:14PM +0530, Krishna Kumar wrote: > > It was reported that the macvtap device selects a > > different vhost (when used with multiqueue feature) > > for incoming packets of a single connection. Use > > packet hash first. Patch tested on MQ virtio_net. > > So this is sure to address the problem, why exactly does this happen? > Does your device spread a single flow across multiple RX queues? Would > not that cause trouble in the TCP layer? > It would seem that using the recorded queue should be faster with > less cache misses. Before we give up on that, I'd > like to understand why it's wrong. Do you know? I am using ixgbe. From what I briefly saw, ixgbe_alloc_rx_buffers calls skb_record_rx_queue when a skb is allocated. When a packet is received (ixgbe_alloc_rx_buffers), it sets rxhash. The recorded value is different for most skbs when I ran a single stream TCP stream test (does skbs move between the rx_rings?). With this patch, macvtap selects the same device for each incoming packet. I can add some debugs in ixgbe to see what is happening also. I am not sure if Sasha was using a different device. Cc'ing Jeffrey in case he can add something. thanks, - KK _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization