Re: [PATCH net-next 09/11] tuntap: accept an array of XDP buffs through sendmsg()

From: Jason Wang
Date: Fri Sep 07 2018 - 03:33:18 EST




On 2018å09æ07æ 01:51, Michael S. Tsirkin wrote:
On Thu, Sep 06, 2018 at 12:05:24PM +0800, Jason Wang wrote:
This patch implement TUN_MSG_PTR msg_control type. This type allows
the caller to pass an array of XDP buffs to tuntap through ptr field
of the tun_msg_control. If an XDP program is attached, tuntap can run
XDP program directly. If not, tuntap will build skb and do a fast
receiving since part of the work has been done by vhost_net.

This will avoid lots of indirect calls thus improves the icache
utilization and allows to do XDP batched flushing when doing XDP
redirection.

Signed-off-by: Jason Wang<jasowang@xxxxxxxxxx>
Is most of the benefit in batched flushing or skipping
indirect calls? Because if it's flushing we can gain
most of it easily by adding an analog of xmit_more.


Should be both. XDP_DROP doesn't flush but it gives obvious improvement.

Thanks