| Subject: net: Use local_bh_disable in netif_rx_ni() |
| From: Thomas Gleixner <tglx@linutronix.de> |
| Date: Sun, 28 Oct 2012 15:12:49 +0000 |
| |
| This code triggers the new WARN in __raise_softirq_irqsoff() though it |
| actually looks at the softirq pending bit and calls into the softirq |
| code, but that fits not well with the context related softirq model of |
| RT. It's correct on mainline though, but going through |
| local_bh_disable/enable here is not going to hurt badly. |
| |
| Signed-off-by: Thomas Gleixner <tglx@linutronix.de> |
| --- |
| net/core/dev.c | 6 ++---- |
| 1 file changed, 2 insertions(+), 4 deletions(-) |
| |
| --- a/net/core/dev.c |
| +++ b/net/core/dev.c |
| @@ -3121,11 +3121,9 @@ int netif_rx_ni(struct sk_buff *skb) |
| { |
| int err; |
| |
| - migrate_disable(); |
| + local_bh_disable(); |
| err = netif_rx(skb); |
| - if (local_softirq_pending()) |
| - thread_do_softirq(); |
| - migrate_enable(); |
| + local_bh_enable(); |
| |
| return err; |
| } |