2016-12-23 22:15:35

by Alexey Khoroshilov

[permalink] [raw]
Subject: [PATCH] iio: mxs-lradc: fix error handling in mxs_lradc_probe()

During transition to using devm_input_allocate_device()
goto to resource deallocation block was replaced by return
in case of error in iio_device_register().
That is wrong since resources are left undeallocated.

Found by Linux Driver Verification project (linuxtesting.org).

Signed-off-by: Alexey Khoroshilov <[email protected]>
Fixes: 962ed43a3eac ("iio: mxs-lradc: remove mxs_lradc_ts_unregister")
---
drivers/iio/adc/mxs-lradc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iio/adc/mxs-lradc.c b/drivers/iio/adc/mxs-lradc.c
index b84d37c80a94..1ab0caeb3577 100644
--- a/drivers/iio/adc/mxs-lradc.c
+++ b/drivers/iio/adc/mxs-lradc.c
@@ -1702,7 +1702,7 @@ static int mxs_lradc_probe(struct platform_device *pdev)
ret = iio_device_register(iio);
if (ret) {
dev_err(dev, "Failed to register IIO device\n");
- return ret;
+ goto err_ts_register;
}

return 0;
--
2.7.4


2016-12-26 22:04:19

by Stefan Wahren

[permalink] [raw]
Subject: Re: [PATCH] iio: mxs-lradc: fix error handling in mxs_lradc_probe()


> Alexey Khoroshilov <[email protected]> hat am 23. Dezember 2016 um 23:15 geschrieben:
>
>
> During transition to using devm_input_allocate_device()
> goto to resource deallocation block was replaced by return
> in case of error in iio_device_register().
> That is wrong since resources are left undeallocated.
>
> Found by Linux Driver Verification project (linuxtesting.org).
>
> Signed-off-by: Alexey Khoroshilov <[email protected]>
> Fixes: 962ed43a3eac ("iio: mxs-lradc: remove mxs_lradc_ts_unregister")

Acked-by: Stefan Wahren <[email protected]>

But since Ksenija's patch series [1] (which doesn't have this issue) this patch is only relevant for stable.

Thanks

[1] - http://marc.info/?l=linux-iio&m=148131774219426&w=2

2016-12-30 19:09:40

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH] iio: mxs-lradc: fix error handling in mxs_lradc_probe()

On 26/12/16 22:04, Stefan Wahren wrote:
>
>> Alexey Khoroshilov <[email protected]> hat am 23. Dezember 2016 um 23:15 geschrieben:
>>
>>
>> During transition to using devm_input_allocate_device()
>> goto to resource deallocation block was replaced by return
>> in case of error in iio_device_register().
>> That is wrong since resources are left undeallocated.
>>
>> Found by Linux Driver Verification project (linuxtesting.org).
>>
>> Signed-off-by: Alexey Khoroshilov <[email protected]>
>> Fixes: 962ed43a3eac ("iio: mxs-lradc: remove mxs_lradc_ts_unregister")
>
> Acked-by: Stefan Wahren <[email protected]>
>
> But since Ksenija's patch series [1] (which doesn't have this issue) this patch is only relevant for stable.
It's slightly doubtful as stable material as well unless it causes
a crash. Obviously failing to clean up isn't good, but its not critical
enough to justify the churn.

Good find though.

Should you wish to post it to stable and let the stable maintainers make
a decision feel free to do so.

Jonathan
>
> Thanks
>
> [1] - http://marc.info/?l=linux-iio&m=148131774219426&w=2
> --
> To unsubscribe from this list: send the line "unsubscribe linux-iio" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>

2016-12-30 20:16:34

by Stefan Wahren

[permalink] [raw]
Subject: Re: [PATCH] iio: mxs-lradc: fix error handling in mxs_lradc_probe()

> Jonathan Cameron <[email protected]> hat am 30. Dezember 2016 um 20:09 geschrieben:
>
>
> On 26/12/16 22:04, Stefan Wahren wrote:
> >
> >> Alexey Khoroshilov <[email protected]> hat am 23. Dezember 2016 um 23:15 geschrieben:
> >>
> >>
> >> During transition to using devm_input_allocate_device()
> >> goto to resource deallocation block was replaced by return
> >> in case of error in iio_device_register().
> >> That is wrong since resources are left undeallocated.
> >>
> >> Found by Linux Driver Verification project (linuxtesting.org).
> >>
> >> Signed-off-by: Alexey Khoroshilov <[email protected]>
> >> Fixes: 962ed43a3eac ("iio: mxs-lradc: remove mxs_lradc_ts_unregister")
> >
> > Acked-by: Stefan Wahren <[email protected]>
> >
> > But since Ksenija's patch series [1] (which doesn't have this issue) this patch is only relevant for stable.
> It's slightly doubtful as stable material as well unless it causes
> a crash. Obviously failing to clean up isn't good, but its not critical
> enough to justify the churn.
>
> Good find though.
>
> Should you wish to post it to stable and let the stable maintainers make
> a decision feel free to do so.

No, i don't have any plans for that.

>
> Jonathan
> >
> > Thanks
> >
> > [1] - http://marc.info/?l=linux-iio&m=148131774219426&w=2
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-iio" in
> > the body of a message to [email protected]
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >
>