]> git.baikalelectronics.ru Git - kernel.git/commit
macvlan: lockless tx path
authorEric Dumazet <eric.dumazet@gmail.com>
Wed, 10 Nov 2010 21:14:04 +0000 (21:14 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 16 Nov 2010 18:58:30 +0000 (10:58 -0800)
commitd45627f6f3681d48db5c95efb9c6c7e703554f0c
tree0455321fbdb953e77fecff62345f8414553bc394
parentb34f1cc90bcded0a2f51e9053d13fc09cb2262c0
macvlan: lockless tx path

macvlan is a stacked device, like tunnels. We should use the lockless
mechanism we are using in tunnels and loopback.

This patch completely removes locking in TX path.

tx stat counters are added into existing percpu stat structure, renamed
from rx_stats to pcpu_stats.

Note : this reverts commit 5d8287cbf62c5 (macvlan: add multiqueue
capability)

Note : rx_errors converted to a 32bit counter, like tx_dropped, since
they dont need 64bit range.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Cc: Patrick McHardy <kaber@trash.net>
Cc: Ben Greear <greearb@candelatech.com>
Cc: Ben Hutchings <bhutchings@solarflare.com>
Acked-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/macvlan.c
include/linux/if_macvlan.h