i965: Use brw_bo_wait() for brw_bo_wait_rendering()
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 7 Jul 2017 12:12:54 +0000 (13:12 +0100)
committerKenneth Graunke <kenneth@whitecape.org>
Mon, 10 Jul 2017 18:18:08 +0000 (11:18 -0700)
commit833108ac14ade91f54cc6e1e157ecc19b62da404
treea2260f529f57504215bce601afaa9266d55bb073
parent3b28eaabf603657c388caa72bc92b1b660d00b2a
i965: Use brw_bo_wait() for brw_bo_wait_rendering()

Currently, we use set_domain() to cause a stall on rendering. But the
set-domain ioctl has the side-effect of changing the kernel's cache
domain underneath the struct_mutex, which may perturb state if there was
no rendering to wait upon and in general is much heavier than the
lockless wait-ioctl. Historically libdrm used set-domain as we did not
have an explicit wait-ioctl (and the patches to teach it to use wait if
available were lost in the mists). Since mesa already depends upon a
kernel support the wait-ioctl, we do not need to supply a fallback.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/brw_bufmgr.c
src/mesa/drivers/dri/i965/brw_bufmgr.h
src/mesa/drivers/dri/i965/brw_context.c
src/mesa/drivers/dri/i965/brw_performance_query.c
src/mesa/drivers/dri/i965/intel_batchbuffer.c