Răsfoiți Sursa

netpoll: warning for ndo_start_xmit returns with interrupts enabled

WARN_ONCE for ndo_start_xmit() enable interrupts in netpoll_send_skb(),
because the NETPOLL API requires that interrupts remain disabled in
netpoll_send_skb().

Signed-off-by: Dongdong Deng <dongdong.deng@windriver.com>
Acked-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Dongdong Deng 15 ani în urmă
părinte
comite
79b1bee888
1 a modificat fișierele cu 5 adăugiri și 0 ștergeri
  1. 5 0
      net/core/netpoll.c

+ 5 - 0
net/core/netpoll.c

@@ -319,6 +319,11 @@ static void netpoll_send_skb(struct netpoll *np, struct sk_buff *skb)
 
 
 			udelay(USEC_PER_POLL);
 			udelay(USEC_PER_POLL);
 		}
 		}
+
+		WARN_ONCE(!irqs_disabled(),
+			"netpoll_send_skb(): %s enabled interrupts in poll (%pF)\n",
+			dev->name, ops->ndo_start_xmit);
+
 		local_irq_restore(flags);
 		local_irq_restore(flags);
 	}
 	}