dynticks: avoid flow_cache_flush() interrupting every core
authorChris Metcalf <cmetcalf@tilera.com>
Tue, 19 Mar 2013 11:35:58 +0000 (11:35 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 20 Mar 2013 17:28:39 +0000 (13:28 -0400)
commit8fdc929f5727d999d11ba3763b92f6eeacc096f9
tree8046d7dbd13f091d31245806a2802a2f4808f4cf
parent7fa6f34081f168975af72be51715bdc6601931f7
dynticks: avoid flow_cache_flush() interrupting every core

Previously, if you did an "ifconfig down" or similar on one core, and
the kernel had CONFIG_XFRM enabled, every core would be interrupted to
check its percpu flow list for items that could be garbage collected.

With this change, we generate a mask of cores that actually have any
percpu items, and only interrupt those cores.  When we are trying to
isolate a set of cpus from interrupts, this is important to do.

Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/flow.c