From 3fe81f330deafadcc0d35bd25b7bbbf6f36fe427 Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Tue, 28 Jun 2011 15:44:15 +0200 Subject: softirq-thread-do-softirq.patch Signed-off-by: Thomas Gleixner diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h index 623ab2d..acafa7d 100644 --- a/include/linux/interrupt.h +++ b/include/linux/interrupt.h @@ -412,6 +412,7 @@ struct softirq_action asmlinkage void do_softirq(void); asmlinkage void __do_softirq(void); +static inline void thread_do_softirq(void) { do_softirq(); } extern void open_softirq(int nr, void (*action)(struct softirq_action *)); extern void softirq_init(void); extern void __raise_softirq_irqoff(unsigned int nr); diff --git a/net/core/dev.c b/net/core/dev.c index ece49db..a0c8f06 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -3284,7 +3284,7 @@ int netif_rx_ni(struct sk_buff *skb) preempt_disable(); err = netif_rx(skb); if (local_softirq_pending()) - do_softirq(); + thread_do_softirq(); preempt_enable(); return err; -- cgit v0.10.2