linux/drivers/gpu/drm/ttm
David Herrmann 72525b3f33 drm/ttm: convert to unified vma offset manager
Use the new vma-manager infrastructure. This doesn't change any
implementation details as the vma-offset-manager is nearly copied 1-to-1
from TTM.

The vm_lock is moved into the offset manager so we can drop it from TTM.
During lookup, we use the vma locking helpers to take a reference to the
found object.
In all other scenarios, locking stays the same as before. We always
guarantee that drm_vma_offset_remove() is called only during destruction.
Hence, helpers like drm_vma_node_offset_addr() are always safe as long as
the node has a valid offset.

This also drops the addr_space_offset member as it is a copy of vm_start
in vma_node objects. Use the accessor functions instead.

v4:
 - remove vm_lock
 - use drm_vma_offset_lock_lookup() to protect lookup (instead of vm_lock)

Cc: Dave Airlie <airlied@redhat.com>
Cc: Ben Skeggs <bskeggs@redhat.com>
Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Cc: Martin Peres <martin.peres@labri.fr>
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: Thomas Hellstrom <thellstrom@vmware.com>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Dave Airlie <airlied@gmail.com>
2013-07-25 20:47:07 +10:00
..
Makefile drm/ttm: provide dma aware ttm page pool code V9 2011-12-06 10:39:33 +00:00
ttm_agp_backend.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
ttm_bo.c drm/ttm: convert to unified vma offset manager 2013-07-25 20:47:07 +10:00
ttm_bo_manager.c drm: make drm_mm_init() return void 2013-07-02 13:34:41 +10:00
ttm_bo_util.c drm/ttm: convert to unified vma offset manager 2013-07-25 20:47:07 +10:00
ttm_bo_vm.c drm/ttm: convert to unified vma offset manager 2013-07-25 20:47:07 +10:00
ttm_execbuf_util.c drm/ttm: inline ttm_bo_reserve and related calls 2013-06-28 12:04:09 +10:00
ttm_lock.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
ttm_memory.c drm/ttm: remove ttm_mem_global->queue 2012-11-20 16:06:22 +10:00
ttm_module.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
ttm_object.c drm/ttm: Use the hashtab _rcu interface for ttm_objects 2012-11-28 18:36:15 +10:00
ttm_page_alloc.c ttm: Clear the ttm page allocated from high memory zone correctly 2012-11-16 09:56:35 +10:00
ttm_page_alloc_dma.c Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2012-10-03 23:29:23 -07:00
ttm_tt.c new helper: file_inode(file) 2013-02-22 23:31:31 -05:00