mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Arvind Yadav <arvind.yadav.cs@gmail.com>
To: Suzuki K Poulose <suzuki.poulose@arm.com>,
	linux-arm-kernel@lists.infradead.org
Cc: mathieu.poirier@linaro.org, robh@kernel.org,
	frowand.list@gmail.com, mark.rutland@arm.com,
	sudeep.holla@arm.com, arm@kernel.org,
	linux-kernel@vger.kernel.org, matt.sealey@arm.com,
	john.horley@arm.com, charles.garcia-tobin@arm.com,
	coresight@lists.linaro.org, devicetree@vger.kernel.org,
	mike.leach@linaro.org
Subject: Re: [PATCH 01/20] coresight: Fix memory leak in coresight_register
Date: Wed, 6 Jun 2018 12:14:33 +0530	[thread overview]
Message-ID: <b0100f00-c706-3a41-ca55-3c1329c53aa3@gmail.com> (raw)
In-Reply-To: <1528235011-30691-2-git-send-email-suzuki.poulose@arm.com>

Hi Suzuki,


On Wednesday 06 June 2018 03:13 AM, Suzuki K Poulose wrote:
> commit 6403587a930c ("coresight: use put_device() instead of kfree()")
> introduced a memory leak where, if we fail to register the device
> for coresight_device, we don't free the "coresight_device" object,
> which was allocated via kzalloc(). Fix this by jumping to the
> appropriate error path.
put_device() will decrement the last reference and then
free the memory by calling dev->release.  Internally
put_device() -> kobject_put() -> kobject_cleanup() which is
responsible to call 'dev -> release' and also free other kobject
resources. If you will see the coresight_device_release. There
we are releasing all allocated memory. Still if you call kfree() again
then it'll be redundancy.

~arvind
>
> Fixes: commit 6403587a930c ("coresight: use put_device() instead of kfree()")
> Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
> Cc: Arvind Yadav <arvind.yadav.cs@gmail.com>
> Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
> ---
>   drivers/hwtracing/coresight/coresight.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/hwtracing/coresight/coresight.c b/drivers/hwtracing/coresight/coresight.c
> index 4969b32..2893cfe 100644
> --- a/drivers/hwtracing/coresight/coresight.c
> +++ b/drivers/hwtracing/coresight/coresight.c
> @@ -1020,7 +1020,7 @@ struct coresight_device *coresight_register(struct coresight_desc *desc)
>   	ret = device_register(&csdev->dev);
>   	if (ret) {
>   		put_device(&csdev->dev);
> -		goto err_kzalloc_csdev;
> +		goto err_kzalloc_refcnts;
>   	}
>   
>   	mutex_lock(&coresight_mutex);

  reply	other threads:[~2018-06-06  6:45 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-05 21:43 [PATCH 00/20] coresight: Update device tree bindings Suzuki K Poulose
2018-06-05 21:43 ` [PATCH 01/20] coresight: Fix memory leak in coresight_register Suzuki K Poulose
2018-06-06  6:44   ` Arvind Yadav [this message]
2018-06-06 10:16     ` Suzuki K Poulose
2018-06-05 21:43 ` [PATCH 02/20] coresight: of: Fix refcounting for graph nodes Suzuki K Poulose
2018-06-08 19:55   ` Mathieu Poirier
2018-06-11  9:18     ` Suzuki K Poulose
2018-06-05 21:43 ` [PATCH 03/20] coresight: Fix remote endpoint parsing Suzuki K Poulose
2018-06-08 20:05   ` Mathieu Poirier
2018-06-05 21:43 ` [PATCH 04/20] coresight: Cleanup platform description data Suzuki K Poulose
2018-06-08 19:41   ` Mathieu Poirier
2018-06-05 21:43 ` [PATCH 05/20] coresight: platform: Cleanup coresight connection handling Suzuki K Poulose
2018-06-08 20:18   ` Mathieu Poirier
2018-06-05 21:43 ` [PATCH 06/20] coresight: Handle errors in finding input/output ports Suzuki K Poulose
2018-06-08 20:24   ` Mathieu Poirier
2018-06-05 21:43 ` [PATCH 07/20] coresight: dts: Document usage of graph bindings Suzuki K Poulose
2018-06-08 20:30   ` Mathieu Poirier
2018-06-05 21:43 ` [PATCH 08/20] coresight: dts: Cleanup device tree " Suzuki K Poulose
2018-06-08 21:22   ` Mathieu Poirier
2018-06-11  9:22     ` Suzuki K Poulose
2018-06-11 16:52       ` Mathieu Poirier
2018-06-11 16:55         ` Suzuki K Poulose
2018-06-11 21:51           ` Mathieu Poirier
2018-06-05 21:43 ` [PATCH 09/20] coresight: dts: Define new bindings for direction of data flow Suzuki K Poulose
2018-06-08 21:39   ` Mathieu Poirier
2018-06-05 21:43 ` [PATCH 10/20] dts: juno: Update coresight bindings for hw port Suzuki K Poulose
2018-06-08 21:49   ` Mathieu Poirier
2018-06-08 21:52     ` Mathieu Poirier
2018-06-12  9:50       ` Suzuki K Poulose
2018-06-12 10:42       ` Sudeep Holla
2018-06-05 21:43 ` [PATCH 11/20] dts: hisilicon: Update coresight bindings for hw ports Suzuki K Poulose
2018-06-05 21:43 ` [PATCH 12/20] dts: spreadtrum: " Suzuki K Poulose
2018-06-05 21:43 ` [PATCH 13/20] dts: qcom: " Suzuki K Poulose
2018-06-05 21:43 ` [PATCH 14/20] dts: arm: hisilicon: Update coresight bindings for hardware port Suzuki K Poulose
2018-06-05 21:43 ` [PATCH 15/20] dts: arm: imx7{d,s}: Update coresight binding for hardware ports Suzuki K Poulose
2018-06-19  2:12   ` Shawn Guo
2018-06-19 10:35     ` Stefan Agner
2018-06-19 14:57     ` Mathieu Poirier
2018-06-05 21:43 ` [PATCH 16/20] dts: arm: omap: Update coresight bindings " Suzuki K Poulose
2018-07-03  7:09   ` Tony Lindgren
2018-07-03  7:59     ` Suzuki K Poulose
2018-07-03  8:12       ` Tony Lindgren
2018-06-05 21:43 ` [PATCH 17/20] dts: arm: qcom: " Suzuki K Poulose
2018-06-05 21:43 ` [PATCH 18/20] dts: sama5d2: " Suzuki K Poulose
2018-06-19 21:24   ` Alexandre Belloni
2018-06-20  9:44     ` Suzuki K Poulose
2018-06-20 10:53       ` Alexandre Belloni
2018-06-05 21:43 ` [PATCH 19/20] dts: ste-dbx5x0: Update coresight bindings for hardware port Suzuki K Poulose
2018-06-26  9:30   ` Linus Walleij
2018-06-26  9:31     ` Suzuki K Poulose
2018-06-05 21:43 ` [PATCH 20/20] dts: tc2: Update coresight bindings for hardware ports Suzuki K Poulose
2018-06-20  9:53 ` [PATCH 00/20] coresight: Update device tree bindings Suzuki K Poulose

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b0100f00-c706-3a41-ca55-3c1329c53aa3@gmail.com \
    --to=arvind.yadav.cs@gmail.com \
    --cc=arm@kernel.org \
    --cc=charles.garcia-tobin@arm.com \
    --cc=coresight@lists.linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=frowand.list@gmail.com \
    --cc=john.horley@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=mathieu.poirier@linaro.org \
    --cc=matt.sealey@arm.com \
    --cc=mike.leach@linaro.org \
    --cc=robh@kernel.org \
    --cc=sudeep.holla@arm.com \
    --cc=suzuki.poulose@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome