linux/drivers/gpu/drm/ttm
Dave Airlie ebdf565169 drm/ttm: add multihop infrastrucutre (v3)
Currently drivers get called to move a buffer, but if they have to
move it temporarily through another space (SYSTEM->VRAM via TT)
then they can end up with a lot of ttm->driver->ttm call stacks,
if the temprorary space moves requires eviction.

Instead of letting the driver do all the placement/space for the
temporary, allow it to report back (-EMULTIHOP) and a placement (hop)
to the move code, which will then do the temporary move, and the
correct placement move afterwards.

This removes a lot of code from drivers, at the expense of
adding some midlayering. I've some further ideas on how to turn
it inside out, but I think this is a good solution to the call
stack problems.

v2: separate out the driver patches, add WARN for getting
MULTHOP in paths we shouldn't (Daniel)
v3: use memset (Christian)

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: hristian König <christian.koenig@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20201109005432.861936-2-airlied@gmail.com
2020-11-11 11:11:03 +10:00
..
Makefile drm/ttm: nuke old page allocator 2020-10-29 15:57:57 +01:00
ttm_agp_backend.c drm/ttm: nuke old page allocator 2020-10-29 15:57:57 +01:00
ttm_bo.c drm/ttm: add multihop infrastrucutre (v3) 2020-11-11 11:11:03 +10:00
ttm_bo_util.c drm/ttm: Add vmap/vunmap to TTM and TTM GEM helpers 2020-11-09 09:17:36 +01:00
ttm_bo_vm.c drm/ttm: replace context flags with bools v2 2020-11-04 11:23:25 +01:00
ttm_execbuf_util.c drm/ttm/amdgpu: consolidate ttm reserve paths 2020-08-06 12:16:31 +10:00
ttm_memory.c drm/ttm: replace context flags with bools v2 2020-11-04 11:23:25 +01:00
ttm_module.c
ttm_pool.c drm/ttm: rework no_retry handling v2 2020-11-04 11:22:46 +01:00
ttm_range_manager.c drm/ttm: nuke ttm_bo_evict_mm and rename mgr function v3 2020-10-07 13:53:08 +02:00
ttm_resource.c drm/ttm: replace context flags with bools v2 2020-11-04 11:23:25 +01:00
ttm_tt.c drm/ttm: rework no_retry handling v2 2020-11-04 11:22:46 +01:00