On Sat, 09 Jul 2011 21:50:26 +0100, Chris Wilson <ch...@chris-wilson.co.uk> wrote: > > I think would do, find_vma() is not necessary cheap though, and there are a > couple of optimisations that we haven't done for pwrite/pread yet to speed > up the transition to the slow path.
Yeah, find_vma is a rb tree walk over the whole address space. Yikes! And, of course, we'd actually need to walk over the whole mapping in case the application managed to walk from non-GTT space into GTT space. > The current code generates lockdep OOPSes and inconsistently applies > pagefault_disable along some paths, in particular for 32-bit kernels, > but not others. And the abuse is permitted through the OpenGL > specification, I believe. The offending app is just doing > glBufferData(glMapBuffer()), iiuc; Sure, it's permitted, so ideally we'd detect this abuse and fall back to the slow path, but we need a cheap check which takes the slow path, perhaps pessimistically. -- keith.pack...@intel.com
pgp9Ii15oK5Kf.pgp
Description: PGP signature
_______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx