Files
kernel_amazon_mt8127-common/include/linux
David Decotigny 896f97ea95 lib: cpu_rmap: avoid flushing all workqueues
In some cases, free_irq_cpu_rmap() is called while holding a lock (eg
rtnl).  This can lead to deadlocks, because it invokes
flush_scheduled_work() which ends up waiting for whole system workqueue
to flush, but some pending works might try to acquire the lock we are
already holding.

This commit uses reference-counting to replace
irq_run_affinity_notifiers().  It also removes
irq_run_affinity_notifiers() altogether.

[akpm@linux-foundation.org: eliminate free_cpu_rmap, rename cpu_rmap_reclaim() to cpu_rmap_release(), propagate kref_put() retval from cpu_rmap_put()]
Signed-off-by: David Decotigny <decot@googlers.com>
Reviewed-by: Ben Hutchings <bhutchings@solarflare.com>
Acked-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Or Gerlitz <ogerlitz@mellanox.com>
Acked-by: Amir Vadai <amirv@mellanox.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-01-11 14:54:54 -08:00
..
2013-01-02 17:36:10 -08:00
2013-01-02 17:36:10 -08:00
2012-12-07 17:02:47 +00:00
2013-01-02 17:36:10 -08:00
2012-11-30 12:37:36 +01:00
2012-12-02 00:05:12 +00:00
2012-11-15 00:34:23 +01:00
2012-12-20 13:57:36 -05:00
2012-12-21 20:23:41 +00:00
2012-11-28 11:54:40 +01:00
2012-11-22 13:43:27 +09:00
2012-11-28 21:49:02 -05:00
2012-11-28 21:49:02 -05:00
2012-11-21 10:07:48 +01:00
2012-11-23 12:23:40 +01:00
2012-12-14 13:05:26 +10:30
2012-11-21 15:09:26 -08:00
2012-11-20 16:15:02 +10:00
2012-12-12 17:38:33 -08:00
2012-12-20 18:46:29 -05:00
2012-12-14 13:06:40 +10:30
2012-12-25 18:45:06 -05:00
2012-12-11 17:22:27 -08:00
2013-01-03 15:57:14 -08:00
2012-11-16 14:33:04 -08:00
2012-12-18 15:02:13 -08:00
2012-12-18 15:02:14 -08:00
2012-11-15 17:20:58 -08:00