diff mbox series

ubi: do not drop UBI device reference before using

Message ID 1543375203-97876-1-git-send-email-bianpan2016@163.com
State Accepted
Delegated to: Richard Weinberger
Headers show
Series ubi: do not drop UBI device reference before using | expand

Commit Message

Pan Bian Nov. 28, 2018, 3:20 a.m. UTC
The UBI device reference is dropped but then the device is used as a
parameter of ubi_err. The bug is introduced in changing ubi_err's 
behavior. The old ubi_err does not require a UBI device as its first 
parameter, but the new one does.

Fixes: 32608703310 ("UBI: Extend UBI layer debug/messaging capabilities")

Signed-off-by: Pan Bian <bianpan2016@163.com>
---
 drivers/mtd/ubi/kapi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Boris Brezillon Nov. 28, 2018, 8:06 a.m. UTC | #1
On Wed, 28 Nov 2018 11:20:03 +0800
Pan Bian <bianpan2016@163.com> wrote:

> The UBI device reference is dropped but then the device is used as a
> parameter of ubi_err. The bug is introduced in changing ubi_err's 
> behavior. The old ubi_err does not require a UBI device as its first 
> parameter, but the new one does.
> 
> Fixes: 32608703310 ("UBI: Extend UBI layer debug/messaging capabilities")
> 

Unnecessary blank line here.

> Signed-off-by: Pan Bian <bianpan2016@163.com>

Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>

> ---
>  drivers/mtd/ubi/kapi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/ubi/kapi.c b/drivers/mtd/ubi/kapi.c
> index e9e9ecb..0b8f0c4 100644
> --- a/drivers/mtd/ubi/kapi.c
> +++ b/drivers/mtd/ubi/kapi.c
> @@ -227,9 +227,9 @@ struct ubi_volume_desc *ubi_open_volume(int ubi_num, int vol_id, int mode)
>  out_free:
>  	kfree(desc);
>  out_put_ubi:
> -	ubi_put_device(ubi);
>  	ubi_err(ubi, "cannot open device %d, volume %d, error %d",
>  		ubi_num, vol_id, err);
> +	ubi_put_device(ubi);
>  	return ERR_PTR(err);
>  }
>  EXPORT_SYMBOL_GPL(ubi_open_volume);
diff mbox series

Patch

diff --git a/drivers/mtd/ubi/kapi.c b/drivers/mtd/ubi/kapi.c
index e9e9ecb..0b8f0c4 100644
--- a/drivers/mtd/ubi/kapi.c
+++ b/drivers/mtd/ubi/kapi.c
@@ -227,9 +227,9 @@  struct ubi_volume_desc *ubi_open_volume(int ubi_num, int vol_id, int mode)
 out_free:
 	kfree(desc);
 out_put_ubi:
-	ubi_put_device(ubi);
 	ubi_err(ubi, "cannot open device %d, volume %d, error %d",
 		ubi_num, vol_id, err);
+	ubi_put_device(ubi);
 	return ERR_PTR(err);
 }
 EXPORT_SYMBOL_GPL(ubi_open_volume);