summaryrefslogtreecommitdiffstats
path: root/lib/devres.c
diff options
context:
space:
mode:
authorRoman Gushchin <guro@fb.com>2019-07-12 05:56:24 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2019-07-12 20:05:44 +0200
commit63b02ef7dc4ec239df45c018ac0adbd02ba30a0c (patch)
tree8dba00a499a11f78abf6a12f963a26b9c57397d1 /lib/devres.c
parentmm: memcg/slab: don't check the dying flag on kmem_cache creation (diff)
downloadlinux-63b02ef7dc4ec239df45c018ac0adbd02ba30a0c.tar.xz
linux-63b02ef7dc4ec239df45c018ac0adbd02ba30a0c.zip
mm: memcg/slab: synchronize access to kmem_cache dying flag using a spinlock
Currently the memcg_params.dying flag and the corresponding workqueue used for the asynchronous deactivation of kmem_caches is synchronized using the slab_mutex. It makes impossible to check this flag from the irq context, which will be required in order to implement asynchronous release of kmem_caches. So let's switch over to the irq-save flavor of the spinlock-based synchronization. Link: http://lkml.kernel.org/r/20190611231813.3148843-8-guro@fb.com Signed-off-by: Roman Gushchin <guro@fb.com> Acked-by: Vladimir Davydov <vdavydov.dev@gmail.com> Reviewed-by: Shakeel Butt <shakeelb@google.com> Cc: Christoph Lameter <cl@linux.com> Cc: Johannes Weiner <hannes@cmpxchg.org> Cc: Michal Hocko <mhocko@suse.com> Cc: Waiman Long <longman@redhat.com> Cc: David Rientjes <rientjes@google.com> Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com> Cc: Pekka Enberg <penberg@kernel.org> Cc: Andrei Vagin <avagin@gmail.com> Cc: Qian Cai <cai@lca.pw> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'lib/devres.c')
0 files changed, 0 insertions, 0 deletions