Ville Syrjälä 73f522bad1 drm/i915: Use i915_gem_object_get_dma_address() to populate rotated vmas
Replace the kvmalloc_array() with i915_gem_object_get_dma_address() when
populating rotated vmas. One random access mechanism ought to be enough
for everyone?

To calculate the size of the radix tree I think we can do
something like this (assuming 64bit pointers):
 num_pages = obj_size / 4096
 tree_height = ceil(log64(num_pages))
 num_nodes = sum(64^n, n, 0, tree_height-1)
 tree_size = num_nodes * 576

If we compare that with the object size we should get a relative
overhead of around .2% to 1% for reasonable sized objects,
which framebuffers tend to be.

Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
Suggested-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20181016150413.11577-1-ville.syrjala@linux.intel.com
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2018-10-18 19:35:47 +03:00
..
2018-08-27 10:00:03 -04:00
2018-09-09 14:19:18 +02:00
2018-09-10 07:10:38 +02:00
2018-08-17 10:40:09 -07:00
2018-08-27 10:00:03 -04:00
2018-09-09 14:19:18 +02:00
2018-06-22 12:58:08 +10:00
2018-09-03 18:18:08 +02:00
2018-07-20 10:46:49 +10:00
2018-09-09 14:19:18 +02:00
2018-09-11 20:06:35 +02:00
2018-09-09 14:19:18 +02:00
2018-06-28 13:29:07 +10:00
2018-07-13 18:40:28 +02:00
2018-08-16 11:30:02 -04:00
2018-08-28 11:22:42 -05:00
2018-09-09 14:19:18 +02:00