From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753184AbbFIJCE (ORCPT ); Tue, 9 Jun 2015 05:02:04 -0400 Received: from mga01.intel.com ([192.55.52.88]:56943 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753187AbbFIJBx (ORCPT ); Tue, 9 Jun 2015 05:01:53 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.13,579,1427785200"; d="scan'208";a="743503868" From: Chen Lin Z To: gregkh@linuxfoundation.org Cc: linux-kernel@vger.kernel.org, bo.he@intel.com, yanmin_zhang@linux.intel.com, Chen Lin Z Subject: [PATCH] driver core: bus: Free the kobject.name if kset_register fails Date: Tue, 9 Jun 2015 17:05:21 +0800 Message-Id: <1433840721-15918-1-git-send-email-lin.z.chen@intel.com> X-Mailer: git-send-email 1.9.1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org if register two bus with the same name, kset_register will fail. it need free kobject.name, otherwise there is a memory leak. Signed-off-by: Chen Lin Z --- 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 79bc203..9375048 100644 --- a/drivers/base/bus.c +++ b/drivers/base/bus.c @@ -894,8 +894,10 @@ int bus_register(struct bus_type *bus) priv->drivers_autoprobe = 1; retval = kset_register(&priv->subsys); - if (retval) + if (retval) { + kfree(priv->subsys.kobj.name); goto out; + } retval = bus_create_file(bus, &bus_attr_uevent); if (retval) -- 1.9.1