diff --git a/drivers/amlogic/media/camera/gc2145_mipi.c b/drivers/amlogic/media/camera/gc2145_mipi.c index f251ef6a086a..a91f3f02d462 100644 --- a/drivers/amlogic/media/camera/gc2145_mipi.c +++ b/drivers/amlogic/media/camera/gc2145_mipi.c @@ -3105,6 +3105,7 @@ static int gc2145_open(struct file *file) if (retval) { vm_deinit_resource(&(dev->vminfo)); + kfree(fh); return retval; } diff --git a/drivers/amlogic/media/camera/ov5640.c b/drivers/amlogic/media/camera/ov5640.c index ad173684f71b..94cf4fcdc795 100644 --- a/drivers/amlogic/media/camera/ov5640.c +++ b/drivers/amlogic/media/camera/ov5640.c @@ -3097,8 +3097,10 @@ static int ov5640_open(struct file *file) } mutex_unlock(&dev->mutex); - if (retval) + if (retval) { + kfree(fh); return retval; + } #ifdef CONFIG_HAS_WAKELOCK wake_lock(&(dev->wake_lock));