Message ID | 20230202151633.2310897-1-gregkh@linuxfoundation.org |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp301069wrn; Thu, 2 Feb 2023 07:23:39 -0800 (PST) X-Google-Smtp-Source: AK7set8dkqD/4GzWMvSYN3uJgGOyMEN1P/jLbMR7mny89Ww2PLMK99E7LOWm4LZbfITViyA3F0eN X-Received: by 2002:aa7:9d0e:0:b0:592:61a5:40 with SMTP id k14-20020aa79d0e000000b0059261a50040mr6296709pfp.16.1675351419198; Thu, 02 Feb 2023 07:23:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1675351419; cv=none; d=google.com; s=arc-20160816; b=UIi6UjrxY9ytmoLx4do5BajIU6SkZRl1h+wCjIQBe/nJBYSuhQndq8FXuHFJlksSpz rRE7tWYfiU/dss1H+I2KrtoyWSR16a2MQ9iACeccKdXsI6bg3GjTC8bvKcWC6sGCZTc6 3sCHUM/btLq065NLsViC9AV+KEujpjZ81fyEZZ5aIE2XNrnpUuXO++nl7PbaBKRK4eW6 uqdWTBOH1RIBklSwTDsBI1QepyTMMNG/N1kLOT7hEBVlU73uOTlrl96aUkOKvUkyhepd 99uIJfH7ETchY/Cgj6WEE6tBPIKkqGjEx5+ld0g6E2CT8Fa294wSyEKCk1ZiWMLJqPUL wMjA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=0muV1kWUuIbyYOyTgCvYFPkaeb0vgQcpGrBvDJfp+Jw=; b=kV3OXeRPC801q1ogxgxSiPKxD0MNdTYpG7jPPv09900Gzvsh/7ILkKJ6D4g+4gMyIr orH2uAS7FTObAmpWSzWNqZcgcvAnc3sg2GUPE2pW617XGms/6VHKzJ2kLjbzGGCfxBnm UIoMKNg+bt6kslbbRqgXO9Jqjfz1wLE6KaDPqQ5a7PpugIKSg9Ay220+yoWwcMxYpLVI fCF1nHkn3d9vdgdLHt+Fkm//IM6BsrS9NQ41wXAepQPNmmmoFMJFdTPm2szs9NAHTaBo 1lf17s59ZVU5NuaEwVWXNgL2nQo3bcx2ZnhJvxlNkH1zRGD42wl2C3mpK+hjy+BVL7hy mCHg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=cAmbjzs1; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n4-20020a056a0007c400b00582308c8101si12543833pfu.321.2023.02.02.07.23.27; Thu, 02 Feb 2023 07:23:39 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=cAmbjzs1; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232601AbjBBPQo (ORCPT <rfc822;il.mystafa@gmail.com> + 99 others); Thu, 2 Feb 2023 10:16:44 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60508 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232566AbjBBPQk (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Thu, 2 Feb 2023 10:16:40 -0500 Received: from ams.source.kernel.org (ams.source.kernel.org [IPv6:2604:1380:4601:e00::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B2083518C5 for <linux-kernel@vger.kernel.org>; Thu, 2 Feb 2023 07:16:39 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 6BEE3B82159 for <linux-kernel@vger.kernel.org>; Thu, 2 Feb 2023 15:16:38 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id A43C7C433EF; Thu, 2 Feb 2023 15:16:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1675350997; bh=375h/0YdPQoA8OAiFk1H0myln1hPUol5vUQ4uYQaStI=; h=From:To:Cc:Subject:Date:From; b=cAmbjzs1sC4rbzy4R2pEMCwQC1CbJ6NBVhhihQJaNKQ4C/nBZGbGdcHFt67Fe5L0S M0nxBT6iGdIOxqh+3mAWxFSN2Rqh7lmZxnqCCbfe8nz/GBC0Ju7DtM4zVg36R/8KgJ 6JParMOmHU8BA89wXuaGItUyx94zxcp8hYYju0pI= From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Andrew Morton <akpm@linux-foundation.org>, Yang Yingliang <yangyingliang@huawei.com> Subject: [PATCH] kernel/fail_function: fix memory leak with using debugfs_lookup() Date: Thu, 2 Feb 2023 16:16:33 +0100 Message-Id: <20230202151633.2310897-1-gregkh@linuxfoundation.org> X-Mailer: git-send-email 2.39.1 MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=1109; i=gregkh@linuxfoundation.org; h=from:subject; bh=375h/0YdPQoA8OAiFk1H0myln1hPUol5vUQ4uYQaStI=; b=owGbwMvMwCRo6H6F97bub03G02pJDMm3L180YFDdsqLGVELKL65IOGPS/geLf23m/sf2R+6RG9PF /YUHO2JZGASZGGTFFFm+bOM5ur/ikKKXoe1pmDmsTCBDGLg4BWAiRUoMC26YcL3uPFP74zSDbbcv/4 X6u5PuZTIsOP1t5VIZc9YjrYcWVp5VEFq+TWoGJwA= X-Developer-Key: i=gregkh@linuxfoundation.org; a=openpgp; fpr=F4B60CC5BF78C2214A313DCB3147D40DDB2DFB29 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1756733289622778498?= X-GMAIL-MSGID: =?utf-8?q?1756733289622778498?= |
Series |
kernel/fail_function: fix memory leak with using debugfs_lookup()
|
|
Commit Message
Greg KH
Feb. 2, 2023, 3:16 p.m. UTC
When calling debugfs_lookup() the result must have dput() called on it,
otherwise the memory will leak over time. To make things simpler, just
call debugfs_lookup_and_remove() instead which handles all of the logic
at once.
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Yang Yingliang <yangyingliang@huawei.com>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
kernel/fail_function.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
Comments
On 2023/2/2 23:16, Greg Kroah-Hartman wrote: > When calling debugfs_lookup() the result must have dput() called on it, > otherwise the memory will leak over time. To make things simpler, just > call debugfs_lookup_and_remove() instead which handles all of the logic > at once. > > Cc: Andrew Morton <akpm@linux-foundation.org> > Cc: Yang Yingliang <yangyingliang@huawei.com> > Cc: linux-kernel@vger.kernel.org > Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by: Yang Yingliang <yangyingliang@huawei.com>
diff --git a/kernel/fail_function.c b/kernel/fail_function.c index a7ccd2930c5f..d971a0189319 100644 --- a/kernel/fail_function.c +++ b/kernel/fail_function.c @@ -163,10 +163,7 @@ static void fei_debugfs_add_attr(struct fei_attr *attr) static void fei_debugfs_remove_attr(struct fei_attr *attr) { - struct dentry *dir; - - dir = debugfs_lookup(attr->kp.symbol_name, fei_debugfs_dir); - debugfs_remove_recursive(dir); + debugfs_lookup_and_remove(attr->kp.symbol_name, fei_debugfs_dir); } static int fei_kprobe_handler(struct kprobe *kp, struct pt_regs *regs)