]> git.baikalelectronics.ru Git - kernel.git/commit
agp/intel: Use a write-combining map for updating PTEs
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 14 Sep 2012 10:57:47 +0000 (11:57 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 20 Sep 2012 12:23:07 +0000 (14:23 +0200)
commitd2e3b4ad5c0a0ab7a934c8fcb907461b2b572a2b
tree75e463e8ffee14669477a56ce366280fc76d16e4
parent993518ca839b3933427627fb9ce00fb6e5518873
agp/intel: Use a write-combining map for updating PTEs

Rewriting the PTE entries using an WC mapping is roughly an order of
magnitude faster than through the uncached mapping. This makes an
observable difference on workloads that cycle through large numbers of
buffers, for example Chromium using ShmPixmaps where virtually all the
CPU time is currently spent rebinding the userptr.

v2: Limit the WC mapping to older generations as we have observed that
the TLB invalidation on SandyBridge+ is unreliable with WC updates.
See i-g-t/tests/gem_gtt_cpu_tlb

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/char/agp/intel-gtt.c