[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <55A65621.4080109@osg.samsung.com>
Date: Wed, 15 Jul 2015 14:46:25 +0200
From: Javier Martinez Canillas <javier@....samsung.com>
To: Mark Brown <broonie@...nel.org>
Cc: Krzysztof Kozlowski <k.kozlowski@...sung.com>,
Liam Girdwood <lgirdwood@...il.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] regulator: core: Fix memory leak in
regulator_resolve_supply()
Hello Mark,
On 07/15/2015 01:27 PM, Mark Brown wrote:
> On Wed, Jul 15, 2015 at 10:38:38AM +0200, Javier Martinez Canillas wrote:
>> On 07/15/2015 10:01 AM, Krzysztof Kozlowski wrote:
>
>>> The _regulator_put() reverts more work than create_regulator() did,
>>> e.g.: module_put and rdev->open_count--. Maybe you need a
>>> destroy_regulator() function?
>
>> Yes, it reverts more work than create_regulator() but the intention is to
>> revert what set_supply() did. If you look at the set_supply() function,
>> it does supply_rdev->open_count++.
>
>> I did indeed missed the module_put() but now looking at the code again, I
>
> Me too, I've dropped the patch. At first glance everything looked safe
> for multiple calls.
>
Ok.
>> wonder if the problem is not that set_supply() is missing a try_module_get()
>> to be consistent with what the _regulator_get() function does.
>
> The problem is more that it's a separate implementation and not just
> using _regulator_get() I think. A separate, rarely used, path is likely
> to have this sort of issue.
>
Exactly, do you agree then that a try_module_get() is missing in set_supply()?
It is OK if I add that in the same patch in v2 or do you prefer that to be
in a separate patch?
Best regards,
--
Javier Martinez Canillas
Open Source Group
Samsung Research America
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists