[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5a755247-3ceb-bd6f-f5ff-fdb3137e9de2@redhat.com>
Date: Wed, 7 Nov 2018 21:33:24 +0800
From: Jason Wang <jasowang@...hat.com>
To: Paolo Abeni <pabeni@...hat.com>, netdev@...r.kernel.org
Cc: "David S. Miller" <davem@...emloft.net>
Subject: Re: [PATCH net-next] tun: compute the RFS hash only if needed.
On 2018/11/7 下午5:34, Paolo Abeni wrote:
> The tun XDP sendmsg code path, unconditionally computes the symmetric
> hash of each packet for RFS's sake, even when we could skip it. e.g.
> when the device has a single queue.
>
> This change adds the check already in-place for the skb sendmsg path
> to avoid unneeded hashing.
>
> The above gives small, but measurable, performance gain for VM xmit
> path when zerocopy is not enabled.
>
> Signed-off-by: Paolo Abeni <pabeni@...hat.com>
> ---
> drivers/net/tun.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/tun.c b/drivers/net/tun.c
> index 060135ceaf0e..a65779c6d72f 100644
> --- a/drivers/net/tun.c
> +++ b/drivers/net/tun.c
> @@ -2448,7 +2448,8 @@ static int tun_xdp_one(struct tun_struct *tun,
> goto out;
> }
>
> - if (!rcu_dereference(tun->steering_prog))
> + if (!rcu_dereference(tun->steering_prog) && tun->numqueues > 1 &&
> + !tfile->detached)
> rxhash = __skb_get_hash_symmetric(skb);
>
> netif_receive_skb(skb);
Acked-by: Jason Wang <jasowang@...hat.com>
Thanks
Powered by blists - more mailing lists