Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934324AbdGTKgR (ORCPT ); Thu, 20 Jul 2017 06:36:17 -0400 Received: from mx1.redhat.com ([209.132.183.28]:46946 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933672AbdGTKgP (ORCPT ); Thu, 20 Jul 2017 06:36:15 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 9E2D380C0E Authentication-Results: ext-mx02.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx02.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=chuhu@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 9E2D380C0E From: Chunyu Hu To: rostedt@goodmis.org Cc: linux-kernel@vger.kernel.org, mingo@kernel.org, mhiramat@kernel.org, shuwang@redhat.com, liwang@redhat.com Subject: [PATCH] tracing: Fix kmemleak in instance_rmdir Date: Thu, 20 Jul 2017 18:36:09 +0800 Message-Id: <1500546969-12594-1-git-send-email-chuhu@redhat.com> X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Thu, 20 Jul 2017 10:36:15 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1349 Lines: 40 Hit the kmemleak when executing instance_rmdir, it forgot releasing mem of tracing_cpumask. With this fix, the warn does not appear any more. unreferenced object 0xffff93a8dfaa7c18 (size 8): comm "mkdir", pid 1436, jiffies 4294763622 (age 9134.308s) hex dump (first 8 bytes): ff ff ff ff ff ff ff ff ........ backtrace: [] kmemleak_alloc+0x4a/0xa0 [] __kmalloc_node+0xf1/0x280 [] alloc_cpumask_var_node+0x23/0x30 [] alloc_cpumask_var+0xe/0x10 [] instance_mkdir+0x90/0x240 [] tracefs_syscall_mkdir+0x40/0x70 [] vfs_mkdir+0x109/0x1b0 [] SyS_mkdir+0xd0/0x100 [] do_syscall_64+0x67/0x150 [] return_from_SYSCALL_64+0x0/0x6a [] 0xffffffffffffffff Signed-off-by: Chunyu Hu --- kernel/trace/trace.c | 1 + 1 file changed, 1 insertion(+) diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index 2d0ffcc..42b9355 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -7774,6 +7774,7 @@ static int instance_rmdir(const char *name) } kfree(tr->topts); + free_cpumask_var(tr->tracing_cpumask); kfree(tr->name); kfree(tr); -- 1.8.3.1