aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEd Cashin2012-12-17 18:03:28 -0600
committerLinus Torvalds2012-12-17 19:15:23 -0600
commit4e78dd144b865162626f811d1097b6d181ec6a31 (patch)
tree748745c212c7750eff7fef001f128075713c2d5b
parent662a889608dfabbb1b4954b172a6872a25dc8f90 (diff)
downloadkernel-omap-4e78dd144b865162626f811d1097b6d181ec6a31.tar.gz
kernel-omap-4e78dd144b865162626f811d1097b6d181ec6a31.tar.xz
kernel-omap-4e78dd144b865162626f811d1097b6d181ec6a31.zip
aoe: print warning regarding a common reason for dropped transmits
Dropped transmits are not common, but when they do occur, increasing the transmit queue length often helps. Signed-off-by: Ed Cashin <ecashin@coraid.com> Cc: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/block/aoe/aoenet.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/block/aoe/aoenet.c b/drivers/block/aoe/aoenet.c
index 162c6471275c..24eca2bf9416 100644
--- a/drivers/block/aoe/aoenet.c
+++ b/drivers/block/aoe/aoenet.c
@@ -52,13 +52,18 @@ static struct sk_buff_head skbtxq;
52 52
53/* enters with txlock held */ 53/* enters with txlock held */
54static int 54static int
55tx(void) 55tx(void) __must_hold(&txlock)
56{ 56{
57 struct sk_buff *skb; 57 struct sk_buff *skb;
58 struct net_device *ifp;
58 59
59 while ((skb = skb_dequeue(&skbtxq))) { 60 while ((skb = skb_dequeue(&skbtxq))) {
60 spin_unlock_irq(&txlock); 61 spin_unlock_irq(&txlock);
61 dev_queue_xmit(skb); 62 ifp = skb->dev;
63 if (dev_queue_xmit(skb) == NET_XMIT_DROP && net_ratelimit())
64 pr_warn("aoe: packet could not be sent on %s. %s\n",
65 ifp ? ifp->name : "netif",
66 "consider increasing tx_queue_len");
62 spin_lock_irq(&txlock); 67 spin_lock_irq(&txlock);
63 } 68 }
64 return 0; 69 return 0;