drm/amdkfd: Fix null ptr access
authorHawking Zhang <Hawking.Zhang@amd.com>
Thu, 11 May 2023 09:01:03 +0000 (17:01 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 9 Jun 2023 14:37:21 +0000 (10:37 -0400)
Avoid access null xcp_mgr pointer.

Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com>
Reviewed-by: Lijo Lazar <lijo.lazar@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdkfd/kfd_device.c

index bf32e54..2cfef3f 100644 (file)
@@ -644,12 +644,14 @@ bool kgd2kfd_device_init(struct kfd_dev *kfd,
         * If the VMID range changes for GFX9.4.3, then this code MUST be
         * revisited.
         */
-       partition_mode = amdgpu_xcp_query_partition_mode(kfd->adev->xcp_mgr, AMDGPU_XCP_FL_LOCKED);
-       if (KFD_GC_VERSION(kfd) == IP_VERSION(9, 4, 3) &&
-           partition_mode == AMDGPU_CPX_PARTITION_MODE &&
-           kfd->num_nodes != 1) {
-               vmid_num_kfd /= 2;
-               first_vmid_kfd = last_vmid_kfd + 1 - vmid_num_kfd*2;
+       if (kfd->adev->xcp_mgr) {
+               partition_mode = amdgpu_xcp_query_partition_mode(kfd->adev->xcp_mgr,
+                                                                AMDGPU_XCP_FL_LOCKED);
+               if (partition_mode == AMDGPU_CPX_PARTITION_MODE &&
+                   kfd->num_nodes != 1) {
+                       vmid_num_kfd /= 2;
+                       first_vmid_kfd = last_vmid_kfd + 1 - vmid_num_kfd*2;
+               }
        }
 
        /* Verify module parameters regarding mapped process number*/