On Tue Sep 2 09:10:31 2025 +0800, Duoming Zhou wrote:
> The delayed_work delayed_work_enable_hotplug is initialized with
> INIT_DELAYED_WORK() in adv7842_probe(), but it is never scheduled
> anywhere in the probe function.
>
> Calling cancel_delayed_work() on a work that has never been
> scheduled is redundant and unnecessary, as there is no pending
> work to cancel.
>
> Remove the redundant cancel_delayed_work() from error handling
> path and adjust the goto label accordingly to simplify the code
> and avoid potential confusion.
>
> Fixes: a89bcd4c6c20 ("[media] adv7842: add new video decoder driver")
> Cc: [email protected]
> Signed-off-by: Duoming Zhou <[email protected]>
> Signed-off-by: Hans Verkuil <[email protected]>
Patch committed.
Thanks,
Hans Verkuil
drivers/media/i2c/adv7842.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
---
diff --git a/drivers/media/i2c/adv7842.c b/drivers/media/i2c/adv7842.c
index 9780082db841..331c5171d1ab 100644
--- a/drivers/media/i2c/adv7842.c
+++ b/drivers/media/i2c/adv7842.c
@@ -3626,7 +3626,7 @@ static int adv7842_probe(struct i2c_client *client)
err = media_entity_pads_init(&sd->entity, ADV7842_PAD_SOURCE + 1,
state->pads);
if (err)
- goto err_work_queues;
+ goto err_i2c;
err = adv7842_core_init(sd);
if (err)
@@ -3647,8 +3647,6 @@ static int adv7842_probe(struct i2c_client *client)
err_entity:
media_entity_cleanup(&sd->entity);
-err_work_queues:
- cancel_delayed_work(&state->delayed_work_enable_hotplug);
err_i2c:
adv7842_unregister_clients(sd);
err_hdl:
_______________________________________________
linuxtv-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]