From: Ankitprasad Sharma <ankitprasad.r.sharma@xxxxxxxxx> This patch series adds support for creating Stolen memory backed objects. Despite being a unified memory architecture (UMA) some bits of memory are more equal than others. In particular we have the thorny issue of stolen memory, memory stolen from the system by the BIOS and reserved for igfx use. Stolen memory is required for some functions of the GPU and display engine, but in general it goes wasted. Whilst we cannot return it back to the system, we need to find some other method for utilising it. As we do not support direct access to the physical address in the stolen region, it behaves like a different class of memory, closer in kin to local GPU memory. This strongly suggests that we need a placement model like TTM if we are to fully utilize these discrete chunks of differing memory. To add support for creating Stolen memory backed objects, we extend the drm_i915_gem_create structure, by adding a new flag through which user can specify the preference to allocate the object from stolen memory, which if set, an attempt will be made to allocate the object from stolen memory subject to the availability of free space in the stolen region. This also adds support for clearing buffer objects via blitter engines. This is particularly useful for clearing out the memory from stolen region, but can also be used for other shmem allocated objects. Also adding support for stealing purgable stolen pages, if we run out of stolen memory when trying to allocate an object. This can be verified using IGT tests: igt/gem_create_stolen Ankitprasad Sharma (2): drm/i915: Clearing buffer objects via blitter engine drm/i915: Support for creating Stolen memory backed objects Chris Wilson (1): drm/i915: Add support for stealing purgable stolen pages drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/i915_dma.c | 3 + drivers/gpu/drm/i915/i915_drv.h | 4 + drivers/gpu/drm/i915/i915_gem.c | 31 +++++- drivers/gpu/drm/i915/i915_gem_exec.c | 197 +++++++++++++++++++++++++++++++++ drivers/gpu/drm/i915/i915_gem_stolen.c | 121 ++++++++++++++++++-- drivers/gpu/drm/i915/intel_lrc.c | 2 +- drivers/gpu/drm/i915/intel_lrc.h | 2 + include/uapi/drm/i915_drm.h | 15 +++ 9 files changed, 360 insertions(+), 16 deletions(-) create mode 100644 drivers/gpu/drm/i915/i915_gem_exec.c -- 1.9.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx