summaryrefslogtreecommitdiffstats
path: root/ipc
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2014-07-21 13:21:23 +0100
committerDaniel Vetter <daniel.vetter@ffwll.ch>2014-07-24 11:00:00 +0200
commitec8b0dd51c50e33c3831bbf57ee4ca3e9f35460d (patch)
tree16aa5330caf27ba5b2d54de154c6aa1d60f506da /ipc
parent03dae59c72ffffd8ef6e005f48ba356c863e0587 (diff)
downloadop-kernel-dev-ec8b0dd51c50e33c3831bbf57ee4ca3e9f35460d.zip
op-kernel-dev-ec8b0dd51c50e33c3831bbf57ee4ca3e9f35460d.tar.gz
drm/i915: Allow overlapping userptr objects
Whilst I strongly advise against doing so for the implicit coherency issues between the multiple buffer objects accessing the same backing store, it nevertheless is a valid use case, akin to mmaping the same file multiple times. The reason why we forbade it earlier was that our use of the interval tree for fast invalidation upon vma changes excluded overlapping objects. So in the case where the user wishes to create such pairs of overlapping objects, we degrade the range invalidation to walkin the linear list of objects associated with the mm. A situation where overlapping objects could arise is the lax implementation of MIT-SHM Pixmaps in the xserver. A second situation is where the user wishes to have different access modes to a region of memory (e.g. access through a read-only userptr buffer and through a normal userptr buffer). v2: Compile for mmu-notifiers after tweaking v3: Rename is_linear/has_linear Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: "Li, Victor Y" <victor.y.li@intel.com> Cc: "Kelley, Sean V" <sean.v.kelley@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Cc: "Gong, Zhipeng" <zhipeng.gong@intel.com> Cc: Akash Goel <akash.goel@intel.com> Cc: "Volkin, Bradley D" <bradley.d.volkin@intel.com> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'ipc')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud