[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20181118.190621.657063282200266660.davem@davemloft.net>
Date: Sun, 18 Nov 2018 19:06:21 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: werekraken@...il.com
Cc: jasowang@...hat.com, brouer@...hat.com, mst@...hat.com,
edumazet@...gle.com, sd@...asysnail.net, netdev@...r.kernel.org,
matthew.cover@...ckpath.com
Subject: Re: [PATCH net] tuntap: fix multiqueue rx
From: Matthew Cover <werekraken@...il.com>
Date: Sun, 18 Nov 2018 00:46:00 -0700
> When writing packets to a descriptor associated with a combined queue, the
> packets should end up on that queue.
>
> Before this change all packets written to any descriptor associated with a
> tap interface end up on rx-0, even when the descriptor is associated with a
> different queue.
>
> The rx traffic can be generated by either of the following.
> 1. a simple tap program which spins up multiple queues and writes packets
> to each of the file descriptors
> 2. tx from a qemu vm with a tap multiqueue netdev
>
> The queue for rx traffic can be observed by either of the following (done
> on the hypervisor in the qemu case).
> 1. a simple netmap program which opens and reads from per-queue
> descriptors
> 2. configuring RPS and doing per-cpu captures with rxtxcpu
>
> Alternatively, if you printk() the return value of skb_get_rx_queue() just
> before each instance of netif_receive_skb() in tun.c, you will get 65535
> for every skb.
>
> Calling skb_record_rx_queue() to set the rx queue to the queue_index fixes
> the association between descriptor and rx queue.
>
> Signed-off-by: Matthew Cover <matthew.cover@...ckpath.com>
Applied and queued up for -stable, thanks.
Powered by blists - more mailing lists