Re: [PATCH] i2c: i801: Avoid potential double call to gpiod_remove_lookup_table

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

 



On 23.02.2024 08:11, Heiner Kallweit wrote:
> If registering the platform device fails, the lookup table is
> removed in the error path. On module removal we would try to
> remove the lookup table again. Fix this by leaving it to
> i801_del_mux() to clean up.
> 
> Fixes: d308dfbf62ef ("i2c: mux/i801: Switch to use descriptor passing")
> Signed-off-by: Heiner Kallweit <hkallweit1@xxxxxxxxx>
> ---
>  drivers/i2c/busses/i2c-i801.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/drivers/i2c/busses/i2c-i801.c b/drivers/i2c/busses/i2c-i801.c
> index 4b9d04f20..223cd2b84 100644
> --- a/drivers/i2c/busses/i2c-i801.c
> +++ b/drivers/i2c/busses/i2c-i801.c
> @@ -1457,10 +1457,8 @@ static void i801_add_mux(struct i801_priv *priv)
>  	priv->mux_pdev = platform_device_register_data(dev, "i2c-mux-gpio",
>  				PLATFORM_DEVID_NONE, &gpio_data,
>  				sizeof(struct i2c_mux_gpio_platform_data));
> -	if (IS_ERR(priv->mux_pdev)) {
> -		gpiod_remove_lookup_table(lookup);
> +	if (IS_ERR(priv->mux_pdev))
>  		dev_err(dev, "Failed to register i2c-mux-gpio device\n");
> -	}
>  }
>  
>  static void i801_del_mux(struct i801_priv *priv)

Forgot to cc stable in both patches. I'll wait for other feedback and will
submit a v2 afterwards.




[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux