Re: [PATCH v2] iio: trigger: free trigger resource correctly

From: Jonathan Cameron
Date: Sun Jan 22 2017 - 11:20:46 EST


On 22/01/17 15:56, Lars-Peter Clausen wrote:
> On 01/22/2017 03:25 PM, Jonathan Cameron wrote:
>> On 20/01/17 03:47, Alison Schofield wrote:
>>> These stand-alone trigger drivers were using iio_trigger_put()
>>> where they should have been using iio_trigger_free(). The
>>> iio_trigger_put() adds a module_put which is bad since they
>>> never did a module_get.
>>>
>>> In the sysfs driver, module_get/put's are used as triggers are
>>> added & removed. This extra module_put() occurs on an error path
>>> in the probe routine (probably rare).
>>>
>>> In the bfin-timer & interrupt trigger drivers, the module resources
>>> are not explicitly managed, so it's doing a put on something that
>>> was never get'd. It occurs on the probe error path and on the
>>> remove path (not so rare).
>>>
>>> Tested with the sysfs trigger driver.
>>> The bfin & interrupt drivers were build tested & inspected only.
>>>
>>> Signed-off-by: Alison Schofield <amsfield22@xxxxxxxxx>
>> This is certainly more consistent.
>> Lars, could you sanity check as well given the bfin timer is
>> in here.
>
> looks good.
>
Applied to the togreg branch of iio.git.

Thought about sending this as a fix, but as it's been there a long
time I've taken the view there is no real rush on this.

Thanks,

Jonathan