[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20171213140555.s4hzg3igtjfgaueh@linutronix.de>
Date: Wed, 13 Dec 2017 15:05:55 +0100
From: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
To: linux-rt-users@...r.kernel.org,
Jesper Dangaard Brouer <brouer@...hat.com>
Cc: linux-kernel@...r.kernel.org, tglx@...utronix.de,
Peter Zijlstra <peterz@...radead.org>,
Steven Rostedt <rostedt@...dmis.org>,
Vladimir Davydov <vdavydov@...tuozzo.com>, linux-mm@...ck.org
Subject: [PATCH RT] mm/slub: close possible memory-leak in
kmem_cache_alloc_bulk()
Under certain circumstances we could leak elements which were moved to
the local "to_free" list. The damage is limited since I can't find any
users here.
Cc: stable-rt@...r.kernel.org
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
---
Jesper: There are no users of kmem_cache_alloc_bulk() and kfree_bulk().
Only kmem_cache_free_bulk() is used since it was introduced. Do you
think that it would make sense to remove those?
mm/slub.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/mm/slub.c b/mm/slub.c
index ffd2fa0f415e..9053e929ce9d 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -3240,6 +3240,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size,
return i;
error:
local_irq_enable();
+ free_delayed(&to_free);
slab_post_alloc_hook(s, flags, i, p);
__kmem_cache_free_bulk(s, i, p);
return 0;
--
2.15.1
Powered by blists - more mailing lists