2022-03-26 10:05:11

by Yang Yingliang

[permalink] [raw]
Subject: [PATCH] drm/bridge: anx7625: add missing destroy_workqueue() in anx7625_i2c_probe()

Add the missing destroy_workqueue() before return from
anx7625_i2c_probe() in the error handling case.

Fixes: adca62ec370c ("drm/bridge: anx7625: Support reading edid through aux channel")
Signed-off-by: Yang Yingliang <[email protected]>
---
drivers/gpu/drm/bridge/analogix/anx7625.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/bridge/analogix/anx7625.c b/drivers/gpu/drm/bridge/analogix/anx7625.c
index 31ecf5626f1d..1895e3448c02 100644
--- a/drivers/gpu/drm/bridge/analogix/anx7625.c
+++ b/drivers/gpu/drm/bridge/analogix/anx7625.c
@@ -2654,7 +2654,7 @@ static int anx7625_i2c_probe(struct i2c_client *client,
if (ret) {
if (ret != -EPROBE_DEFER)
DRM_DEV_ERROR(dev, "fail to parse DT : %d\n", ret);
- return ret;
+ goto free_wq;
}

if (anx7625_register_i2c_dummy_clients(platform, client) != 0) {
@@ -2669,7 +2669,7 @@ static int anx7625_i2c_probe(struct i2c_client *client,
pm_suspend_ignore_children(dev, true);
ret = devm_add_action_or_reset(dev, anx7625_runtime_disable, dev);
if (ret)
- return ret;
+ goto free_wq;

if (!platform->pdata.low_power_mode) {
anx7625_disable_pd_protocol(platform);
--
2.25.1


2022-03-28 11:51:57

by Hsin-Yi Wang

[permalink] [raw]
Subject: Re: [PATCH] drm/bridge: anx7625: add missing destroy_workqueue() in anx7625_i2c_probe()

On Sat, Mar 26, 2022 at 3:24 PM Yang Yingliang <[email protected]> wrote:
>
> Add the missing destroy_workqueue() before return from
> anx7625_i2c_probe() in the error handling case.
>
> Fixes: adca62ec370c ("drm/bridge: anx7625: Support reading edid through aux channel")
> Signed-off-by: Yang Yingliang <[email protected]>
> ---
Reviewed-by: Hsin-Yi Wang <[email protected]>

> drivers/gpu/drm/bridge/analogix/anx7625.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/bridge/analogix/anx7625.c b/drivers/gpu/drm/bridge/analogix/anx7625.c
> index 31ecf5626f1d..1895e3448c02 100644
> --- a/drivers/gpu/drm/bridge/analogix/anx7625.c
> +++ b/drivers/gpu/drm/bridge/analogix/anx7625.c
> @@ -2654,7 +2654,7 @@ static int anx7625_i2c_probe(struct i2c_client *client,
> if (ret) {
> if (ret != -EPROBE_DEFER)
> DRM_DEV_ERROR(dev, "fail to parse DT : %d\n", ret);
> - return ret;
> + goto free_wq;
> }
>
> if (anx7625_register_i2c_dummy_clients(platform, client) != 0) {
> @@ -2669,7 +2669,7 @@ static int anx7625_i2c_probe(struct i2c_client *client,
> pm_suspend_ignore_children(dev, true);
> ret = devm_add_action_or_reset(dev, anx7625_runtime_disable, dev);
> if (ret)
> - return ret;
> + goto free_wq;
>
> if (!platform->pdata.low_power_mode) {
> anx7625_disable_pd_protocol(platform);
> --
> 2.25.1
>