LinuxTV Patchwork [PATCHv2,7/7] cros-ec-cec: decrement HDMI device refcount

login
register
mail settings
Submitter Hans Verkuil
Date April 10, 2019, 9:13 a.m.
Message ID <20190410091334.8654-8-hverkuil-cisco@xs4all.nl>
Download mbox | patch
Permalink /patch/55591/
State Under Review
Delegated to: Hans Verkuil
Headers show

Comments

Hans Verkuil - April 10, 2019, 9:13 a.m.
The CrosEC CEC driver never decremented the HDMI device refcount.
CEC drivers only need the HDMI device pointer as a key in the
notifier list, it never accesses the device, so there is no
need to keep a reference.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
---
 drivers/media/platform/cros-ec-cec/cros-ec-cec.c | 1 +
 1 file changed, 1 insertion(+)
Neil Armstrong - April 10, 2019, 9:30 a.m.
On 10/04/2019 11:13, Hans Verkuil wrote:
> The CrosEC CEC driver never decremented the HDMI device refcount.
> CEC drivers only need the HDMI device pointer as a key in the
> notifier list, it never accesses the device, so there is no
> need to keep a reference.
> 
> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
> ---
>  drivers/media/platform/cros-ec-cec/cros-ec-cec.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/media/platform/cros-ec-cec/cros-ec-cec.c b/drivers/media/platform/cros-ec-cec/cros-ec-cec.c
> index 7bc4d8a9af28..068df9888dbf 100644
> --- a/drivers/media/platform/cros-ec-cec/cros-ec-cec.c
> +++ b/drivers/media/platform/cros-ec-cec/cros-ec-cec.c
> @@ -236,6 +236,7 @@ static int cros_ec_cec_get_notifier(struct device *dev,
>  				return -EPROBE_DEFER;
>  
>  			*notify = cec_notifier_get_conn(d, m->conn);
> +			put_device(d);
>  			return 0;
>  		}
>  	}
> 

Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>

Patch

diff --git a/drivers/media/platform/cros-ec-cec/cros-ec-cec.c b/drivers/media/platform/cros-ec-cec/cros-ec-cec.c
index 7bc4d8a9af28..068df9888dbf 100644
--- a/drivers/media/platform/cros-ec-cec/cros-ec-cec.c
+++ b/drivers/media/platform/cros-ec-cec/cros-ec-cec.c
@@ -236,6 +236,7 @@  static int cros_ec_cec_get_notifier(struct device *dev,
 				return -EPROBE_DEFER;
 
 			*notify = cec_notifier_get_conn(d, m->conn);
+			put_device(d);
 			return 0;
 		}
 	}

Privacy Policy