Searched hist:"1 d5dbfe6c06a5269b535f8e6b13569f32c42ea60" (Results 1 – 2 of 2) sorted by relevance
/openbmc/linux/drivers/gpu/drm/amd/amdkfd/ |
H A D | kfd_svm.h | diff 1d5dbfe6c06a5269b535f8e6b13569f32c42ea60 Wed May 05 14:15:50 CDT 2021 Alex Sierra <alex.sierra@amd.com> drm/amdkfd: classify and map mixed svm range pages in GPU
[Why] svm ranges can have mixed pages from device or system memory. A good example is, after a prange has been allocated in VRAM and a copy-on-write is triggered by a fork. This invalidates some pages inside the prange. Endding up in mixed pages.
[How] By classifying each page inside a prange, based on its type. Device or system memory, during dma mapping call. If page corresponds to VRAM domain, a flag is set to its dma_addr entry for each GPU. Then, at the GPU page table mapping. All group of contiguous pages within the same type are mapped with their proper pte flags.
v2: Instead of using ttm_res to calculate vram pfns in the svm_range. It is now done by setting the vram real physical address into drm_addr array. This makes more flexible VRAM management, plus removes the need to have a BO reference in the svm_range.
v3: Remove mapping member from svm_range
Signed-off-by: Alex Sierra <alex.sierra@amd.com> Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|
H A D | kfd_svm.c | diff 1d5dbfe6c06a5269b535f8e6b13569f32c42ea60 Wed May 05 14:15:50 CDT 2021 Alex Sierra <alex.sierra@amd.com> drm/amdkfd: classify and map mixed svm range pages in GPU
[Why] svm ranges can have mixed pages from device or system memory. A good example is, after a prange has been allocated in VRAM and a copy-on-write is triggered by a fork. This invalidates some pages inside the prange. Endding up in mixed pages.
[How] By classifying each page inside a prange, based on its type. Device or system memory, during dma mapping call. If page corresponds to VRAM domain, a flag is set to its dma_addr entry for each GPU. Then, at the GPU page table mapping. All group of contiguous pages within the same type are mapped with their proper pte flags.
v2: Instead of using ttm_res to calculate vram pfns in the svm_range. It is now done by setting the vram real physical address into drm_addr array. This makes more flexible VRAM management, plus removes the need to have a BO reference in the svm_range.
v3: Remove mapping member from svm_range
Signed-off-by: Alex Sierra <alex.sierra@amd.com> Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
|