diff options
author | 2016-06-29 22:42:43 +0200 | |
---|---|---|
committer | 2016-06-29 22:46:45 +0200 | |
commit | 530ee2b2906af4d635d4d5bbabda5250b4a2b33e (patch) | |
tree | 36d967fb245156817c003d9096c70b19cb07362d | |
parent | Kconfig patching: do not match on NETFILTER (diff) | |
download | wireguard-monolithic-historical-530ee2b2906af4d635d4d5bbabda5250b4a2b33e.tar.xz wireguard-monolithic-historical-530ee2b2906af4d635d4d5bbabda5250b4a2b33e.zip |
device: remove updating of trans_start
Per http://lists.openwall.net/netdev/2016/05/03/87 dev->trans_start has
been removed, and updates are now supposed to be handled with
netif_trans_update, which now updates the particular txqueue's
trans_start instead.
However, netdev_start_xmit already updates this member after calling
ndo_start_xmit, so the new netif_trans_update function smartly makes the
comment that for drivers that don't use LLTX, it's not neccessary to
call netif_trans_update.
Except we do use LLTX, so it would seem again that we do need to be
calling netif_trans_update. However, glancing at drivers like vxlan and
other similar virtual tunnels, this doesn't seem to be the case. I
suspect the reason is that we both also set IFF_NO_QUEUE, so we aren't
even using a txqueue for updating.
Thus, this patch removes updating of trans_start all together. I believe
this should be okay for older kernels too.
-rw-r--r-- | src/device.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/src/device.c b/src/device.c index 4076e58..31fae5b 100644 --- a/src/device.c +++ b/src/device.c @@ -109,8 +109,6 @@ static netdev_tx_t xmit(struct sk_buff *skb, struct net_device *dev) return -ELOOP; } - dev->trans_start = jiffies; - peer = routing_table_lookup_dst(&wg->peer_routing_table, skb); if (unlikely(!peer)) { skb_unsendable(skb, dev); |