diff options
author | Thomas Falcon <tlfalcon@linux.vnet.ibm.com> | 2016-03-03 16:22:36 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-03-07 14:38:52 -0500 |
commit | 2c42bf4b43170ee83354bb68a12f8fc84c2e27a9 (patch) | |
tree | e2cb055dbdf55853f61c13ff1f00fc26da41b96c | |
parent | 48906f62c96cc2cd35753e59310cb70eb08cc6a5 (diff) |
ibmveth: check return of skb_linearize in ibmveth_start_xmit
If skb_linearize fails, the driver should drop the packet
instead of trying to copy it into the bounce buffer.
Signed-off-by: Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/ethernet/ibm/ibmveth.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/ethernet/ibm/ibmveth.c b/drivers/net/ethernet/ibm/ibmveth.c index 335417b4756b..ebe60719e489 100644 --- a/drivers/net/ethernet/ibm/ibmveth.c +++ b/drivers/net/ethernet/ibm/ibmveth.c | |||
@@ -1166,7 +1166,10 @@ map_failed: | |||
1166 | if (!firmware_has_feature(FW_FEATURE_CMO)) | 1166 | if (!firmware_has_feature(FW_FEATURE_CMO)) |
1167 | netdev_err(netdev, "tx: unable to map xmit buffer\n"); | 1167 | netdev_err(netdev, "tx: unable to map xmit buffer\n"); |
1168 | adapter->tx_map_failed++; | 1168 | adapter->tx_map_failed++; |
1169 | skb_linearize(skb); | 1169 | if (skb_linearize(skb)) { |
1170 | netdev->stats.tx_dropped++; | ||
1171 | goto out; | ||
1172 | } | ||
1170 | force_bounce = 1; | 1173 | force_bounce = 1; |
1171 | goto retry_bounce; | 1174 | goto retry_bounce; |
1172 | } | 1175 | } |