Hi Laurent,
Thanks for reviewing it.
Em Wed, 23 Mar 2016 18:57:50 +0200 Laurent Pinchart laurent.pinchart@ideasonboard.com escreveu:
On Friday 18 Mar 2016 21:42:16 Mauro Carvalho Chehab wrote:
Now that the media_device can be used by multiple drivers, via devres, we need to be sure that it will be dropped only when all drivers stop using it.
Signed-off-by: Mauro Carvalho Chehab mchehab@osg.samsung.com
v2: The kref is now used only when media_device is allocated via the media_device*_devress. This warrants that other drivers won't be affected, and that we can keep media_device_cleanup() balanced with media_device_init().
drivers/media/media-device.c | 117 ++++++++++++++++++++++-------- drivers/media/usb/au0828/au0828-core.c | 3 +- include/media/media-device.h | 28 ++++++++ sound/usb/media.c | 3 +- 4 files changed, 118 insertions(+), 33 deletions(-)
diff --git a/drivers/media/media-device.c b/drivers/media/media-device.c index c32fa15cc76e..4a97d92a7e7d 100644 --- a/drivers/media/media-device.c +++ b/drivers/media/media-device.c @@ -707,11 +707,16 @@ void media_device_init(struct media_device *mdev) } EXPORT_SYMBOL_GPL(media_device_init);
-void media_device_cleanup(struct media_device *mdev) +static void __media_device_cleanup(struct media_device *mdev) { ida_destroy(&mdev->entity_internal_idx); mdev->entity_internal_idx_max = 0; media_entity_graph_walk_cleanup(&mdev->pm_count_walk); +}
+void media_device_cleanup(struct media_device *mdev) +{
- __media_device_cleanup(mdev); mutex_destroy(&mdev->graph_mutex);
} EXPORT_SYMBOL_GPL(media_device_cleanup); @@ -721,6 +726,9 @@ int __must_check __media_device_register(struct media_device *mdev, { int ret;
- /* Check if mdev was ever registered at all */
This comment doesn't seem to apply to the next line, is it a leftover ? If so, please remove it.
Yes, it is a left over. I'll remove it. Thanks for noticing it.
Thanks, Mauro