This moves the intel_batchbuffer_flush before the drm_intel_bo_busy call, so it isn't entirely equivalent, but I think that should be fine.
This code is strange anyway; the typical paradigm is to check whether the batch references the buffer, flush it if so, and then check whether it's busy. Signed-off-by: Kenneth Graunke <kenn...@whitecape.org> --- src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c index 5a60637..24985dc 100644 --- a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c +++ b/src/mesa/drivers/dri/i965/intel_mipmap_tree.c @@ -1706,18 +1706,12 @@ intel_miptree_map_raw(struct brw_context *brw, struct intel_mipmap_tree *mt) drm_intel_bo *bo = mt->region->bo; - if (unlikely(INTEL_DEBUG & DEBUG_PERF)) { - if (drm_intel_bo_busy(bo)) { - perf_debug("Mapping a busy miptree, causing a stall on the GPU.\n"); - } - } - intel_batchbuffer_flush(brw); if (mt->region->tiling != I915_TILING_NONE) - drm_intel_gem_bo_map_gtt(bo); + brw_bo_map_gtt(brw, bo, "miptree"); else - drm_intel_bo_map(bo, true); + brw_bo_map(brw, bo, true, "miptree"); return bo->virtual; } -- 1.8.5.2 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev