提交 fc818301 编写于 作者: I Ingo Molnar 提交者: Linus Torvalds

[PATCH] revert slab.c locking change

Chandra Seetharaman reported SLAB crashes caused by the slab.c lock
annotation patch.  There is only one chunk of that patch that has a
material effect on the slab logic - this patch undoes that chunk.

This was confirmed to fix the slab problem by Chandra.
Signed-off-by: NIngo Molnar <mingo@elte.hu>
Tested-by: NChandra Seetharaman <sekharan@us.ibm.com>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 3e705f27
......@@ -3119,16 +3119,7 @@ static void free_block(struct kmem_cache *cachep, void **objpp, int nr_objects,
if (slabp->inuse == 0) {
if (l3->free_objects > l3->free_limit) {
l3->free_objects -= cachep->num;
/*
* It is safe to drop the lock. The slab is
* no longer linked to the cache. cachep
* cannot disappear - we are using it and
* all destruction of caches must be
* serialized properly by the user.
*/
spin_unlock(&l3->list_lock);
slab_destroy(cachep, slabp);
spin_lock(&l3->list_lock);
} else {
list_add(&slabp->list, &l3->slabs_free);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册