diff options
| author | Takashi Iwai <tiwai@suse.de> | 2012-05-21 12:45:18 +0200 | 
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2012-05-21 12:45:18 +0200 | 
| commit | 775b2449bdba7c97dda9f274c92bf7a83dac4142 (patch) | |
| tree | b4bee45c13762ea93642b1e38c62de454e51cf5d /net/caif/chnl_net.c | |
| parent | 21363cf0ca5c9c62e34e37422fb1d13d70d3de3c (diff) | |
| parent | 5fb86e5d4a951ddb0474cdfd809380c8e2a8d101 (diff) | |
| download | olio-linux-3.10-775b2449bdba7c97dda9f274c92bf7a83dac4142.tar.xz olio-linux-3.10-775b2449bdba7c97dda9f274c92bf7a83dac4142.zip  | |
Merge branch 'topic/asoc' into for-linus
Diffstat (limited to 'net/caif/chnl_net.c')
| -rw-r--r-- | net/caif/chnl_net.c | 9 | 
1 files changed, 6 insertions, 3 deletions
diff --git a/net/caif/chnl_net.c b/net/caif/chnl_net.c index 20618dd3088..d09340e1523 100644 --- a/net/caif/chnl_net.c +++ b/net/caif/chnl_net.c @@ -103,6 +103,7 @@ static int chnl_recv_cb(struct cflayer *layr, struct cfpkt *pkt)  		skb->protocol = htons(ETH_P_IPV6);  		break;  	default: +		kfree_skb(skb);  		priv->netdev->stats.rx_errors++;  		return -EINVAL;  	} @@ -220,14 +221,16 @@ static int chnl_net_start_xmit(struct sk_buff *skb, struct net_device *dev)  	if (skb->len > priv->netdev->mtu) {  		pr_warn("Size of skb exceeded MTU\n"); +		kfree_skb(skb);  		dev->stats.tx_errors++; -		return -ENOSPC; +		return NETDEV_TX_OK;  	}  	if (!priv->flowenabled) {  		pr_debug("dropping packets flow off\n"); +		kfree_skb(skb);  		dev->stats.tx_dropped++; -		return NETDEV_TX_BUSY; +		return NETDEV_TX_OK;  	}  	if (priv->conn_req.protocol == CAIFPROTO_DATAGRAM_LOOP) @@ -242,7 +245,7 @@ static int chnl_net_start_xmit(struct sk_buff *skb, struct net_device *dev)  	result = priv->chnl.dn->transmit(priv->chnl.dn, pkt);  	if (result) {  		dev->stats.tx_dropped++; -		return result; +		return NETDEV_TX_OK;  	}  	/* Update statistics. */  |