aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media
diff options
context:
space:
mode:
authorMehdi Djait <mehdi.djait@linux.intel.com>2024-12-11 14:30:45 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-02-21 13:49:49 +0100
commit26f7a4767ce410c9e2682e767dd63c3f492a7a65 (patch)
tree410f88ce94f1d634ec58fb8b0c8e99bf4e56cd1d /drivers/media
parent33da7da2c55ca5d1bd949d345e29d7a9995435d6 (diff)
downloadlinux-yocto-26f7a4767ce410c9e2682e767dd63c3f492a7a65.tar.gz
media: ccs: Fix cleanup order in ccs_probe()
commit 6fdbff0f54786e94f0f630ff200ec1d666b1633e upstream. ccs_limits is allocated in ccs_read_all_limits() after the allocation of mdata.backing. Ensure that resources are freed in the reverse order of their allocation by moving out_free_ccs_limits up. Fixes: a11d3d6891f0 ("media: ccs: Read CCS static data from firmware binaries") Cc: stable@vger.kernel.org Signed-off-by: Mehdi Djait <mehdi.djait@linux.intel.com> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/i2c/ccs/ccs-core.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/media/i2c/ccs/ccs-core.c b/drivers/media/i2c/ccs/ccs-core.c
index 5fdb922d24e0..eb9ad5a50d95 100644
--- a/drivers/media/i2c/ccs/ccs-core.c
+++ b/drivers/media/i2c/ccs/ccs-core.c
@@ -3649,15 +3649,15 @@ out_media_entity_cleanup:
out_cleanup:
ccs_cleanup(sensor);
+out_free_ccs_limits:
+ kfree(sensor->ccs_limits);
+
out_release_mdata:
kvfree(sensor->mdata.backing);
out_release_sdata:
kvfree(sensor->sdata.backing);
-out_free_ccs_limits:
- kfree(sensor->ccs_limits);
-
out_power_off:
ccs_power_off(&client->dev);
mutex_destroy(&sensor->mutex);