diff options
author | Wei Yongjun <yongjun_wei@trendmicro.com.cn> | 2016-07-27 00:22:11 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-07-27 01:19:19 +0200 |
commit | de24baecd7628aa19e8b53530bb33f8ffbaf5220 (patch) | |
tree | 2f5bc8f8243b300de9fd269f2a49c0442684f734 /mm/slab.c | |
parent | mm: faster kmalloc_array(), kcalloc() (diff) | |
download | linux-de24baecd7628aa19e8b53530bb33f8ffbaf5220.tar.xz linux-de24baecd7628aa19e8b53530bb33f8ffbaf5220.zip |
mm/slab: use list_move instead of list_del/list_add
Using list_move() instead of list_del() + list_add() to avoid needlessly
poisoning the next and prev values.
Link: http://lkml.kernel.org/r/1468929772-9174-1-git-send-email-weiyj_lk@163.com
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Acked-by: David Rientjes <rientjes@google.com>
Acked-by: Christoph Lameter <cl@linux.com>
Cc: Pekka Enberg <penberg@kernel.org>
Cc: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to '')
-rw-r--r-- | mm/slab.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/mm/slab.c b/mm/slab.c index fc9496bdd038..09771ed3e693 100644 --- a/mm/slab.c +++ b/mm/slab.c @@ -3452,8 +3452,7 @@ static void free_block(struct kmem_cache *cachep, void **objpp, n->free_objects -= cachep->num; page = list_last_entry(&n->slabs_free, struct page, lru); - list_del(&page->lru); - list_add(&page->lru, list); + list_move(&page->lru, list); } } |