[PATCH] staging: bcm2835-camera: Replace open-coded idr with a struct idr.

Eric Anholt eric at anholt.net
Tue May 15 06:46:23 PDT 2018


Dan Carpenter <dan.carpenter at oracle.com> writes:

> On Thu, May 10, 2018 at 04:31:07PM -0700, Eric Anholt wrote:
>> @@ -258,32 +181,40 @@ get_msg_context(struct vchiq_mmal_instance *instance)
>>  	if (!msg_context)
>>  		return ERR_PTR(-ENOMEM);
>>  
>> -	msg_context->instance = instance;
>> -	msg_context->handle =
>> -		mmal_context_map_create_handle(&instance->context_map,
>> -					       msg_context,
>> -					       GFP_KERNEL);
>> +	/* Create an ID that will be passed along with our message so
>> +	 * that when we service the VCHI reply, we can look up what
>> +	 * message is being replied to.
>> +	 */
>> +	spin_lock(&instance->context_map_lock);
>> +	handle = idr_alloc(&instance->context_map, msg_context,
>> +			   0, 0, GFP_KERNEL);
>> +	spin_unlock(&instance->context_map_lock);
>>  
>> -	if (!msg_context->handle) {
>> +	if (msg_context->handle < 0) {
>
> This should probably be testing:
>
> 	if (handle < 0) {

That's what Stefan said and was fixed in v2 already.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-rpi-kernel/attachments/20180515/4c64e1af/attachment.sig>


More information about the linux-rpi-kernel mailing list