[media] omap3isp: Add missing mutex_destroy() calls
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Thu, 22 Sep 2011 20:09:26 +0000 (17:09 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Thu, 3 Nov 2011 20:31:31 +0000 (18:31 -0200)
Mutexes must be destroyed with mutex_destroy(). Add missing calls in the
modules cleanup handlers.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/omap3isp/isp.c
drivers/media/video/omap3isp/ispccdc.c
drivers/media/video/omap3isp/ispstat.c
drivers/media/video/omap3isp/ispvideo.c

index 678e125..c8f147e 100644 (file)
@@ -2210,6 +2210,8 @@ error:
        regulator_put(isp->isp_csiphy2.vdd);
        regulator_put(isp->isp_csiphy1.vdd);
        platform_set_drvdata(pdev, NULL);
+
+       mutex_destroy(&isp->isp_mutex);
        kfree(isp);
 
        return ret;
index c30cc59..3a43be2 100644 (file)
@@ -2297,4 +2297,6 @@ void omap3isp_ccdc_cleanup(struct isp_device *isp)
 
        if (ccdc->fpc.fpcaddr != 0)
                omap_iommu_vfree(isp->domain, isp->iommu, ccdc->fpc.fpcaddr);
+
+       mutex_destroy(&ccdc->ioctl_lock);
 }
index b124326..28b7cc6 100644 (file)
@@ -1087,6 +1087,7 @@ int omap3isp_stat_init(struct ispstat *stat, const char *name,
 void omap3isp_stat_cleanup(struct ispstat *stat)
 {
        media_entity_cleanup(&stat->subdev.entity);
+       mutex_destroy(&stat->ioctl_lock);
        isp_stat_bufs_free(stat);
        kfree(stat->buf);
 }
index 7d74ebb..d100072 100644 (file)
@@ -1328,6 +1328,8 @@ int omap3isp_video_init(struct isp_video *video, const char *name)
 void omap3isp_video_cleanup(struct isp_video *video)
 {
        media_entity_cleanup(&video->video.entity);
+       mutex_destroy(&video->stream_lock);
+       mutex_destroy(&video->mutex);
 }
 
 int omap3isp_video_register(struct isp_video *video, struct v4l2_device *vdev)