linux/drivers/gpu/drm/ttm
Thomas Hellstrom eba67093f5 drm/ttm: Fix up io_mem_reserve / io_mem_free calling
This patch attempts to fix up shortcomings with the current calling
sequences.

1) There's a fastpath where no locking occurs and only io_mem_reserved is
   called to obtain needed info for mapping. The fastpath is set per
   memory type manager.
2) If the fastpath is disabled, io_mem_reserve and io_mem_free will be exactly
   balanced and not called recursively for the same struct ttm_mem_reg.
3) Optionally the driver can choose to enable a per memory type manager LRU
   eviction mechanism that, when io_mem_reserve returns -EAGAIN will attempt
   to kill user-space mappings of memory in that manager to free up needed
   resources

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Ben Skeggs <bskeggs@redhat.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-11-22 13:25:22 +10:00
..
Makefile drm/ttm: restructure to allow driver to plug in alternate memory manager 2010-10-05 10:01:20 +10:00
ttm_agp_backend.c drm/ttm: restructure to allow driver to plug in alternate memory manager 2010-10-05 10:01:20 +10:00
ttm_bo.c drm/ttm: Fix up io_mem_reserve / io_mem_free calling 2010-11-22 13:25:22 +10:00
ttm_bo_manager.c drm/ttm: Use private locks for the default bo range manager 2010-11-09 13:33:24 +10:00
ttm_bo_util.c drm/ttm: Fix up io_mem_reserve / io_mem_free calling 2010-11-22 13:25:22 +10:00
ttm_bo_vm.c drm/ttm: Fix up io_mem_reserve / io_mem_free calling 2010-11-22 13:25:22 +10:00
ttm_execbuf_util.c drm/ttm/vmwgfx: Have TTM manage the validation sequence. 2010-11-22 13:25:21 +10:00
ttm_lock.c drm/ttm: Remove some leftover debug messages. 2010-05-07 09:20:56 +10:00
ttm_memory.c Merge branch 'drm-ttm-pool' into drm-core-next 2010-04-20 13:12:28 +10:00
ttm_module.c drm: move ttm global code to core drm 2010-08-04 09:46:06 +10:00
ttm_object.c drm/ttm: remove padding from ttm_ref_object on 64bit builds 2010-02-01 11:24:50 +10:00
ttm_page_alloc.c drm: ttm sparse fixes. 2010-09-24 10:09:08 +10:00
ttm_tt.c drm/ttm: remove failed ttm binding error printout 2010-11-09 13:33:57 +10:00