Tom Herbert <therbert@xxxxxxxxxx> writes: > On Tue, Sep 11, 2012 at 10:49 PM, Rusty Russell <rusty@xxxxxxxxxxxxxxx>wrote: >> Perhaps Tom can explain how we avoid out-of-order receive for the >> accelerated RFS case? It's not clear to me, but we need to be able to >> do that for virtio-net if it implements accelerated RFS. > > AFAIK ooo RX is possible with accelerated RFS. We have an algorithm that > prevents this for RFS case by deferring a migration to a new queue as long > as it's possible that a flow might have outstanding packets on the old > queue. I suppose this could be implemented in the device for the HW > queues, but I don't think it would be easy to cover all cases where packets > were already in transit to the host or other cases where host and device > queues are out of sync. Having gone to such great lengths to avoid ooo for RFS, I don't think DaveM would be happy if we allow it for virtio_net. So, how *would* we implement such a thing for a "hardware" device? What if the device will only change the receive queue if the old receive queue is empty? Cheers, Rusty. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html