diff options
author | Eric Dumazet <edumazet@google.com> | 2015-02-05 14:58:14 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-02-07 22:43:52 -0800 |
commit | 91e83133e70ebe1572746d1ad858b4eb28ab9b53 (patch) | |
tree | 686afc903f349584ed97d89d407cc9ad92c5aca9 /net/core | |
parent | 364d5716a7adb91b731a35765d369602d68d2881 (diff) | |
download | linux-91e83133e70ebe1572746d1ad858b4eb28ab9b53.tar.gz linux-91e83133e70ebe1572746d1ad858b4eb28ab9b53.tar.bz2 linux-91e83133e70ebe1572746d1ad858b4eb28ab9b53.zip |
net: use netif_rx_ni() from process context
Hotpluging a cpu might be rare, yet we have to use proper
handlers when taking over packets found in backlog queues.
dev_cpu_callback() runs from process context, thus we should
call netif_rx_ni() to properly invoke softirq handler.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core')
-rw-r--r-- | net/core/dev.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index 7fe82929f509..6c1556aeec29 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -7064,11 +7064,11 @@ static int dev_cpu_callback(struct notifier_block *nfb, /* Process offline CPU's input_pkt_queue */ while ((skb = __skb_dequeue(&oldsd->process_queue))) { - netif_rx_internal(skb); + netif_rx_ni(skb); input_queue_head_incr(oldsd); } while ((skb = skb_dequeue(&oldsd->input_pkt_queue))) { - netif_rx_internal(skb); + netif_rx_ni(skb); input_queue_head_incr(oldsd); } |