I'm going to be off doing other things for the next couple of weeks, so I'm dropping these now to give it a nice soak while I'm gone.
Dave/Daniel: if you could look these over and tell me if the general direction seems good.
Ajax: anything you missing in the basic vgem stuff?
Since the last time: Squashed down the original vgem patches Use dumb_bo functions/ditched VGEM ioctls Hooked up prime import and export support
On the prime side, the major difference from what Dave has done before is a per driver hash of the previously used dma bufs/gem objects.
The prime stuff is of particularly low quality at this point, like I said, trying to get something out before I disappear for a while. So please don't yell at me about obvious bugs :). After getting feedback on what I have now, I will incorporate Dave's earlier work on i915 prime, and get some better test cases going.
On my todos: Ascii chart of dmabuf/drm object life cycle hashsify the per file list i915 per driver hash vgem-i915 and vice versa test cases
As before, the very basic tools are here: git://people.freedesktop.org/~bwidawsk/vgem-gpu-tools
Once we get cpu maps that I think Daniel wants to work on, I can even do better tests with just VGEM.
Adam Jackson (1): drm/vgem: virtual GEM provider
Ben Widawsky (5): drm: DRM_DEBUG_PRIME drm: per device prime dma buf hash drm/vgem: prime export support drm/vgem: import support drm: actually enable PRIME
Dave Airlie (1): drm: base prime support
drivers/gpu/drm/Kconfig | 9 + drivers/gpu/drm/Makefile | 3 +- drivers/gpu/drm/drm_drv.c | 3 + drivers/gpu/drm/drm_gem.c | 4 + drivers/gpu/drm/drm_prime.c | 172 +++++++++++++++ drivers/gpu/drm/drm_stub.c | 8 + drivers/gpu/drm/vgem/Makefile | 4 + drivers/gpu/drm/vgem/vgem_dma_buf.c | 248 ++++++++++++++++++++++ drivers/gpu/drm/vgem/vgem_drv.c | 389 +++++++++++++++++++++++++++++++++++ drivers/gpu/drm/vgem/vgem_drv.h | 61 ++++++ include/drm/drm.h | 10 +- include/drm/drmP.h | 55 +++++ 12 files changed, 964 insertions(+), 2 deletions(-) create mode 100644 drivers/gpu/drm/drm_prime.c create mode 100644 drivers/gpu/drm/vgem/Makefile create mode 100644 drivers/gpu/drm/vgem/vgem_dma_buf.c create mode 100644 drivers/gpu/drm/vgem/vgem_drv.c create mode 100644 drivers/gpu/drm/vgem/vgem_drv.h