]> git.baikalelectronics.ru Git - kernel.git/commit
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)
commit903b5111f899fa5165a1888d23fdd7c09ab7272f
tree8046d7dbd13f091d31245806a2802a2f4808f4cf
parent9e2b141d40f15defd5a793ee166215d9f042f9e1
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