mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-22 17:36:20 +03:00
gpu: nvgpu: fall back to sysmem for generic alloc-maps
In gk20a_gmmu_alloc_map_attr(), which is used for in-kernel allocations combined with immediate gmmu map, fall back to attempting to allocate sysmem when vidmem allocation fails. Bug 1809939 Change-Id: I4ec4fbf93d41fd9681166b47b3ecad24b51ea274 Signed-off-by: Konsta Holtta <kholtta@nvidia.com> Reviewed-on: http://git-master/r/1216814 (cherry picked from commit a9929682f1f356f7e8a652a2cec8ed73cc492448) Reviewed-on: http://git-master/r/1217688 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
committed by
mobile promotions
parent
1a63ca3a65
commit
51a7cdce32
@@ -3203,8 +3203,16 @@ int gk20a_gmmu_alloc_map(struct vm_gk20a *vm, size_t size,
|
||||
int gk20a_gmmu_alloc_map_attr(struct vm_gk20a *vm,
|
||||
enum dma_attr attr, size_t size, struct mem_desc *mem)
|
||||
{
|
||||
if (vm->mm->vidmem_is_vidmem)
|
||||
return gk20a_gmmu_alloc_map_attr_vid(vm, 0, size, mem);
|
||||
if (vm->mm->vidmem_is_vidmem) {
|
||||
int err = gk20a_gmmu_alloc_map_attr_vid(vm, 0, size, mem);
|
||||
|
||||
if (!err)
|
||||
return 0;
|
||||
/*
|
||||
* Fall back to sysmem (which may then also fail) in case
|
||||
* vidmem is exhausted.
|
||||
*/
|
||||
}
|
||||
|
||||
return gk20a_gmmu_alloc_map_attr_sys(vm, 0, size, mem);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user