From: Michael S. Tsirkin Date: Thu, 1 Nov 2012 09:16:32 +0000 (+0000) Subject: tun: report orphan frags errors to zero copy callback X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=149d36f7187cbd10beff88e4e20f93e51a34827e;p=sagit-ice-cold%2Fkernel_xiaomi_msm8998.git tun: report orphan frags errors to zero copy callback When tun transmits a zero copy skb, it orphans the frags which might need to allocate extra memory, in atomic context. If that fails, notify ubufs callback before freeing the skb as a hint that device should disable zerocopy mode. Signed-off-by: Michael S. Tsirkin Signed-off-by: David S. Miller --- diff --git a/drivers/net/tun.c b/drivers/net/tun.c index 9e287680cd2e..b44d7b79cddc 100644 --- a/drivers/net/tun.c +++ b/drivers/net/tun.c @@ -728,6 +728,7 @@ static netdev_tx_t tun_net_xmit(struct sk_buff *skb, struct net_device *dev) drop: dev->stats.tx_dropped++; + skb_tx_error(skb); kfree_skb(skb); rcu_read_unlock(); return NETDEV_TX_OK;