|
@@ -625,12 +625,13 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev)
|
|
|
|
|
|
/* This can happen with OOM and indirect buffers. */
|
|
|
if (unlikely(capacity < 0)) {
|
|
|
- if (net_ratelimit()) {
|
|
|
- if (likely(capacity == -ENOMEM)) {
|
|
|
+ if (likely(capacity == -ENOMEM)) {
|
|
|
+ if (net_ratelimit()) {
|
|
|
dev_warn(&dev->dev,
|
|
|
"TX queue failure: out of memory\n");
|
|
|
} else {
|
|
|
- dev->stats.tx_fifo_errors++;
|
|
|
+ dev->stats.tx_fifo_errors++;
|
|
|
+ if (net_ratelimit())
|
|
|
dev_warn(&dev->dev,
|
|
|
"Unexpected TX queue failure: %d\n",
|
|
|
capacity);
|