libhsakmt: Fix deadlock in map_mmio
Unlock mutex if MMIO mapping fails. This happens on all GFXv8 GPUs.
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
Change-Id: I1dee1cbddefd9185c24ea79377f49f8ae2c5ff57
[ROCm/ROCR-Runtime commit: 19536080a8]
This commit is contained in:
committed by
Philip Yang
parent
1da08cffe1
commit
559bb50c6a
@@ -2077,8 +2077,10 @@ static void *map_mmio(uint32_t node_id, uint32_t gpu_id, int mmap_fd)
|
||||
mem = __fmm_allocate_device(gpu_id, NULL, PAGE_SIZE, aperture,
|
||||
&mmap_offset, ioc_flags, &vm_obj);
|
||||
|
||||
if (!mem || !vm_obj)
|
||||
if (!mem || !vm_obj) {
|
||||
pthread_mutex_unlock(&aperture->fmm_mutex);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
flags.Value = 0;
|
||||
flags.ui32.NonPaged = 1;
|
||||
|
||||
Reference in New Issue
Block a user