net: use netif_rx_ni() from process context
authorEric Dumazet <edumazet@google.com>
Thu, 5 Feb 2015 22:58:14 +0000 (14:58 -0800)
committerDavid S. Miller <davem@davemloft.net>
Sun, 8 Feb 2015 06:43:52 +0000 (22:43 -0800)
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>
net/core/dev.c

index 7fe82929f5094ee37a49dccd9df3a3e2b63a64c7..6c1556aeec2967d375ee3a3a640ca5f88b766b7c 100644 (file)
@@ -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);
        }
 
This page took 0.029856 seconds and 5 git commands to generate.