From patchwork Fri Oct 21 02:20:52 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6484 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp437922wrr; Thu, 20 Oct 2022 19:26:00 -0700 (PDT) X-Google-Smtp-Source: AMsMyM7HIKhKjsKYSBrIptISDI9VDLAmB4ETRN0FtYQ24Gw44XtF5CpuvPZuTt+Drtungiiy8NKV X-Received: by 2002:a63:1608:0:b0:45a:355a:9420 with SMTP id w8-20020a631608000000b0045a355a9420mr14314820pgl.354.1666319160458; Thu, 20 Oct 2022 19:26:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319160; cv=none; d=google.com; s=arc-20160816; b=JuEmEmlOrhJG+ozdxUkJO13MMDrn+x8vZJaL+8jTFJBdqt2gmMRs1Xiox/8RAXjOEw tPiAyqhdL+jKyRRNKht+Us/+fRI7J9iz6EnROlSAWIal/20TjZ4gvsOd3A7pHv+gU8Wx AH01+zIGtX4dDl5cSZ5nkLHdppA2KXjfLLlomdnt9J/K3vATWvCHgFiffbBWxzd8vjyO 1A6A91iXkhBuaRIyJ8owH51CiPv00Qs7JmcgiYuZHxB3NLDDv6/LlfukI+95OQqtrt7/ Ptf2wIeeDEjnJ/2ISMz6IwV/nlNxWh/0X05ljihMcD9TBvxMQv5s2L6RsnSO2mxZwqL/ bqcw== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=dyGVpi/cxfdKsPC0auDFM0qgMAIU47NidVfdyPK5ykE=; b=IM/aZ5Czw/QvfoM/Z6k73kWhW0Wec1XojDbp/FQ6nzqVS4u6Z7bBS+CG7kpa57k6Qi 1ulb3Dcg5e6S39DkRgre+b+R91GqLjDtXFvq7V1O73TaGT7gtD0PDM2IVe9UVRdaF8N6 6EFgUdxmHBg24EAV+6Ul2I3sv4Bp5t5d2fa9bMSICMyfsEViqAUxHBr4TPeD6UnID+uX wGQrISiledlEUPn8jAm68Si7VUCoYES3XX+taFNOwso4BNDQsaz+1HakSGcOd3+1wgU6 A/7TlcTMXxDf7rxQSo3cqx6825pTOY5V62GDqB64WvjLjnPZDZUyEzyDWHR58qIPJG+d jBHA== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 21-20020a630515000000b004599c5f7d63si23725779pgf.857.2022.10.20.19.25.47; Thu, 20 Oct 2022 19:26:00 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230018AbiJUCXJ (ORCPT + 99 others); Thu, 20 Oct 2022 22:23:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37596 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229980AbiJUCWz (ORCPT ); Thu, 20 Oct 2022 22:22:55 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7A72A232E54 for ; Thu, 20 Oct 2022 19:22:51 -0700 (PDT) Received: from dggpemm500022.china.huawei.com (unknown [172.30.72.57]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4MtpCN0WmtzHvCB; Fri, 21 Oct 2022 10:22:40 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500022.china.huawei.com (7.185.36.162) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:40 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:36 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 01/11] kset: fix documentation for kset_register() Date: Fri, 21 Oct 2022 10:20:52 +0800 Message-ID: <20221021022102.2231464-2-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262279852004794?= X-GMAIL-MSGID: =?utf-8?q?1747262279852004794?= kset_register() is currently used in some places without calling kset_put() in error path, because the callers think it should be kset internal thing to do, but the driver core can not know what caller doing with that memory at times. The memory could be freed both in kset_put() and error path of caller, if it is called in kset_register(). So make the function documentation more explicit about calling kset_put() in the error path of caller. Signed-off-by: Yang Yingliang --- lib/kobject.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/kobject.c b/lib/kobject.c index a0b2dbfcfa23..6da04353d974 100644 --- a/lib/kobject.c +++ b/lib/kobject.c @@ -834,6 +834,9 @@ EXPORT_SYMBOL_GPL(kobj_sysfs_ops); /** * kset_register() - Initialize and add a kset. * @k: kset. + * + * If this function returns an error, kset_put() must be called to + * properly clean up the memory associated with the object. */ int kset_register(struct kset *k) { From patchwork Fri Oct 21 02:20:53 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6475 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp437290wrr; Thu, 20 Oct 2022 19:23:54 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6IES37eH9kjwXiCg18Nx1OLGvgGsOrtobVPTDZKIeEnlNDXvv35aX0RMv371/4NFT8gSPf X-Received: by 2002:a05:6402:4312:b0:45c:c1e9:9dc8 with SMTP id m18-20020a056402431200b0045cc1e99dc8mr15041788edc.154.1666319034045; Thu, 20 Oct 2022 19:23:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319034; cv=none; d=google.com; s=arc-20160816; b=T5INhI0VxjHZGwDhxYP8hDIwvi71qKvBNY89Y5bXidNL+7jZql676VtmYbLyvJY0Nl XWXU0uULq2yzJd2Iz+HzEuieWv2mxDNxYUG9/r3bKoUJbkapkol/Mp5ApY18ynr76aRG l//jmjWz7FtQUd/VisDdYK0u9E8ciUzV5Qkq+GCb0YUDR+DTsuqlPIdKmR98mFEsrz68 a+1nZhpuwYyfbaOt5c2KCYuAug9MUEk5xcPQCLw+kO6SRAZdJw2nrS2EA8drUfkNbl/L fHAqX0OkU49yPusqpfR6q56A1ARgT3JHnp8QlnyERSOTEazeWzPUdqVf9opGriugU6/S ueQA== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=XcnBacFtkvcakgxinsPtVgsUyh+z9XVNjaHmktAFVU4=; b=PKiLsK8onEd+pJ0m7kzvOpcEEmdBk/RJTUKFqLfZQ/Qjk+nMyHAxVK4QNHRJYB16mv ksWTyjdidRVs1ql22uNgcdaO1/k188vYBdZzJDF9AIs0ocpIVmmMitRM6FrUWvB7ZhFH YtpROb4S2Nc/RyCbxGsa5LXYj+oUDIMzuQt7Tzs/gHGLxcy07qSQlslu3B7zWi8K6zdV +q8hlw0v95nriew65oLv7mTlAwjRKGtWUNs9TDB7vRqz6Ixy50cVk03ft7WR9UlIOp1V k53EpbwmkCkZ0M6eiAWsVcDVxHPEAznmyfeKTykBg86PXpHOzvYY4HprpBzGiWZXKWXu Af6Q== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id dm4-20020a170907948400b007894b9de062si5118999ejc.631.2022.10.20.19.23.28; Thu, 20 Oct 2022 19:23:54 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229739AbiJUCWo (ORCPT + 99 others); Thu, 20 Oct 2022 22:22:44 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37370 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229746AbiJUCWl (ORCPT ); Thu, 20 Oct 2022 22:22:41 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 86D5B1F810F for ; Thu, 20 Oct 2022 19:22:40 -0700 (PDT) Received: from dggpemm500021.china.huawei.com (unknown [172.30.72.56]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4Mtp7V36sMzpVfQ; Fri, 21 Oct 2022 10:19:18 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500021.china.huawei.com (7.185.36.109) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:38 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:37 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 02/11] kset: add null pointer check in kset_put() Date: Fri, 21 Oct 2022 10:20:53 +0800 Message-ID: <20221021022102.2231464-3-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262147686581724?= X-GMAIL-MSGID: =?utf-8?q?1747262147686581724?= kset_put() can be called from drivers, add null pointer check to make it more robust. Signed-off-by: Yang Yingliang --- include/linux/kobject.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/include/linux/kobject.h b/include/linux/kobject.h index 57fb972fea05..e81de8ba41a2 100644 --- a/include/linux/kobject.h +++ b/include/linux/kobject.h @@ -195,7 +195,8 @@ static inline struct kset *kset_get(struct kset *k) static inline void kset_put(struct kset *k) { - kobject_put(&k->kobj); + if (k) + kobject_put(&k->kobj); } static inline const struct kobj_type *get_ktype(struct kobject *kobj) From patchwork Fri Oct 21 02:20:54 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6476 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp437369wrr; Thu, 20 Oct 2022 19:24:08 -0700 (PDT) X-Google-Smtp-Source: AMsMyM70f9fZyGBlirqKjMXSY8mway1mUwKdEKxKCiOT5GJqwXE2ECb90VTYrxDxIBl/qWdRBEba X-Received: by 2002:a17:90b:1b4c:b0:20d:70d8:1491 with SMTP id nv12-20020a17090b1b4c00b0020d70d81491mr54804642pjb.3.1666319048057; Thu, 20 Oct 2022 19:24:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319048; cv=none; d=google.com; s=arc-20160816; b=EX3rpTBBpwgjqdrkNiEuNhdURjA5cguHLyLx8tE2x2deKeH7LfppW+I3kyWAXvRgWC /pIBUKu7c0UjU4ZlkLOqV8Dib+wAlqqkCNn3oTDIxUyqdagM9AGnMtQAsdXmqik6Y7Nm pRFptZ7DyY/jvyd0szxUTlhKE6tRa9IG52X9s/G3tjJb8SgWfBbkgInsrT8SgHPs672e scVRvneVFofNo322p4LF+tSji919mpuCiPRG+Oho3U2GYVVnL7Pb/MMPfFP2BWWaaROn 9NDJq6833xtJd004e7lEgnt4IpDIy5hwe/UgPxj2kewqtbI+zw1gCsIBnB7mTs7P+8xX qNaw== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=mjLKITkK8N9crl0PzR2/64poz+k3vFXzgANEOWIDYSk=; b=XhznJ/i4oMRMNchhzQSwYHqwP7xQIzPt3X7iEzl6J9rJ9y/BpFZZFHSGAochWnuDq0 4ARa3/yCr15MwWeILBBKY3ymHhLTLD0MCXdNvxeQGVUXkyVH69z4dW7K45jyGTaCjuiA 4WLovNyVssBVukvzduOK769noReFU7sz/W2vL9HEHASzHGq4BUTC3qKihu+lwodUdBsV ZJQR8pS2cDv4V5V8V5Pd2RCY2AgYpzzfYhTSepGHMf0C+n6KbEcJZuOcfVEDTxvGvVCe MnCPe/MaiITyzQVzg5TM9mwNpG8MDpkS3f9XIZEFSNo2TNChSIEoO+6rlKkDy8/J2YXi dKmw== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id f1-20020a170902ce8100b00179faf5c34asi27492410plg.379.2022.10.20.19.23.55; Thu, 20 Oct 2022 19:24:08 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229956AbiJUCWs (ORCPT + 99 others); Thu, 20 Oct 2022 22:22:48 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37376 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229853AbiJUCWm (ORCPT ); Thu, 20 Oct 2022 22:22:42 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 65DCE1F813D for ; Thu, 20 Oct 2022 19:22:41 -0700 (PDT) Received: from dggpemm500020.china.huawei.com (unknown [172.30.72.54]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4Mtp5s2PGmzmVHX; Fri, 21 Oct 2022 10:17:53 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500020.china.huawei.com (7.185.36.49) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:39 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:38 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 03/11] bus: fix possible memory leak in bus_register() Date: Fri, 21 Oct 2022 10:20:54 +0800 Message-ID: <20221021022102.2231464-4-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262161906415427?= X-GMAIL-MSGID: =?utf-8?q?1747262161906415427?= Inject fault while loading module (e.g. edac_core.ko), kset_register() may fail in bus_register(), if it fails, but the refcount of kobject is not decreased to 0, the name allocated in kobject_set_name() is leaked. To fix this by calling kset_put(), so that name can be freed in callback function kobject_cleanup(). unreferenced object 0xffff888103bddb68 (size 8): comm "systemd-udevd", pid 341, jiffies 4294903262 (age 42.212s) hex dump (first 8 bytes): 65 64 61 63 00 00 00 00 edac.... backtrace: [<000000009e31d566>] __kmalloc_track_caller+0x1ae/0x320 [<00000000e4cfd8de>] kstrdup+0x3a/0x70 [<000000003d0ec369>] kstrdup_const+0x68/0x80 [<000000008e5c3b20>] kvasprintf_const+0x10b/0x190 [<00000000b9a945aa>] kobject_set_name_vargs+0x56/0x150 [<000000000df9278c>] kobject_set_name+0xab/0xe0 [<00000000f51dc49f>] bus_register+0x132/0x350 [<000000007d91c2e5>] subsys_register+0x23/0x220 Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Signed-off-by: Yang Yingliang --- drivers/base/bus.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/base/bus.c b/drivers/base/bus.c index 7ca47e5b3c1f..301b5330f9d8 100644 --- a/drivers/base/bus.c +++ b/drivers/base/bus.c @@ -804,8 +804,10 @@ int bus_register(struct bus_type *bus) priv->drivers_autoprobe = 1; retval = kset_register(&priv->subsys); - if (retval) + if (retval) { + kset_put(&priv->subsys); goto out; + } retval = bus_create_file(bus, &bus_attr_uevent); if (retval) From patchwork Fri Oct 21 02:20:55 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6486 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp438184wrr; Thu, 20 Oct 2022 19:26:54 -0700 (PDT) X-Google-Smtp-Source: AMsMyM4m977ayZ8bWean6/eDmJkBIL0ns5SR6iJy7u6vTsF4lRBFPNTcPMqHuYrdOUMw3yb+OrZ4 X-Received: by 2002:a17:902:7894:b0:178:bb0b:5740 with SMTP id q20-20020a170902789400b00178bb0b5740mr17530089pll.65.1666319213775; Thu, 20 Oct 2022 19:26:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319213; cv=none; d=google.com; s=arc-20160816; b=ChsF0EW+Yfp4hdDvHU1mMdP3B9a6GeqG+A82qYh0QFAsBm+tMKD5X5n1wWxnVtQyn2 Qgj+97NhIAWooyyyzuDQg8tUX0KmEC+an5A+QEHAYdJYJ0GRWI4/dROwP5QgVi9Ph9sv Atm4mn9mv6kQ6YGlyn/9FQKSPzy7dZ/Gr6b7esXSinijHm3qVaR/Op8xykOCq1NpqYVG 8PHbtOpVZ77fen5bHV8XOzmBlBFHuO0PzT9/QJjtMShpg5mPorye0oPcfluLEAqANs0s rxslROHTdEedYf0Q2ThuhK+nbxrR6fZQ385aRzyzQgM9KX+0/wBEm4It1Zenrg8dVmt6 1Gjg== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=tVer8AZTrK9nyCudHIpk3LZZ7sbS0elDElqNKzjcfkQ=; b=WFIBk0+bWhILg8lPWXVRoqH7tQfSzT1/lTCy15R8YC8GaRVgmTC7ONU1HaGH110jR6 H0oxaFh2ebKeFwdmLveSGzv/tH8svIYhZwUKlxc0YpSROp9eFkGEpxyfIwHuhX1+UfL9 /qlWpAlBjEaNuVEltywJU/Z5ldS4NPNt3jKs9xzyeJSj8mIaWyHYYULxnz+Pas+O2OXF RJXj7SKSD/3ytiAtk5lpEpRkBLmc+8jBTtXf7+7X+KPqoMLuzZ4a5rSB8pRlKeaaVKkD EqLdFhhCyUKidPc5SMaNwggORrI0MOEAGb1w2BXoTY/RZxSjgdVW1vinNww0xVV21Mg1 sDVA== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id g21-20020a056a001a1500b00547a857b7b3si24091073pfv.375.2022.10.20.19.26.40; Thu, 20 Oct 2022 19:26:53 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230024AbiJUCXP (ORCPT + 99 others); Thu, 20 Oct 2022 22:23:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37704 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229973AbiJUCWy (ORCPT ); Thu, 20 Oct 2022 22:22:54 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 87D66230AAD for ; Thu, 20 Oct 2022 19:22:50 -0700 (PDT) Received: from dggpemm500022.china.huawei.com (unknown [172.30.72.57]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4MtpCM5YgKzHv3Y; Fri, 21 Oct 2022 10:22:39 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500022.china.huawei.com (7.185.36.162) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:40 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:39 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 04/11] kobject: fix possible memory leak in kset_create_and_add() Date: Fri, 21 Oct 2022 10:20:55 +0800 Message-ID: <20221021022102.2231464-5-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262336221436119?= X-GMAIL-MSGID: =?utf-8?q?1747262336221436119?= Inject fault while loading module (e.g. qemu_fw_cfg.ko), kset_register() may fail in kset_create_and_add(), if it fails, but the refcount of kobject is not decreased to 0, the name allocated in kset_create() is leaked. To fix this by calling kset_put(), so that name can be freed in callback function kobject_cleanup() and kset can be freed in kset_release(). unreferenced object 0xffff888103cc8c08 (size 8): comm "modprobe", pid 508, jiffies 4294915182 (age 120.020s) hex dump (first 8 bytes): 62 79 5f 6e 61 6d 65 00 by_name. backtrace: [<00000000572f97f9>] __kmalloc_track_caller+0x1ae/0x320 [<00000000a167a5cc>] kstrdup+0x3a/0x70 [<000000001cd0d05e>] kstrdup_const+0x68/0x80 [<00000000b9101e6d>] kvasprintf_const+0x10b/0x190 [<0000000088f2b8df>] kobject_set_name_vargs+0x56/0x150 [<000000003f8aca68>] kobject_set_name+0xab/0xe0 [<00000000249f7816>] kset_create_and_add+0x72/0x200 Fixes: b727c702896f ("kset: add kset_create_and_add function") Signed-off-by: Yang Yingliang --- lib/kobject.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/kobject.c b/lib/kobject.c index 6da04353d974..e77f37200876 100644 --- a/lib/kobject.c +++ b/lib/kobject.c @@ -985,7 +985,7 @@ struct kset *kset_create_and_add(const char *name, return NULL; error = kset_register(kset); if (error) { - kfree(kset); + kset_put(kset); return NULL; } return kset; From patchwork Fri Oct 21 02:20:56 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6483 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp437830wrr; Thu, 20 Oct 2022 19:25:39 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6BB6HDbrRJm9Jdqj07UXdD7PcQQlpW4dXAgpbbXY72Qtgs5RXol8033qp3jLJzYXRVFYSd X-Received: by 2002:a17:90b:4b0c:b0:20d:7ffa:4b1b with SMTP id lx12-20020a17090b4b0c00b0020d7ffa4b1bmr54284021pjb.16.1666319139279; Thu, 20 Oct 2022 19:25:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319139; cv=none; d=google.com; s=arc-20160816; b=xTxfYxLaSRWnbhiqg8WjZqyHq86eYHQm8Y56ux2W+8OLoaFF25SaWpp6GQ6ocllaoS CtjtwU40evljO3DJ/71kX2wQx+q+dEjogsk7O4YdemJCTCXZOjPx+tSr/wLsrZASqORV E6fBr61p7wvEFrFME43q/Wh6xJ+iJ+F53f+qXsRzekvD2ROxusgk8//hv012U+6CIsKT 3pHdr0bD+zs57HYuZUVGWAYmTlMbG55mpJ1Pwf4syfpJOIj0rK2N5+yLV36unkNDqj6g 80/Cyrf3mJ7kWfVDanIeDFT/6xfBcGXkD96jXEjo3MGPDmt7R2DKJszCQxP7EFiZQint QzNg== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=tOZescsvD7/mSYXpgxXYUI6xgf0H8v0eF53SpQOfNIM=; b=q6zcQhF3iDsDfAxRAaagNQR+sYCwAJCKlQC5p8EJNePyrUQxxvLw0p5OHv7qr9FOI0 J+Esj10Gapd3EhTACsp5d/vJv79COcXhPGJQv5iYjM60GCtTp79uQk0EGtCdFsDRfGio P7VA4gDuUrpyCApqsQdv4TYT84f7pby/J+G2MuOJnUSK6h9T+f2/oHvGAOuai0y5yO/q GG7/WjeKTJjf1NA8eRmOHXkc7/SmEIIo0q8IjEf9srdoTS+cUamQpf0fpajgfxmKtyaF QpdsWpmADLxIX7NpILNpjyrGTm13lJlZg9RkWpT33PvT76enAE58yOY22kWop+1+2OMH /zBQ== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id f22-20020a63f116000000b0043c9d3c38desi25181725pgi.607.2022.10.20.19.25.26; Thu, 20 Oct 2022 19:25:39 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230118AbiJUCYC (ORCPT + 99 others); Thu, 20 Oct 2022 22:24:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39218 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230055AbiJUCXk (ORCPT ); Thu, 20 Oct 2022 22:23:40 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0CDE5204ACB for ; Thu, 20 Oct 2022 19:23:19 -0700 (PDT) Received: from dggpemm500023.china.huawei.com (unknown [172.30.72.53]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4Mtp6h5RF0zVhyp; Fri, 21 Oct 2022 10:18:36 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500023.china.huawei.com (7.185.36.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:41 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:40 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 05/11] class: fix possible memory leak in __class_register() Date: Fri, 21 Oct 2022 10:20:56 +0800 Message-ID: <20221021022102.2231464-6-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262257438513599?= X-GMAIL-MSGID: =?utf-8?q?1747262257438513599?= Inject fault while loading module (e.g. pktcdvd.ko), kset_register() may fail in __class_register(), if it fails, but the refcount of kobject is not decreased to 0, the name allocated in kobject_set_name() is leaked. To fix this by calling kfree_const(). unreferenced object 0xffff888102fa8190 (size 8): comm "modprobe", pid 502, jiffies 4294906074 (age 49.296s) hex dump (first 8 bytes): 70 6b 74 63 64 76 64 00 pktcdvd. backtrace: [<00000000e7c7703d>] __kmalloc_track_caller+0x1ae/0x320 [<000000005e4d70bc>] kstrdup+0x3a/0x70 [<00000000c2e5e85a>] kstrdup_const+0x68/0x80 [<000000000049a8c7>] kvasprintf_const+0x10b/0x190 [<0000000029123163>] kobject_set_name_vargs+0x56/0x150 [<00000000747219c9>] kobject_set_name+0xab/0xe0 [<0000000005f1ea4e>] __class_register+0x15c/0x49a If class_add_groups() fails, it need delete kobject and free its name, besides, subsys_private also need be freed. unreferenced object 0xffff888037274000 (size 1024): comm "modprobe", pid 502, jiffies 4294906074 (age 49.296s) hex dump (first 32 bytes): 00 40 27 37 80 88 ff ff 00 40 27 37 80 88 ff ff .@'7.....@'7.... 00 00 00 00 ad 4e ad de ff ff ff ff 00 00 00 00 .....N.......... backtrace: [<00000000151f9600>] kmem_cache_alloc_trace+0x17c/0x2f0 [<00000000ecf3dd95>] __class_register+0x86/0x49a It can not call kset_put() or kset_unregister() in error path, because the 'cls' will be freed in callback function class_release() and it also freed in error path, it will cause double free. Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") Signed-off-by: Yang Yingliang --- drivers/base/class.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/base/class.c b/drivers/base/class.c index 64f7b9a0970f..87de0a04ee9b 100644 --- a/drivers/base/class.c +++ b/drivers/base/class.c @@ -187,11 +187,17 @@ int __class_register(struct class *cls, struct lock_class_key *key) error = kset_register(&cp->subsys); if (error) { + kfree_const(cp->subsys.kobj.name); kfree(cp); return error; } error = class_add_groups(class_get(cls), cls->class_groups); class_put(cls); + if (error) { + kobject_del(&cp->subsys.kobj); + kfree_const(cp->subsys.kobj.name); + kfree(cp); + } return error; } EXPORT_SYMBOL_GPL(__class_register); From patchwork Fri Oct 21 02:20:57 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6477 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp437380wrr; Thu, 20 Oct 2022 19:24:10 -0700 (PDT) X-Google-Smtp-Source: AMsMyM44xQuAsW1nbV8CZqgs4mG4kXafol6ckq62mNsosBM9umrtyrcgVvFNV7RVjDbe0p3FODPX X-Received: by 2002:a05:6402:51c9:b0:45d:5efe:d1a3 with SMTP id r9-20020a05640251c900b0045d5efed1a3mr14930839edd.58.1666319050020; Thu, 20 Oct 2022 19:24:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319050; cv=none; d=google.com; s=arc-20160816; b=AGJLky5xpqZRhEUxwNz/nN4N90NIA++xrmb0lKXhGKKsu8qjR9fJ5BOJwk+S+p5swC 2UJ4XPcp1QI6QacVkSRbahs7PN/1S+GaqKlYuJPp0jAIPck82xHVk//LTohADrmIhj14 jJCxdM0/ymPOCQwIPuG2li7kSv2UTrBZ8yq2UZB+t5TSoQE0sZTEJcrq3cfPaGE1wU85 9YhurkWKY4ynW0jp1MV/zLzJrPbrE3tix5AiT1WflIHF3ls0I4vMKUM6klS0pJsX3DbJ mh8QGoEmZtNIGXVBBAzo+O+ykhZuybLNCx3S9/RNivC9UgZSuETARNrUvJot+MKpLijj MYDg== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=WSEXmwx0N4x8ur/qaN3uPQl5/rYkkcR4UAdgcwqWvX0=; b=0DAeVd0hgMU3VFJAph6dYKtZtbZwU4S/4T1Y7Lr/6wk2h8AE95zlbgC7Txw3D+Dv0g yVQEdmHp+438/mU3bbernq6Hbcctj4PEP50KU8c+0c3ALprSSjn6e9E3r6XXc7d9P4DN Ak1X06FMIEodBXTBzj7ofQ1XIB0V6qgCmQrdrNjDBg3edBceZhL4uK1sUedpAO6c26Z9 LUr1dH2xVHDL8jEPnZBadcIUVKRFWAogiIz2T7G4WRZpnZkINuw6aRIrwAmER8rJi7xp WbkciQyEl57rSRlw8XAbHisMyTYsqx8sf6UULOQ3I2mYTuWShrks/mARHEmVOk/mWIFc wnUg== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n13-20020a05640205cd00b004485081f004si20977295edx.598.2022.10.20.19.23.45; Thu, 20 Oct 2022 19:24:10 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229965AbiJUCWv (ORCPT + 99 others); Thu, 20 Oct 2022 22:22:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37422 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229834AbiJUCWo (ORCPT ); Thu, 20 Oct 2022 22:22:44 -0400 Received: from szxga08-in.huawei.com (szxga08-in.huawei.com [45.249.212.255]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 09657226580 for ; Thu, 20 Oct 2022 19:22:44 -0700 (PDT) Received: from dggpemm500024.china.huawei.com (unknown [172.30.72.57]) by szxga08-in.huawei.com (SkyGuard) with ESMTP id 4Mtp5w3XNvz1P7D4; Fri, 21 Oct 2022 10:17:56 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500024.china.huawei.com (7.185.36.203) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:42 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:41 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 06/11] firmware: qemu_fw_cfg: fix possible memory leak in fw_cfg_build_symlink() Date: Fri, 21 Oct 2022 10:20:57 +0800 Message-ID: <20221021022102.2231464-7-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262164152263990?= X-GMAIL-MSGID: =?utf-8?q?1747262164152263990?= Inject fault while loading module, kset_register() may fail, if it fails, but the refcount of kobject is not decreased to 0, the name allocated in kobject_set_name() is leaked. To fix this by calling kset_put(), so that name can be freed in callback function kobject_cleanup() and 'subdir' is freed in kset_release(). unreferenced object 0xffff88810ad69050 (size 8): comm "swapper/0", pid 1, jiffies 4294677178 (age 38.812s) hex dump (first 8 bytes): 65 74 63 00 81 88 ff ff etc..... backtrace: [<00000000a80c7bf1>] __kmalloc_node_track_caller+0x44/0x1b0 [<000000003f0167c7>] kstrdup+0x3a/0x70 [<0000000049336709>] kstrdup_const+0x41/0x60 [<00000000175616e4>] kvasprintf_const+0xf5/0x180 [<000000004bcc30f7>] kobject_set_name_vargs+0x56/0x150 [<000000004b0251bd>] kobject_set_name+0xab/0xe0 [<00000000700151fb>] fw_cfg_sysfs_probe+0xa5b/0x1320 Fixes: 246c46ebaeae ("firmware: create directory hierarchy for sysfs fw_cfg entries") Signed-off-by: Yang Yingliang --- drivers/firmware/qemu_fw_cfg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/firmware/qemu_fw_cfg.c b/drivers/firmware/qemu_fw_cfg.c index a69399a6b7c0..d036e69cabbb 100644 --- a/drivers/firmware/qemu_fw_cfg.c +++ b/drivers/firmware/qemu_fw_cfg.c @@ -544,7 +544,7 @@ static int fw_cfg_build_symlink(struct kset *dir, } ret = kset_register(subdir); if (ret) { - kfree(subdir); + kset_put(subdir); break; } From patchwork Fri Oct 21 02:20:58 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6482 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp437823wrr; Thu, 20 Oct 2022 19:25:37 -0700 (PDT) X-Google-Smtp-Source: AMsMyM7nbRrZzxQ69lhthl7FHddr8hbxRmBgCY+VTQeJNHCOyQggCXA0h14U8HnUhid5a9s8jfBY X-Received: by 2002:a17:903:100c:b0:186:63a1:3b5d with SMTP id a12-20020a170903100c00b0018663a13b5dmr6160950plb.148.1666319137349; Thu, 20 Oct 2022 19:25:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319137; cv=none; d=google.com; s=arc-20160816; b=kTOd12GhlPp7RO/wLi86s9OxagfualAgpXoPc23ovO8EhagrE55IYaLr+Kqa6N4CMU eF5C6McmBhgBinXTPaLgCwRzKHaTjotZwBRnkD9eiaDBUSk1Kjzn2DnRxJhEhw9d2ZCB Z26EnLJXjRCiMx7zB9m1J3Lix/o2LfNdOTMNjcE68NA+Ym7qkvbfa9zc7V+euf8Y48Fv S9nHupoy45he+OP/KwiP07gyGX+jAprG3yg5iSqrM5CbUfzC0+Bwbuufvyj8vYhv2tYa bU5Pqk8mCNNFF9zyLiLxHHayvQZgtqK86wMZYXNJ5nUhIkQnnszTkhOIkC1bRz80zeYu BCjQ== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=1tpP1hkNdWvN34AYxj6RVP7WehDDZKUj72Nls7FxEGk=; b=MHGKkwjb7QH4Cx2sf43xFbrTmFLr+upqFq9yljk6WAWsYrKmsOXzvbB7XbcQWy0Z2k e8VgkVgrcRD8L3SAzYYXQucyYXEzaaHHPBAFWZTrbmEuYCZJod60qa/YV8jmgYOVZYWV h7CeFpXniaJqTluyqgYFqV7yvpsU7a6ZPEXPLN9vXqRMN5ZOR/+tgI3QUjBps7r4K8FZ T1LSDZSvqRKPZius8AFVMM1nVHQSFUZ+l/RCMNDoY5hATTd6Dr8Kn78NPtyW+h1yK3kS M4h/AbcmIRMkWwCZxKRvuQrAvSGIMkpSIDwzcowsg/penOVzVugZ3kmfF2IrgoCJ77HU m1CQ== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id t20-20020a056a00139400b0052ea6666960si25474070pfg.337.2022.10.20.19.25.25; Thu, 20 Oct 2022 19:25:37 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229992AbiJUCWz (ORCPT + 99 others); Thu, 20 Oct 2022 22:22:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37510 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229945AbiJUCWr (ORCPT ); Thu, 20 Oct 2022 22:22:47 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0656522BAEA for ; Thu, 20 Oct 2022 19:22:45 -0700 (PDT) Received: from dggpemm500020.china.huawei.com (unknown [172.30.72.54]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4Mtp7b16HRzpVdt; Fri, 21 Oct 2022 10:19:23 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500020.china.huawei.com (7.185.36.49) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:43 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:42 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 07/11] f2fs: fix possible memory leak in f2fs_init_sysfs() Date: Fri, 21 Oct 2022 10:20:58 +0800 Message-ID: <20221021022102.2231464-8-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262256012456967?= X-GMAIL-MSGID: =?utf-8?q?1747262256012456967?= Inject fault while loading module, kset_register() may fail, if it fails, but the refcount of kobject is not decreased to 0, the name allocated in kobject_set_name() is leaked. Fix this by calling kset_put(), so that name can be freed in callback function kobject_cleanup(). unreferenced object 0xffff888101b7cc80 (size 8): comm "modprobe", pid 252, jiffies 4294691378 (age 31.760s) hex dump (first 8 bytes): 66 32 66 73 00 88 ff ff f2fs.... backtrace: [<000000001db5b408>] __kmalloc_node_track_caller+0x44/0x1b0 [<000000002783a073>] kstrdup+0x3a/0x70 [<00000000ead2b281>] kstrdup_const+0x63/0x80 [<000000003e5cf8f7>] kvasprintf_const+0x149/0x180 [<00000000c4d949ff>] kobject_set_name_vargs+0x56/0x150 [<0000000044611660>] kobject_set_name+0xab/0xe0 Fixes: bf9e697ecd42 ("f2fs: expose features to sysfs entry") Signed-off-by: Yang Yingliang Reviewed-by: Chao Yu --- fs/f2fs/sysfs.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/f2fs/sysfs.c b/fs/f2fs/sysfs.c index df27afd71ef4..2ef7a48967be 100644 --- a/fs/f2fs/sysfs.c +++ b/fs/f2fs/sysfs.c @@ -1250,8 +1250,10 @@ int __init f2fs_init_sysfs(void) kobject_set_name(&f2fs_kset.kobj, "f2fs"); f2fs_kset.kobj.parent = fs_kobj; ret = kset_register(&f2fs_kset); - if (ret) + if (ret) { + kset_put(&f2fs_kset); return ret; + } ret = kobject_init_and_add(&f2fs_feat, &f2fs_feat_ktype, NULL, "features"); From patchwork Fri Oct 21 02:20:59 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6481 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp437807wrr; Thu, 20 Oct 2022 19:25:34 -0700 (PDT) X-Google-Smtp-Source: AMsMyM41jKXgtYfulq+/QTa97F0FH+KvW76o59QRzPbKzlmD6z3u58XNVx+4DjPFGZafesGaxNmX X-Received: by 2002:a17:90b:17cf:b0:20d:b274:6f50 with SMTP id me15-20020a17090b17cf00b0020db2746f50mr45565118pjb.231.1666319134652; Thu, 20 Oct 2022 19:25:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319134; cv=none; d=google.com; s=arc-20160816; b=p0D5+tAvmpML+eazVmS2UgMBNlq4gH1GfdSZ89Dx30RscOihrEy8ZLEhJsLLGUQVk/ r/Iqi4qpcE37adrnp+hupx8CcjhE93hKLwhYDldmQwJCvU7fyBhHpKR6AtyKJTrbJPN4 g/IkytBmMIHhtQ2aFV4zhntBfCizHWqWjWDNv98Eayhysh3/kEVoOUb1VQJgw+E7jft2 gYo2riM+NHSxbvBsc9AvsYN5bhgXAAEsyFhncSrusfBXtde67T22JjSUtQmQJWXEiLbl cn+u+hjOpXCozyyoquIjwotR65tJzzGNUI9G8wA9/kEorL4o0NMMYkwxuoxSFY6/MUk5 M3Pg== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=anE6kFKk4KL8osB9HOW0knNDcuVxgwcI8Ym8jD8Lx2Y=; b=aC/kAERt4ojV7x9cPXDxILiVImC47qbNy4QRU/Eq1afYireoygLqo7Co3H1tIT9YBH hHfrWgOgzDc5cBilVzzJpDCOHz/7BRYst9U8xizzFl1CGXJOAkoKMiZs4htsdimIaqwf ihRCbALD4YkaaK/MvoXHcSDjXduLpjjNYiCCdN84GFrWLzHE+t9JsbHAAXyUf7AhVu3d 73baCpBwkbLesBBRuCe4Mv0aOOlZ3VUO25bMjbDpPnCowTqTqC1FDDRFnRYIognnKuKw P3BlkT1tHVsJqUpugIYr/9ARyYtijTL3mCemh349fJxQFqEqvYlhjxKYUX5yzB9Qn2WG kSCQ== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id l4-20020a17090a660400b00202c7f4631esi5407535pjj.19.2022.10.20.19.25.21; Thu, 20 Oct 2022 19:25:34 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230039AbiJUCXX (ORCPT + 99 others); Thu, 20 Oct 2022 22:23:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37516 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229991AbiJUCWz (ORCPT ); Thu, 20 Oct 2022 22:22:55 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1EE54232E4F for ; Thu, 20 Oct 2022 19:22:50 -0700 (PDT) Received: from dggpemm500022.china.huawei.com (unknown [172.30.72.57]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4MtpCN18FmzHvCF; Fri, 21 Oct 2022 10:22:40 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500022.china.huawei.com (7.185.36.162) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:44 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:43 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 08/11] erofs: fix possible memory leak in erofs_init_sysfs() Date: Fri, 21 Oct 2022 10:20:59 +0800 Message-ID: <20221021022102.2231464-9-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262252690959766?= X-GMAIL-MSGID: =?utf-8?q?1747262252690959766?= Inject fault while loading module, kset_register() may fail, if it fails, but the refcount of kobject is not decreased to 0, the name allocated in kobject_set_name() is leaked. Fix this by calling kset_put(), so that name can be freed in callback function kobject_cleanup(). unreferenced object 0xffff888101d228c0 (size 8): comm "modprobe", pid 276, jiffies 4294722700 (age 13.151s) hex dump (first 8 bytes): 65 72 6f 66 73 00 ff ff erofs... backtrace: [<00000000e2a9a4a6>] __kmalloc_node_track_caller+0x44/0x1b0 [<00000000b8ce02de>] kstrdup+0x3a/0x70 [<000000004a0e01d2>] kstrdup_const+0x63/0x80 [<00000000051b6cda>] kvasprintf_const+0x149/0x180 [<000000004dc51dad>] kobject_set_name_vargs+0x56/0x150 [<00000000b30f0bad>] kobject_set_name+0xab/0xe0 Fixes: 168e9a76200c ("erofs: add sysfs interface") Signed-off-by: Yang Yingliang --- fs/erofs/sysfs.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/erofs/sysfs.c b/fs/erofs/sysfs.c index 783bb7b21b51..653b35001bc5 100644 --- a/fs/erofs/sysfs.c +++ b/fs/erofs/sysfs.c @@ -254,8 +254,10 @@ int __init erofs_init_sysfs(void) kobject_set_name(&erofs_root.kobj, "erofs"); erofs_root.kobj.parent = fs_kobj; ret = kset_register(&erofs_root); - if (ret) + if (ret) { + kset_put(&erofs_root); goto root_err; + } ret = kobject_init_and_add(&erofs_feat, &erofs_feat_ktype, NULL, "features"); From patchwork Fri Oct 21 02:21:00 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6485 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp438112wrr; Thu, 20 Oct 2022 19:26:42 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6EDXxsXzLuB03mTPmr+S/btyJVHiIjQJ5wsCmg1ECEQxWAY+JsZNaqlrmMwP0uu61fixjT X-Received: by 2002:a63:5702:0:b0:44b:290:f24f with SMTP id l2-20020a635702000000b0044b0290f24fmr14363367pgb.558.1666319202367; Thu, 20 Oct 2022 19:26:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319202; cv=none; d=google.com; s=arc-20160816; b=AjGdlAXeiNal0Cyg9PtaB+ZtoUsCeQzmHAIJ3HZ8ILKfzJHRJ1/NnNxiEYYQDIyHU7 it6SeYlyfd0Q2YdioVDvUqZWw7qWSu6+KdrlYHKeS4Akc876kvRY6ef8EXyHf3gcBD3L nCwFq6eaHnEe/iNVKgecfsGk4JFl6o6FyhyL40NGNE2zWnMWB8Bhc1cjehiqlrRIDhrh ysN3Ks+ILZoHVRDj9gNWAOa4tmcaZymNAEHH8NnoG6DMEQTxTa9s+LE9Krd6teZwzAjC AOW65j70MP/pcs2uBXBOOZ9NgFnNDwmiTs7+99+X885AbtuhJs+5dqiR0fKkpU0Rtq3O Pkyg== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=xzMFxLeFKUbQzHCjgeZFy2Z3JsN/mOjM/Yn4m8OkMjM=; b=oLU8G2PuqH9HTfURjujq4IY5D0s2icMR5bEuEv6wmjcebYTNto9GOywIhfEieEJaH4 wRotnZw9Fb4S4SVVctBTyZPcOZgtwtKhIYKgwZCx3gPlwbECnRJJFZ+n15DLGUf9TXOz T0NnqOTkRX04HiLMHTj01u0D85ON9QomevTry81+ReVFBQrRzClE15x/Uxwi4DTKkKHc ubfu3bd9h7sjK2JpRw9z74NkNRN2CVYxC41se1pxt5gNmqBkugztF31fIKyUsgR+Q3M4 Rv+xKW3g18xOjrgENwdhIZiIJZhUt8B5iidLL+rbcliWtWFGkKRfeda9eQibSXoLUT0J hPyA== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id nd10-20020a17090b4cca00b0020d5c5e1660si5716890pjb.190.2022.10.20.19.26.29; Thu, 20 Oct 2022 19:26:42 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229719AbiJUCYM (ORCPT + 99 others); Thu, 20 Oct 2022 22:24:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37852 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230056AbiJUCXl (ORCPT ); Thu, 20 Oct 2022 22:23:41 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E1327204AD0 for ; Thu, 20 Oct 2022 19:23:20 -0700 (PDT) Received: from dggpemm500023.china.huawei.com (unknown [172.30.72.53]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4Mtp6h64dWzVj27; Fri, 21 Oct 2022 10:18:36 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500023.china.huawei.com (7.185.36.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:45 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:44 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 09/11] ocfs2: possible memory leak in mlog_sys_init() Date: Fri, 21 Oct 2022 10:21:00 +0800 Message-ID: <20221021022102.2231464-10-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262323947792650?= X-GMAIL-MSGID: =?utf-8?q?1747262323947792650?= Inject fault while loading module, kset_register() may fail, if it fails, but the refcount of kobject is not decreased to 0, the name allocated in kobject_set_name() is leaked. Fix this by calling kset_put(), so that name can be freed in callback function kobject_cleanup(). unreferenced object 0xffff888100da9348 (size 8): comm "modprobe", pid 257, jiffies 4294701096 (age 33.334s) hex dump (first 8 bytes): 6c 6f 67 6d 61 73 6b 00 logmask. backtrace: [<00000000306e441c>] __kmalloc_node_track_caller+0x44/0x1b0 [<000000007c491a9e>] kstrdup+0x3a/0x70 [<0000000015719a3b>] kstrdup_const+0x63/0x80 [<0000000084e458ea>] kvasprintf_const+0x149/0x180 [<0000000091302b42>] kobject_set_name_vargs+0x56/0x150 [<000000005f48eeac>] kobject_set_name+0xab/0xe0 Fixes: 34980ca8faeb ("Drivers: clean up direct setting of the name of a kset") Signed-off-by: Yang Yingliang --- fs/ocfs2/cluster/masklog.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/fs/ocfs2/cluster/masklog.c b/fs/ocfs2/cluster/masklog.c index 563881ddbf00..7f9ba816d955 100644 --- a/fs/ocfs2/cluster/masklog.c +++ b/fs/ocfs2/cluster/masklog.c @@ -156,6 +156,7 @@ static struct kset mlog_kset = { int mlog_sys_init(struct kset *o2cb_kset) { int i = 0; + int ret; while (mlog_attrs[i].attr.mode) { mlog_default_attrs[i] = &mlog_attrs[i].attr; @@ -165,7 +166,11 @@ int mlog_sys_init(struct kset *o2cb_kset) kobject_set_name(&mlog_kset.kobj, "logmask"); mlog_kset.kobj.kset = o2cb_kset; - return kset_register(&mlog_kset); + ret = kset_register(&mlog_kset); + if (ret) + kset_put(&mlog_kset); + + return ret; } void mlog_sys_shutdown(void) From patchwork Fri Oct 21 02:21:01 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6478 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp437469wrr; Thu, 20 Oct 2022 19:24:24 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6KOkw2ZZNiGsfGk9Os+zDw5r0u2Y12tgA+gqyzfhbkdkS6lP5i5OlqojfZSwDoSvaon6YB X-Received: by 2002:a17:907:2e01:b0:78d:e768:e845 with SMTP id ig1-20020a1709072e0100b0078de768e845mr13615736ejc.484.1666319064612; Thu, 20 Oct 2022 19:24:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319064; cv=none; d=google.com; s=arc-20160816; b=P19QvTttxK8OjaekGmQYjaHHCHq1n0qVIp9Uhjh1OLUh9ziV7d8pN6VLRKoJJLSbsG IFZ7gHUMIp5au8SunBHiT0G0oojq23myox4LuNG4R7N9QNmpDQqLB219EowgF8epoT6q 6GgV0ViyLtBMZM7DLoWpZ9E81sPi6G2pPVYFq8LN32dFwJMjrSA4hUhZL1r+6rTZM6vr wauaq+SXl+ZNiN5bVmhRxSzrjqqJrKQl3lbnINcoaAVoBJM4s3VAVmXZIgPfrfdboR5m 4RQW47c8jQrLPe3jevJWoiiMLIBUZN8xz+WDdHpfeOxLgN847U5oK+KT7RgIEFoRvmW3 7JZw== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=fcb42qrfZG9mh/rj+mBA5Uh2bL3ghst+sBplzJYJjDM=; b=O2L4H2aS6TvRtKU+uMmp2inFCku97jkAhMA21S/U8vZuuyVAvbgj9gBr0d6Iq+aVZN HtbreTGpWnX7WfOEbGALPpg0QDfvRRfIddq+EFUJMzB9bINwqjTY2g4NLcKrpq9DHrf8 cheGgdXQxgvo7YOLkytcn5VxY5kA5yxUcOH7XYBF4wQbokrWvqZsxYdbKQFHhTH9zANl lLTOosQlylMOK/oMXHx7RTMFgvbKTej5ZP2q83KxCkXIcNkd4TIeD3IaPjmOoS79/Kt8 Uh5vglSl7Ry8ZhRkuSiVB+Ro5xAcqf8WYSVk0ScVQWLsL2G78hhXlpBUq8evGsqBIE78 BC/Q== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id gg20-20020a170906e29400b0073d6c0facdcsi16178866ejb.259.2022.10.20.19.24.00; Thu, 20 Oct 2022 19:24:24 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230009AbiJUCXD (ORCPT + 99 others); Thu, 20 Oct 2022 22:23:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37594 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229948AbiJUCWu (ORCPT ); Thu, 20 Oct 2022 22:22:50 -0400 Received: from szxga02-in.huawei.com (szxga02-in.huawei.com [45.249.212.188]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BA5512248E8 for ; Thu, 20 Oct 2022 19:22:48 -0700 (PDT) Received: from dggpemm500024.china.huawei.com (unknown [172.30.72.54]) by szxga02-in.huawei.com (SkyGuard) with ESMTP id 4MtpCK4pJ1zHvCk; Fri, 21 Oct 2022 10:22:37 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500024.china.huawei.com (7.185.36.203) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:46 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:45 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 10/11] drm/amdgpu/discovery: fix possible memory leak Date: Fri, 21 Oct 2022 10:21:01 +0800 Message-ID: <20221021022102.2231464-11-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262179536585761?= X-GMAIL-MSGID: =?utf-8?q?1747262179536585761?= If kset_register() fails, the refcount of kobject is not 0, the name allocated in kobject_set_name(&kset.kobj, ...) is leaked. Fix this by calling kset_put(), so that it will be freed in callback function kobject_cleanup(). Cc: stable@vger.kernel.org Fixes: a6c40b178092 ("drm/amdgpu: Show IP discovery in sysfs") Signed-off-by: Yang Yingliang Reviewed-by: Luben Tuikov --- drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c index 3993e6134914..638edcf70227 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c @@ -863,7 +863,7 @@ static int amdgpu_discovery_sysfs_ips(struct amdgpu_device *adev, res = kset_register(&ip_hw_id->hw_id_kset); if (res) { DRM_ERROR("Couldn't register ip_hw_id kset"); - kfree(ip_hw_id); + kset_put(&ip_hw_id->hw_id_kset); return res; } if (hw_id_names[ii]) { @@ -954,7 +954,7 @@ static int amdgpu_discovery_sysfs_recurse(struct amdgpu_device *adev) res = kset_register(&ip_die_entry->ip_kset); if (res) { DRM_ERROR("Couldn't register ip_die_entry kset"); - kfree(ip_die_entry); + kset_put(&ip_die_entry->ip_kset); return res; } @@ -989,6 +989,7 @@ static int amdgpu_discovery_sysfs_init(struct amdgpu_device *adev) res = kset_register(&adev->ip_top->die_kset); if (res) { DRM_ERROR("Couldn't register die_kset"); + kset_put(&adev->ip_top->die_kset); goto Err; } From patchwork Fri Oct 21 02:21:02 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yingliang X-Patchwork-Id: 6479 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:4242:0:0:0:0:0 with SMTP id s2csp437641wrr; Thu, 20 Oct 2022 19:25:01 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5aVLX9XedAC5xa616A4pG8LOctKZaKS/JxPshfld+GTIZYdoCFgPqzgZtjE0D/2paSGEv+ X-Received: by 2002:a17:90b:48c1:b0:20c:8edd:59a3 with SMTP id li1-20020a17090b48c100b0020c8edd59a3mr19187459pjb.222.1666319101024; Thu, 20 Oct 2022 19:25:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1666319101; cv=none; d=google.com; s=arc-20160816; b=OY97Z6X3cm/VFTIslBBzG55Mhq2C31Tbz8fxJ+BpmVBvQ3hEmpCVGPImGUzrI8G4Py NE/nbPzJHkZ62f0tiVsWdi3Qmz7Hvx5C1G5F35XRVWjj9n3w52UpDfLmeZqXogwyEt63 uejGJASHXgDCfH0xVUVH1loXxgQqwG4U214syae7fJFoycGjRMvil3q5Dvg7y/X8ez47 4lELNfAaQaEIZoG3wf5ZC/wWKDvTgHg5yzHokvF92ApD54IpQJnHPZi+QMWT7+S7K0gL G5TZ5xS5fngioi4HeovPV7iKAwl3LuZxH4Wgroxrq0jvSu/IOio+Fh8aPPaUU8qziYL0 0T/w== 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 :references:in-reply-to:message-id:date:subject:cc:to:from; bh=Le9tPcdohqK3UOrnanVaHtQhl6eTkZN7tCulrd3hy6g=; b=McbIuNXNksX7Jt2zp05dwsw2Wf1wjp3Jo4YrD6BjZzP1h6pOl2kpKJ6MLOjL2j2Xhu l2+Xemvt0BTUiFjsP7Mjvqpl/3bqLD4loswxdtOT7UHI59uwnFVkfzRJdnbPONYUCcTz 3e/kn20y6D7WQsTEy54Hm2dVRGZKA2IKa4nlSZp6kC4v1r5C6PHxpRZMj58brTAnZHV6 VO7dcyWo6UnnDZW4LCy2dnQ29Xyz9RdUQRnki9y20qYis4cSjs4DAUrYty69fJnmC6xU beJITPlI9kJdXJ78TzFETOHf431L+Hwfv1T9b/rMHxa1+3RUy79bczCoJAx8WPhwtB+s pCfw== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y65-20020a17090a53c700b00205ef38b646si4955282pjh.80.2022.10.20.19.24.48; Thu, 20 Oct 2022 19:25:01 -0700 (PDT) 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; 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=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229981AbiJUCXA (ORCPT + 99 others); Thu, 20 Oct 2022 22:23:00 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37596 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229954AbiJUCWu (ORCPT ); Thu, 20 Oct 2022 22:22:50 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BAD90229E64 for ; Thu, 20 Oct 2022 19:22:48 -0700 (PDT) Received: from dggpemm500021.china.huawei.com (unknown [172.30.72.56]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4Mtp605R63zmVCd; Fri, 21 Oct 2022 10:18:00 +0800 (CST) Received: from dggpemm500007.china.huawei.com (7.185.36.183) by dggpemm500021.china.huawei.com (7.185.36.109) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:46 +0800 Received: from huawei.com (10.175.103.91) by dggpemm500007.china.huawei.com (7.185.36.183) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 21 Oct 2022 10:22:46 +0800 From: Yang Yingliang To: , , , , , , CC: , , , , , , , , , , , , , , , Subject: [PATCH 11/11] ubifs: Fix memory leak in ubifs_sysfs_init() Date: Fri, 21 Oct 2022 10:21:02 +0800 Message-ID: <20221021022102.2231464-12-yangyingliang@huawei.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221021022102.2231464-1-yangyingliang@huawei.com> References: <20221021022102.2231464-1-yangyingliang@huawei.com> MIME-Version: 1.0 X-Originating-IP: [10.175.103.91] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggpemm500007.china.huawei.com (7.185.36.183) X-CFilter-Loop: Reflected X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,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: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1747262217910992439?= X-GMAIL-MSGID: =?utf-8?q?1747262217910992439?= From: Liu Shixin When insmod ubifs.ko, a kmemleak reported as below: unreferenced object 0xffff88817fb1a780 (size 8): comm "insmod", pid 25265, jiffies 4295239702 (age 100.130s) hex dump (first 8 bytes): 75 62 69 66 73 00 ff ff ubifs... backtrace: [] slab_post_alloc_hook+0x9c/0x3c0 [] __kmalloc_track_caller+0x183/0x410 [] kstrdup+0x3a/0x80 [] kstrdup_const+0x66/0x80 [] kvasprintf_const+0x155/0x190 [] kobject_set_name_vargs+0x5b/0x150 [] kobject_set_name+0xbb/0xf0 [] do_one_initcall+0x14c/0x5a0 [] do_init_module+0x1f0/0x660 [] load_module+0x6d7e/0x7590 [] __do_sys_finit_module+0x19f/0x230 [] __x64_sys_finit_module+0x73/0xb0 [] do_syscall_64+0x35/0x80 [] entry_SYSCALL_64_after_hwframe+0x63/0xcd When kset_register() failed, we should call kset_put to cleanup it. Fixes: 2e3cbf425804 ("ubifs: Export filesystem error counters") Signed-off-by: Liu Shixin Signed-off-by: Yang Yingliang --- fs/ubifs/sysfs.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/ubifs/sysfs.c b/fs/ubifs/sysfs.c index 06ad8fa1fcfb..54270ad36321 100644 --- a/fs/ubifs/sysfs.c +++ b/fs/ubifs/sysfs.c @@ -144,6 +144,8 @@ int __init ubifs_sysfs_init(void) kobject_set_name(&ubifs_kset.kobj, "ubifs"); ubifs_kset.kobj.parent = fs_kobj; ret = kset_register(&ubifs_kset); + if (ret) + kset_put(&ubifs_kset); return ret; }