[PATCH 1/6] drm/i915/uapi: introduce drm_i915_gem_create_ext

2022-02-24 Thread Pallavi Mishra
From: Matthew Auld Same old gem_create but with now with extensions support. This is needed to support various upcoming usecases. v2:(Chris) - Use separate ioctl number for gem_create_ext, instead of hijacking the existing gem_create ioctl, otherwise we run into the issue with be

[PATCH 2/6] drm/i915/uapi: implement object placement extension

2022-02-24 Thread Pallavi Mishra
From: Matthew Auld Add new extension to support setting an immutable-priority-list of potential placements, at creation time. If we use the normal gem_create or gem_create_ext without the extensions/placements then we still get the old behaviour with only placing the object in system memory. v2

[PATCH 3/6] drm/i915/gem: clear userspace buffers for LMEM

2022-02-24 Thread Pallavi Mishra
From: Matthew Auld All userspace objects must be cleared when allocating the backing store, before they are potentially visible to userspace. For now use simple CPU based clearing to do this for device local-memory objects, note that in the near future this will instead use the blitter engine.

[PATCH 4/6] drm/i915/gem: hide new uAPI behind CONFIG_BROKEN

2022-02-24 Thread Pallavi Mishra
From: Matthew Auld Treat it the same as the fake local-memory stuff, where it is disabled for normal kernels, in case some random UMD is tempted to use this. Once we have all the other bits and pieces in place, like the TTM conversion, we can turn this on for real. Signed-off-by: Matthew Auld C