staging: bcm2835/mmal-vchiq: unlock on error in buffer_from_host()
Subsystems (5)
Media (V4L/DVB) Staging Kernel janitors Broadcom BCM2711/BCM2835 Arm architecture +1 more subsystems
PATCH 1/1 staging: bcm2835/mmal-vchiq: unlock on error in buffer_from_host()
We should unlock before returning on this error path.
Fixes 7b3ad5abf027 ("staging: Import the BCM2835 MMAL-based V4L2 camera driver.")
Signed-off-by Dan Carpenter <[email protected]>
drivers/staging/media/platform/bcm2835/mmal-vchiq.c +5 -2
@@ -397,8 +397,10 @@ buffer_from_host(struct vchiq_mmal_instance *instance,/* get context */ msg_context =get_msg_context (instance); -if (msg_context =NULL ) -return -ENOMEM ; +if (!msg_context) { + ret = -ENOMEM ; + goto unlock; + }/* store bulk message context for when data arrives */ msg_context->u.bulk.instance = instance;
@@ -454,6 +456,7 @@ buffer_from_host(struct vchiq_mmal_instance *instance,vchi_service_release (instance->handle); +unlock:mutex_unlock (&instance->bulk_mutex);return ret;