On 09/02/2019 03:48, Wen Yang wrote:
> put_device() should be called in cec_notifier_release(),
> since the dev is being passed down to cec_notifier_get_conn(),
> which holds reference. On cec_notifier destruction, it
> should drop the reference to the device.
> 
> Fixes: 6917a7b77413 ("[media] media: add CEC notifier support")
> Signed-off-by: Wen Yang <yellowriver2...@hotmail.com>
> ---
>  drivers/media/cec/cec-notifier.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/media/cec/cec-notifier.c 
> b/drivers/media/cec/cec-notifier.c
> index dd2078b..621d4ae 100644
> --- a/drivers/media/cec/cec-notifier.c
> +++ b/drivers/media/cec/cec-notifier.c
> @@ -66,6 +66,7 @@ static void cec_notifier_release(struct kref *kref)
>               container_of(kref, struct cec_notifier, kref);
>  
>       list_del(&n->head);
> +     put_device(n->dev);
>       kfree(n->conn);
>       kfree(n);
>  }
> 

Sorry, no. The dev pointer is just a search key that the notifier code looks
for. It is not the notifier's responsibility to take a reference, that would
be the responsibility of the hdmi and cec drivers.

If you can demonstrate that there is an object reference leak, then please
provide the details: it is likely a bug elsewhere and not in the notifier
code.

BTW, your patch series didn't arrive on the linux-media mailinglist for
some reason.

Regards,

        Hans

Reply via email to