Skip to contentSkip to conversation

amdkfd: fix an error handling bug in pqm_create_queue()

PATCH In review Dan Carpenter 2 participants 2 messages Nov 25, 2014

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 amdkfd: fix an error handling bug in pqm_create_queue()

The call to kernel_queue_uninit(NULL) will trigger a BUG(), and also the error code is incorrect.

Fixes 45102048f77e ('amdkfd: Add process queue manager module')
drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c +1 -1
index c7859fc..7ce7a25 100644
@@ -208,7 +208,7 @@ int pqm_create_queue(struct process_queue_manager *pqm,
 	case KFD_QUEUE_TYPE_DIQ:
 		kq = kernel_queue_init(dev, KFD_QUEUE_TYPE_DIQ);
 		if (kq = NULL) {
-			kernel_queue_uninit(kq);
+			retval = -ENOMEM;
 			goto err_create_queue;
 		}
 		kq->queue->properties.queue_id = *qid;
Reviewed-by on v1 1/1
#1 lore raw
Quoted 6 lines · Dan Carpenter

The call to kernel_queue_uninit(NULL) will trigger a BUG(), and also the error code is incorrect.

Fixes 45102048f77e ('amdkfd: Add process queue manager module')

Patch is:

And applied to my 3.19-next-wip tree.
Thanks!

Oded

Quoted 14 lines
drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c +1 -1
index c7859fc..7ce7a25 100644
@@ -208,7 +208,7 @@ int pqm_create_queue(struct process_queue_manager *pqm,
  	case KFD_QUEUE_TYPE_DIQ:
  		kq = kernel_queue_init(dev, KFD_QUEUE_TYPE_DIQ);
  		if (kq = NULL) {
-			kernel_queue_uninit(kq);
+			retval = -ENOMEM;
  			goto err_create_queue;
  		}
  		kq->queue->properties.queue_id = *qid;