summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Rapoport <rppt@linux.vnet.ibm.com>2018-10-07 11:31:51 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-10-18 09:18:18 +0200
commit37e64cb69f0fc65abdf5e3ad96a6d4fed627ca3a (patch)
tree7fa2ce7e67dc383d6bd616e9f3c5681604d574b0
parent71cfcc667ffa1c8988321567321e7ef32f93ca07 (diff)
downloadlinux-stable-37e64cb69f0fc65abdf5e3ad96a6d4fed627ca3a.tar.gz
linux-stable-37e64cb69f0fc65abdf5e3ad96a6d4fed627ca3a.tar.bz2
linux-stable-37e64cb69f0fc65abdf5e3ad96a6d4fed627ca3a.zip
percpu: stop leaking bitmap metadata blocks
commit 6685b357363bfe295e3ae73665014db4aed62c58 upstream. The commit ca460b3c9627 ("percpu: introduce bitmap metadata blocks") introduced bitmap metadata blocks. These metadata blocks are allocated whenever a new chunk is created, but they are never freed. Fix it. Fixes: ca460b3c9627 ("percpu: introduce bitmap metadata blocks") Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com> Cc: stable@vger.kernel.org Signed-off-by: Dennis Zhou <dennis@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--mm/percpu.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/mm/percpu.c b/mm/percpu.c
index 0b6480979ac7..074732f3c209 100644
--- a/mm/percpu.c
+++ b/mm/percpu.c
@@ -1204,6 +1204,7 @@ static void pcpu_free_chunk(struct pcpu_chunk *chunk)
{
if (!chunk)
return;
+ pcpu_mem_free(chunk->md_blocks);
pcpu_mem_free(chunk->bound_map);
pcpu_mem_free(chunk->alloc_map);
pcpu_mem_free(chunk);