drm/amdkfd: pages_addr offset must be 0 for system range
prange->offset is for VRAM range mm_nodes, if multiple ranges share same mm_nodes, migrate range back to VRAM will reuse the VRAM at offset of the same mm_nodes. For system memory pages_addr array, the offset is always 0, otherwise, update GPU mapping will use incorrect system memory page, and cause system memory corruption. Signed-off-by: Philip Yang <Philip.Yang@amd.com> Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
cf2a22e408
commit
0dc2bafb08
@ -1153,7 +1153,7 @@ svm_range_map_to_gpu(struct amdgpu_device *adev, struct amdgpu_vm *vm,
|
||||
|
||||
prange->mapping.start = prange->start;
|
||||
prange->mapping.last = prange->last;
|
||||
prange->mapping.offset = prange->offset;
|
||||
prange->mapping.offset = prange->ttm_res ? prange->offset : 0;
|
||||
pte_flags = svm_range_get_pte_flags(adev, prange);
|
||||
|
||||
r = amdgpu_vm_bo_update_mapping(adev, bo_adev, vm, false, false, NULL,
|
||||
|
Loading…
x
Reference in New Issue
Block a user