Re: [PATCH 1/2] iio: adc: adi-axi-adc: Fix object reference counting

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2020-07-01 at 14:04 +0200, Nuno Sá wrote:
> [External]
> 
> When looking for a registered client to attach with, the wrong reference
> counters are being grabbed. The idea is to increment the module and
> device
> counters of the client device and not the counters of the axi device
> being
> probed.
> 

Yep.
Good catch here.

Acked-by: Alexandru Ardelean <alexandru.ardelean@xxxxxxxxxx>

> Fixes: ef04070692a2 (iio: adc: adi-axi-adc: add support for AXI ADC IP
> core)
> 
> Signed-off-by: Nuno Sá <nuno.sa@xxxxxxxxxx>
> ---
>  drivers/iio/adc/adi-axi-adc.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/iio/adc/adi-axi-adc.c b/drivers/iio/adc/adi-axi-
> adc.c
> index 63d926e86798..86b6b65916ee 100644
> --- a/drivers/iio/adc/adi-axi-adc.c
> +++ b/drivers/iio/adc/adi-axi-adc.c
> @@ -332,12 +332,12 @@ static struct adi_axi_adc_client
> *adi_axi_adc_attach_client(struct device *dev)
>  		if (cl->dev->of_node != cln)
>  			continue;
>  
> -		if (!try_module_get(dev->driver->owner)) {
> +		if (!try_module_get(cl->dev->driver->owner)) {
>  			mutex_unlock(&registered_clients_lock);
>  			return ERR_PTR(-ENODEV);
>  		}
>  
> -		get_device(dev);
> +		get_device(cl->dev);
>  		cl->info = info;
>  		mutex_unlock(&registered_clients_lock);
>  		return cl;




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux