Merge "msm: ais: Make use of mutex lock to avoid race condition"

This commit is contained in:
Linux Build Service Account 2017-08-03 10:07:57 -07:00 committed by Gerrit - the friendly Code Review server
commit f473715d77

View file

@ -1053,14 +1053,18 @@ static int msm_fd_s_ctrl(struct file *file, void *fh, struct v4l2_control *a)
a->value = ctx->format.size->work_size; a->value = ctx->format.size->work_size;
break; break;
case V4L2_CID_FD_WORK_MEMORY_FD: case V4L2_CID_FD_WORK_MEMORY_FD:
mutex_lock(&ctx->fd_device->recovery_lock);
if (ctx->work_buf.fd != -1) if (ctx->work_buf.fd != -1)
msm_fd_hw_unmap_buffer(&ctx->work_buf); msm_fd_hw_unmap_buffer(&ctx->work_buf);
if (a->value >= 0) { if (a->value >= 0) {
ret = msm_fd_hw_map_buffer(&ctx->mem_pool, ret = msm_fd_hw_map_buffer(&ctx->mem_pool,
a->value, &ctx->work_buf); a->value, &ctx->work_buf);
if (ret < 0) if (ret < 0) {
mutex_unlock(&ctx->fd_device->recovery_lock);
return ret; return ret;
} }
}
mutex_unlock(&ctx->fd_device->recovery_lock);
break; break;
default: default:
return -EINVAL; return -EINVAL;