[ovs-git] [openvswitch/ovs] 161773: netdev-afxdp: Fix transmission freeze in native mo...
Ilya Maximets
noreply at github.com
Mon Jan 6 19:54:27 UTC 2020
Branch: refs/heads/master
Home: https://github.com/openvswitch/ovs
Commit: 161773c72a33a86a23d4892e3c7448cee9946317
https://github.com/openvswitch/ovs/commit/161773c72a33a86a23d4892e3c7448cee9946317
Author: Ilya Maximets <i.maximets at ovn.org>
Date: 2020-01-06 (Mon, 06 Jan 2020)
Changed paths:
M lib/netdev-afxdp.c
Log Message:
-----------
netdev-afxdp: Fix transmission freeze in native mode without zerocopy.
Kernel uses 'xsk_generic_xmit()' for all modes where zerocopy is
not enabled:
net/xdp/xsk.c
433 static int __xsk_sendmsg(struct sock *sk)
434 {
...
442 return xs->zc ? xsk_zc_xmit(xs) : xsk_generic_xmit(sk);
443 }
'xsk_generic_xmit ()' sends packets synchronously and no more than 16
packets at a time. This means that we have to kick Tx with sendmsg()
for every 16 packets in simple native mode too, otherwise the packets
may never be sent.
Reported-by: William Tu <u9012063 at gmail.com>
Reported-at: https://mail.openvswitch.org/pipermail/ovs-dev/2019-November/365076.html
Fixes: e8f5634484e8 ("netdev-afxdp: Best-effort configuration of XDP mode.")
Signed-off-by: Ilya Maximets <i.maximets at ovn.org>
Signed-off-by: William Tu <u9012063 at gmail.com>
More information about the git
mailing list