Commit 4eacc26b authored by Kent Russell's avatar Kent Russell Committed by Oded Gabbay
Browse files

drm/amdkfd: Change x==NULL/false references to !x



Upstream prefers the !x notation to x==NULL or x==false. Along those lines
change the ==true or !=NULL references as well. Also make the references
to !x the same, excluding () for readability.

Signed-off-by: default avatarKent Russell <kent.russell@amd.com>
Signed-off-by: default avatarFelix Kuehling <Felix.Kuehling@amd.com>
Reviewed-by: default avatarOded Gabbay <oded.gabbay@gmail.com>
Signed-off-by: default avatarOded Gabbay <oded.gabbay@gmail.com>
parent 79775b62
Loading
Loading
Loading
Loading
+11 −11
Original line number Original line Diff line number Diff line
@@ -265,7 +265,7 @@ static int kfd_ioctl_create_queue(struct file *filep, struct kfd_process *p,


	pr_debug("Looking for gpu id 0x%x\n", args->gpu_id);
	pr_debug("Looking for gpu id 0x%x\n", args->gpu_id);
	dev = kfd_device_by_id(args->gpu_id);
	dev = kfd_device_by_id(args->gpu_id);
	if (dev == NULL) {
	if (!dev) {
		pr_debug("Could not find gpu id 0x%x\n", args->gpu_id);
		pr_debug("Could not find gpu id 0x%x\n", args->gpu_id);
		return -EINVAL;
		return -EINVAL;
	}
	}
@@ -400,7 +400,7 @@ static int kfd_ioctl_set_memory_policy(struct file *filep,
	}
	}


	dev = kfd_device_by_id(args->gpu_id);
	dev = kfd_device_by_id(args->gpu_id);
	if (dev == NULL)
	if (!dev)
		return -EINVAL;
		return -EINVAL;


	mutex_lock(&p->mutex);
	mutex_lock(&p->mutex);
@@ -443,7 +443,7 @@ static int kfd_ioctl_dbg_register(struct file *filep,
	long status = 0;
	long status = 0;


	dev = kfd_device_by_id(args->gpu_id);
	dev = kfd_device_by_id(args->gpu_id);
	if (dev == NULL)
	if (!dev)
		return -EINVAL;
		return -EINVAL;


	if (dev->device_info->asic_family == CHIP_CARRIZO) {
	if (dev->device_info->asic_family == CHIP_CARRIZO) {
@@ -465,7 +465,7 @@ static int kfd_ioctl_dbg_register(struct file *filep,
		return PTR_ERR(pdd);
		return PTR_ERR(pdd);
	}
	}


	if (dev->dbgmgr == NULL) {
	if (!dev->dbgmgr) {
		/* In case of a legal call, we have no dbgmgr yet */
		/* In case of a legal call, we have no dbgmgr yet */
		create_ok = kfd_dbgmgr_create(&dbgmgr_ptr, dev);
		create_ok = kfd_dbgmgr_create(&dbgmgr_ptr, dev);
		if (create_ok) {
		if (create_ok) {
@@ -494,7 +494,7 @@ static int kfd_ioctl_dbg_unregister(struct file *filep,
	long status;
	long status;


	dev = kfd_device_by_id(args->gpu_id);
	dev = kfd_device_by_id(args->gpu_id);
	if (dev == NULL)
	if (!dev)
		return -EINVAL;
		return -EINVAL;


	if (dev->device_info->asic_family == CHIP_CARRIZO) {
	if (dev->device_info->asic_family == CHIP_CARRIZO) {
@@ -505,7 +505,7 @@ static int kfd_ioctl_dbg_unregister(struct file *filep,
	mutex_lock(kfd_get_dbgmgr_mutex());
	mutex_lock(kfd_get_dbgmgr_mutex());


	status = kfd_dbgmgr_unregister(dev->dbgmgr, p);
	status = kfd_dbgmgr_unregister(dev->dbgmgr, p);
	if (status == 0) {
	if (!status) {
		kfd_dbgmgr_destroy(dev->dbgmgr);
		kfd_dbgmgr_destroy(dev->dbgmgr);
		dev->dbgmgr = NULL;
		dev->dbgmgr = NULL;
	}
	}
@@ -539,7 +539,7 @@ static int kfd_ioctl_dbg_address_watch(struct file *filep,
	memset((void *) &aw_info, 0, sizeof(struct dbg_address_watch_info));
	memset((void *) &aw_info, 0, sizeof(struct dbg_address_watch_info));


	dev = kfd_device_by_id(args->gpu_id);
	dev = kfd_device_by_id(args->gpu_id);
	if (dev == NULL)
	if (!dev)
		return -EINVAL;
		return -EINVAL;


	if (dev->device_info->asic_family == CHIP_CARRIZO) {
	if (dev->device_info->asic_family == CHIP_CARRIZO) {
@@ -646,7 +646,7 @@ static int kfd_ioctl_dbg_wave_control(struct file *filep,
				sizeof(wac_info.trapId);
				sizeof(wac_info.trapId);


	dev = kfd_device_by_id(args->gpu_id);
	dev = kfd_device_by_id(args->gpu_id);
	if (dev == NULL)
	if (!dev)
		return -EINVAL;
		return -EINVAL;


	if (dev->device_info->asic_family == CHIP_CARRIZO) {
	if (dev->device_info->asic_family == CHIP_CARRIZO) {
@@ -782,9 +782,9 @@ static int kfd_ioctl_get_process_apertures(struct file *filp,
				"scratch_limit %llX\n", pdd->scratch_limit);
				"scratch_limit %llX\n", pdd->scratch_limit);


			args->num_of_nodes++;
			args->num_of_nodes++;
		} while ((pdd = kfd_get_next_process_device_data(p, pdd)) !=

				NULL &&
			pdd = kfd_get_next_process_device_data(p, pdd);
				(args->num_of_nodes < NUM_OF_SUPPORTED_GPUS));
		} while (pdd && (args->num_of_nodes < NUM_OF_SUPPORTED_GPUS));
	}
	}


	mutex_unlock(&p->mutex);
	mutex_unlock(&p->mutex);
+9 −11
Original line number Original line Diff line number Diff line
@@ -77,7 +77,7 @@ static int dbgdev_diq_submit_ib(struct kfd_dbgdev *dbgdev,
	status = kq->ops.acquire_packet_buffer(kq,
	status = kq->ops.acquire_packet_buffer(kq,
				pq_packets_size_in_bytes / sizeof(uint32_t),
				pq_packets_size_in_bytes / sizeof(uint32_t),
				&ib_packet_buff);
				&ib_packet_buff);
	if (status != 0) {
	if (status) {
		pr_err("acquire_packet_buffer failed\n");
		pr_err("acquire_packet_buffer failed\n");
		return status;
		return status;
	}
	}
@@ -115,7 +115,7 @@ static int dbgdev_diq_submit_ib(struct kfd_dbgdev *dbgdev,
	status = kfd_gtt_sa_allocate(dbgdev->dev, sizeof(uint64_t),
	status = kfd_gtt_sa_allocate(dbgdev->dev, sizeof(uint64_t),
					&mem_obj);
					&mem_obj);


	if (status != 0) {
	if (status) {
		pr_err("Failed to allocate GART memory\n");
		pr_err("Failed to allocate GART memory\n");
		kq->ops.rollback_packet(kq);
		kq->ops.rollback_packet(kq);
		return status;
		return status;
@@ -202,7 +202,7 @@ static int dbgdev_register_diq(struct kfd_dbgdev *dbgdev)


	kq = pqm_get_kernel_queue(dbgdev->pqm, qid);
	kq = pqm_get_kernel_queue(dbgdev->pqm, qid);


	if (kq == NULL) {
	if (!kq) {
		pr_err("Error getting DIQ\n");
		pr_err("Error getting DIQ\n");
		pqm_destroy_queue(dbgdev->pqm, qid);
		pqm_destroy_queue(dbgdev->pqm, qid);
		return -EFAULT;
		return -EFAULT;
@@ -252,7 +252,7 @@ static void dbgdev_address_watch_set_registers(
	addrLo->u32All = 0;
	addrLo->u32All = 0;
	cntl->u32All = 0;
	cntl->u32All = 0;


	if (adw_info->watch_mask != NULL)
	if (adw_info->watch_mask)
		cntl->bitfields.mask =
		cntl->bitfields.mask =
			(uint32_t) (adw_info->watch_mask[index] &
			(uint32_t) (adw_info->watch_mask[index] &
					ADDRESS_WATCH_REG_CNTL_DEFAULT_MASK);
					ADDRESS_WATCH_REG_CNTL_DEFAULT_MASK);
@@ -307,8 +307,7 @@ static int dbgdev_address_watch_nodiq(struct kfd_dbgdev *dbgdev,
		return -EINVAL;
		return -EINVAL;
	}
	}


	if ((adw_info->watch_mode == NULL) ||
	if (!adw_info->watch_mode || !adw_info->watch_address) {
		(adw_info->watch_address == NULL)) {
		pr_err("adw_info fields are not valid\n");
		pr_err("adw_info fields are not valid\n");
		return -EINVAL;
		return -EINVAL;
	}
	}
@@ -375,15 +374,14 @@ static int dbgdev_address_watch_diq(struct kfd_dbgdev *dbgdev,
		return -EINVAL;
		return -EINVAL;
	}
	}


	if ((NULL == adw_info->watch_mode) ||
	if (!adw_info->watch_mode || !adw_info->watch_address) {
			(NULL == adw_info->watch_address)) {
		pr_err("adw_info fields are not valid\n");
		pr_err("adw_info fields are not valid\n");
		return -EINVAL;
		return -EINVAL;
	}
	}


	status = kfd_gtt_sa_allocate(dbgdev->dev, ib_size, &mem_obj);
	status = kfd_gtt_sa_allocate(dbgdev->dev, ib_size, &mem_obj);


	if (status != 0) {
	if (status) {
		pr_err("Failed to allocate GART memory\n");
		pr_err("Failed to allocate GART memory\n");
		return status;
		return status;
	}
	}
@@ -490,7 +488,7 @@ static int dbgdev_address_watch_diq(struct kfd_dbgdev *dbgdev,
					packet_buff_uint,
					packet_buff_uint,
					ib_size);
					ib_size);


		if (status != 0) {
		if (status) {
			pr_err("Failed to submit IB to DIQ\n");
			pr_err("Failed to submit IB to DIQ\n");
			break;
			break;
		}
		}
@@ -711,7 +709,7 @@ static int dbgdev_wave_control_diq(struct kfd_dbgdev *dbgdev,
			packet_buff_uint,
			packet_buff_uint,
			ib_size);
			ib_size);


	if (status != 0)
	if (status)
		pr_err("Failed to submit IB to DIQ\n");
		pr_err("Failed to submit IB to DIQ\n");


	kfd_gtt_sa_free(dbgdev->dev, mem_obj);
	kfd_gtt_sa_free(dbgdev->dev, mem_obj);
+2 −2
Original line number Original line Diff line number Diff line
@@ -55,7 +55,7 @@ static void kfd_dbgmgr_uninitialize(struct kfd_dbgmgr *pmgr)


void kfd_dbgmgr_destroy(struct kfd_dbgmgr *pmgr)
void kfd_dbgmgr_destroy(struct kfd_dbgmgr *pmgr)
{
{
	if (pmgr != NULL) {
	if (pmgr) {
		kfd_dbgmgr_uninitialize(pmgr);
		kfd_dbgmgr_uninitialize(pmgr);
		kfree(pmgr);
		kfree(pmgr);
	}
	}
@@ -66,7 +66,7 @@ bool kfd_dbgmgr_create(struct kfd_dbgmgr **ppmgr, struct kfd_dev *pdev)
	enum DBGDEV_TYPE type = DBGDEV_TYPE_DIQ;
	enum DBGDEV_TYPE type = DBGDEV_TYPE_DIQ;
	struct kfd_dbgmgr *new_buff;
	struct kfd_dbgmgr *new_buff;


	BUG_ON(pdev == NULL);
	BUG_ON(!pdev);
	BUG_ON(!pdev->init_complete);
	BUG_ON(!pdev->init_complete);


	new_buff = kfd_alloc_struct(new_buff);
	new_buff = kfd_alloc_struct(new_buff);
+5 −5
Original line number Original line Diff line number Diff line
@@ -98,7 +98,7 @@ static const struct kfd_device_info *lookup_device_info(unsigned short did)


	for (i = 0; i < ARRAY_SIZE(supported_devices); i++) {
	for (i = 0; i < ARRAY_SIZE(supported_devices); i++) {
		if (supported_devices[i].did == did) {
		if (supported_devices[i].did == did) {
			BUG_ON(supported_devices[i].device_info == NULL);
			BUG_ON(!supported_devices[i].device_info);
			return supported_devices[i].device_info;
			return supported_devices[i].device_info;
		}
		}
	}
	}
@@ -212,7 +212,7 @@ static int iommu_invalid_ppr_cb(struct pci_dev *pdev, int pasid,
			flags);
			flags);


	dev = kfd_device_by_pci_dev(pdev);
	dev = kfd_device_by_pci_dev(pdev);
	BUG_ON(dev == NULL);
	BUG_ON(!dev);


	kfd_signal_iommu_event(dev, pasid, address,
	kfd_signal_iommu_event(dev, pasid, address,
			flags & PPR_FAULT_WRITE, flags & PPR_FAULT_EXEC);
			flags & PPR_FAULT_WRITE, flags & PPR_FAULT_EXEC);
@@ -262,7 +262,7 @@ bool kgd2kfd_device_init(struct kfd_dev *kfd,


	kfd_doorbell_init(kfd);
	kfd_doorbell_init(kfd);


	if (kfd_topology_add_device(kfd) != 0) {
	if (kfd_topology_add_device(kfd)) {
		dev_err(kfd_device, "Error adding device to topology\n");
		dev_err(kfd_device, "Error adding device to topology\n");
		goto kfd_topology_add_device_error;
		goto kfd_topology_add_device_error;
	}
	}
@@ -288,7 +288,7 @@ bool kgd2kfd_device_init(struct kfd_dev *kfd,
		goto device_queue_manager_error;
		goto device_queue_manager_error;
	}
	}


	if (kfd->dqm->ops.start(kfd->dqm) != 0) {
	if (kfd->dqm->ops.start(kfd->dqm)) {
		dev_err(kfd_device,
		dev_err(kfd_device,
			"Error starting queue manager for device %x:%x\n",
			"Error starting queue manager for device %x:%x\n",
			kfd->pdev->vendor, kfd->pdev->device);
			kfd->pdev->vendor, kfd->pdev->device);
@@ -341,7 +341,7 @@ void kgd2kfd_device_exit(struct kfd_dev *kfd)


void kgd2kfd_suspend(struct kfd_dev *kfd)
void kgd2kfd_suspend(struct kfd_dev *kfd)
{
{
	BUG_ON(kfd == NULL);
	BUG_ON(!kfd);


	if (kfd->init_complete) {
	if (kfd->init_complete) {
		kfd->dqm->ops.stop(kfd->dqm);
		kfd->dqm->ops.stop(kfd->dqm);
+25 −25
Original line number Original line Diff line number Diff line
@@ -167,7 +167,7 @@ static int create_queue_nocpsch(struct device_queue_manager *dqm,


	if (list_empty(&qpd->queues_list)) {
	if (list_empty(&qpd->queues_list)) {
		retval = allocate_vmid(dqm, qpd, q);
		retval = allocate_vmid(dqm, qpd, q);
		if (retval != 0) {
		if (retval) {
			mutex_unlock(&dqm->lock);
			mutex_unlock(&dqm->lock);
			return retval;
			return retval;
		}
		}
@@ -180,7 +180,7 @@ static int create_queue_nocpsch(struct device_queue_manager *dqm,
	if (q->properties.type == KFD_QUEUE_TYPE_SDMA)
	if (q->properties.type == KFD_QUEUE_TYPE_SDMA)
		retval = create_sdma_queue_nocpsch(dqm, q, qpd);
		retval = create_sdma_queue_nocpsch(dqm, q, qpd);


	if (retval != 0) {
	if (retval) {
		if (list_empty(&qpd->queues_list)) {
		if (list_empty(&qpd->queues_list)) {
			deallocate_vmid(dqm, qpd, q);
			deallocate_vmid(dqm, qpd, q);
			*allocated_vmid = 0;
			*allocated_vmid = 0;
@@ -262,16 +262,16 @@ static int create_compute_queue_nocpsch(struct device_queue_manager *dqm,
	BUG_ON(!dqm || !q || !qpd);
	BUG_ON(!dqm || !q || !qpd);


	mqd = dqm->ops.get_mqd_manager(dqm, KFD_MQD_TYPE_COMPUTE);
	mqd = dqm->ops.get_mqd_manager(dqm, KFD_MQD_TYPE_COMPUTE);
	if (mqd == NULL)
	if (!mqd)
		return -ENOMEM;
		return -ENOMEM;


	retval = allocate_hqd(dqm, q);
	retval = allocate_hqd(dqm, q);
	if (retval != 0)
	if (retval)
		return retval;
		return retval;


	retval = mqd->init_mqd(mqd, &q->mqd, &q->mqd_mem_obj,
	retval = mqd->init_mqd(mqd, &q->mqd, &q->mqd_mem_obj,
				&q->gart_mqd_addr, &q->properties);
				&q->gart_mqd_addr, &q->properties);
	if (retval != 0) {
	if (retval) {
		deallocate_hqd(dqm, q);
		deallocate_hqd(dqm, q);
		return retval;
		return retval;
	}
	}
@@ -281,7 +281,7 @@ static int create_compute_queue_nocpsch(struct device_queue_manager *dqm,


	retval = mqd->load_mqd(mqd, q->mqd, q->pipe,
	retval = mqd->load_mqd(mqd, q->mqd, q->pipe,
			q->queue, (uint32_t __user *) q->properties.write_ptr);
			q->queue, (uint32_t __user *) q->properties.write_ptr);
	if (retval != 0) {
	if (retval) {
		deallocate_hqd(dqm, q);
		deallocate_hqd(dqm, q);
		mqd->uninit_mqd(mqd, q->mqd, q->mqd_mem_obj);
		mqd->uninit_mqd(mqd, q->mqd, q->mqd_mem_obj);
		return retval;
		return retval;
@@ -330,7 +330,7 @@ static int destroy_queue_nocpsch(struct device_queue_manager *dqm,
				QUEUE_PREEMPT_DEFAULT_TIMEOUT_MS,
				QUEUE_PREEMPT_DEFAULT_TIMEOUT_MS,
				q->pipe, q->queue);
				q->pipe, q->queue);


	if (retval != 0)
	if (retval)
		goto out;
		goto out;


	mqd->uninit_mqd(mqd, q->mqd, q->mqd_mem_obj);
	mqd->uninit_mqd(mqd, q->mqd, q->mqd_mem_obj);
@@ -365,7 +365,7 @@ static int update_queue(struct device_queue_manager *dqm, struct queue *q)
	mutex_lock(&dqm->lock);
	mutex_lock(&dqm->lock);
	mqd = dqm->ops.get_mqd_manager(dqm,
	mqd = dqm->ops.get_mqd_manager(dqm,
			get_mqd_type_from_queue_type(q->properties.type));
			get_mqd_type_from_queue_type(q->properties.type));
	if (mqd == NULL) {
	if (!mqd) {
		mutex_unlock(&dqm->lock);
		mutex_unlock(&dqm->lock);
		return -ENOMEM;
		return -ENOMEM;
	}
	}
@@ -381,7 +381,7 @@ static int update_queue(struct device_queue_manager *dqm, struct queue *q)
	retval = mqd->update_mqd(mqd, q->mqd, &q->properties);
	retval = mqd->update_mqd(mqd, q->mqd, &q->properties);
	if ((q->properties.is_active) && (!prev_active))
	if ((q->properties.is_active) && (!prev_active))
		dqm->queue_count++;
		dqm->queue_count++;
	else if ((!q->properties.is_active) && (prev_active))
	else if (!q->properties.is_active && prev_active)
		dqm->queue_count--;
		dqm->queue_count--;


	if (sched_policy != KFD_SCHED_POLICY_NO_HWS)
	if (sched_policy != KFD_SCHED_POLICY_NO_HWS)
@@ -403,7 +403,7 @@ static struct mqd_manager *get_mqd_manager_nocpsch(
	mqd = dqm->mqds[type];
	mqd = dqm->mqds[type];
	if (!mqd) {
	if (!mqd) {
		mqd = mqd_manager_init(type, dqm->dev);
		mqd = mqd_manager_init(type, dqm->dev);
		if (mqd == NULL)
		if (!mqd)
			pr_err("mqd manager is NULL");
			pr_err("mqd manager is NULL");
		dqm->mqds[type] = mqd;
		dqm->mqds[type] = mqd;
	}
	}
@@ -485,7 +485,7 @@ static void init_interrupts(struct device_queue_manager *dqm)
{
{
	unsigned int i;
	unsigned int i;


	BUG_ON(dqm == NULL);
	BUG_ON(!dqm);


	for (i = 0 ; i < get_pipes_per_mec(dqm) ; i++)
	for (i = 0 ; i < get_pipes_per_mec(dqm) ; i++)
		if (is_pipe_enabled(dqm, 0, i))
		if (is_pipe_enabled(dqm, 0, i))
@@ -589,7 +589,7 @@ static int create_sdma_queue_nocpsch(struct device_queue_manager *dqm,
		return -ENOMEM;
		return -ENOMEM;


	retval = allocate_sdma_queue(dqm, &q->sdma_id);
	retval = allocate_sdma_queue(dqm, &q->sdma_id);
	if (retval != 0)
	if (retval)
		return retval;
		return retval;


	q->properties.sdma_queue_id = q->sdma_id % CIK_SDMA_QUEUES_PER_ENGINE;
	q->properties.sdma_queue_id = q->sdma_id % CIK_SDMA_QUEUES_PER_ENGINE;
@@ -602,14 +602,14 @@ static int create_sdma_queue_nocpsch(struct device_queue_manager *dqm,
	dqm->ops_asic_specific.init_sdma_vm(dqm, q, qpd);
	dqm->ops_asic_specific.init_sdma_vm(dqm, q, qpd);
	retval = mqd->init_mqd(mqd, &q->mqd, &q->mqd_mem_obj,
	retval = mqd->init_mqd(mqd, &q->mqd, &q->mqd_mem_obj,
				&q->gart_mqd_addr, &q->properties);
				&q->gart_mqd_addr, &q->properties);
	if (retval != 0) {
	if (retval) {
		deallocate_sdma_queue(dqm, q->sdma_id);
		deallocate_sdma_queue(dqm, q->sdma_id);
		return retval;
		return retval;
	}
	}


	retval = mqd->load_mqd(mqd, q->mqd, 0,
	retval = mqd->load_mqd(mqd, q->mqd, 0,
				0, NULL);
				0, NULL);
	if (retval != 0) {
	if (retval) {
		deallocate_sdma_queue(dqm, q->sdma_id);
		deallocate_sdma_queue(dqm, q->sdma_id);
		mqd->uninit_mqd(mqd, q->mqd, q->mqd_mem_obj);
		mqd->uninit_mqd(mqd, q->mqd, q->mqd_mem_obj);
		return retval;
		return retval;
@@ -680,7 +680,7 @@ static int initialize_cpsch(struct device_queue_manager *dqm)
	dqm->sdma_queue_count = 0;
	dqm->sdma_queue_count = 0;
	dqm->active_runlist = false;
	dqm->active_runlist = false;
	retval = dqm->ops_asic_specific.initialize(dqm);
	retval = dqm->ops_asic_specific.initialize(dqm);
	if (retval != 0)
	if (retval)
		goto fail_init_pipelines;
		goto fail_init_pipelines;


	return 0;
	return 0;
@@ -700,11 +700,11 @@ static int start_cpsch(struct device_queue_manager *dqm)
	retval = 0;
	retval = 0;


	retval = pm_init(&dqm->packets, dqm);
	retval = pm_init(&dqm->packets, dqm);
	if (retval != 0)
	if (retval)
		goto fail_packet_manager_init;
		goto fail_packet_manager_init;


	retval = set_sched_resources(dqm);
	retval = set_sched_resources(dqm);
	if (retval != 0)
	if (retval)
		goto fail_set_sched_resources;
		goto fail_set_sched_resources;


	pr_debug("Allocating fence memory\n");
	pr_debug("Allocating fence memory\n");
@@ -713,7 +713,7 @@ static int start_cpsch(struct device_queue_manager *dqm)
	retval = kfd_gtt_sa_allocate(dqm->dev, sizeof(*dqm->fence_addr),
	retval = kfd_gtt_sa_allocate(dqm->dev, sizeof(*dqm->fence_addr),
					&dqm->fence_mem);
					&dqm->fence_mem);


	if (retval != 0)
	if (retval)
		goto fail_allocate_vidmem;
		goto fail_allocate_vidmem;


	dqm->fence_addr = dqm->fence_mem->cpu_ptr;
	dqm->fence_addr = dqm->fence_mem->cpu_ptr;
@@ -845,7 +845,7 @@ static int create_queue_cpsch(struct device_queue_manager *dqm, struct queue *q,
	mqd = dqm->ops.get_mqd_manager(dqm,
	mqd = dqm->ops.get_mqd_manager(dqm,
			get_mqd_type_from_queue_type(q->properties.type));
			get_mqd_type_from_queue_type(q->properties.type));


	if (mqd == NULL) {
	if (!mqd) {
		mutex_unlock(&dqm->lock);
		mutex_unlock(&dqm->lock);
		return -ENOMEM;
		return -ENOMEM;
	}
	}
@@ -853,7 +853,7 @@ static int create_queue_cpsch(struct device_queue_manager *dqm, struct queue *q,
	dqm->ops_asic_specific.init_sdma_vm(dqm, q, qpd);
	dqm->ops_asic_specific.init_sdma_vm(dqm, q, qpd);
	retval = mqd->init_mqd(mqd, &q->mqd, &q->mqd_mem_obj,
	retval = mqd->init_mqd(mqd, &q->mqd, &q->mqd_mem_obj,
				&q->gart_mqd_addr, &q->properties);
				&q->gart_mqd_addr, &q->properties);
	if (retval != 0)
	if (retval)
		goto out;
		goto out;


	list_add(&q->list, &qpd->queues_list);
	list_add(&q->list, &qpd->queues_list);
@@ -934,7 +934,7 @@ static int destroy_queues_cpsch(struct device_queue_manager *dqm,


	retval = pm_send_unmap_queue(&dqm->packets, KFD_QUEUE_TYPE_COMPUTE,
	retval = pm_send_unmap_queue(&dqm->packets, KFD_QUEUE_TYPE_COMPUTE,
			preempt_type, 0, false, 0);
			preempt_type, 0, false, 0);
	if (retval != 0)
	if (retval)
		goto out;
		goto out;


	*dqm->fence_addr = KFD_FENCE_INIT;
	*dqm->fence_addr = KFD_FENCE_INIT;
@@ -943,7 +943,7 @@ static int destroy_queues_cpsch(struct device_queue_manager *dqm,
	/* should be timed out */
	/* should be timed out */
	retval = amdkfd_fence_wait_timeout(dqm->fence_addr, KFD_FENCE_COMPLETED,
	retval = amdkfd_fence_wait_timeout(dqm->fence_addr, KFD_FENCE_COMPLETED,
				QUEUE_PREEMPT_DEFAULT_TIMEOUT_MS);
				QUEUE_PREEMPT_DEFAULT_TIMEOUT_MS);
	if (retval != 0) {
	if (retval) {
		pdd = kfd_get_process_device_data(dqm->dev,
		pdd = kfd_get_process_device_data(dqm->dev,
				kfd_get_process(current));
				kfd_get_process(current));
		pdd->reset_wavefronts = true;
		pdd->reset_wavefronts = true;
@@ -968,7 +968,7 @@ static int execute_queues_cpsch(struct device_queue_manager *dqm, bool lock)
		mutex_lock(&dqm->lock);
		mutex_lock(&dqm->lock);


	retval = destroy_queues_cpsch(dqm, false, false);
	retval = destroy_queues_cpsch(dqm, false, false);
	if (retval != 0) {
	if (retval) {
		pr_err("The cp might be in an unrecoverable state due to an unsuccessful queues preemption");
		pr_err("The cp might be in an unrecoverable state due to an unsuccessful queues preemption");
		goto out;
		goto out;
	}
	}
@@ -984,7 +984,7 @@ static int execute_queues_cpsch(struct device_queue_manager *dqm, bool lock)
	}
	}


	retval = pm_send_runlist(&dqm->packets, &dqm->queues);
	retval = pm_send_runlist(&dqm->packets, &dqm->queues);
	if (retval != 0) {
	if (retval) {
		pr_err("failed to execute runlist");
		pr_err("failed to execute runlist");
		goto out;
		goto out;
	}
	}
@@ -1193,7 +1193,7 @@ struct device_queue_manager *device_queue_manager_init(struct kfd_dev *dev)
		break;
		break;
	}
	}


	if (dqm->ops.initialize(dqm) != 0) {
	if (dqm->ops.initialize(dqm)) {
		kfree(dqm);
		kfree(dqm);
		return NULL;
		return NULL;
	}
	}
Loading