summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2011-08-30 17:36:57 -0700
committerEric Anholt <eric@anholt.net>2011-09-02 12:17:05 -0700
commit7fdbedac14637b5e8990cb639bd4ddae28c46994 (patch)
tree1ca449ed9c5ade2b471eec997d6f7081373605e2
parent0b666106c5f75b581ef1ebeb354c29a00400404f (diff)
intel: Upload batchbuffer contents even if INTEL_NO_HW is set.
It is useful for debugging to dump batchbuffers while not actually executing them.
-rw-r--r--src/mesa/drivers/dri/intel/intel_batchbuffer.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_batchbuffer.c b/src/mesa/drivers/dri/intel/intel_batchbuffer.c
index db4343be10..21dd27ce13 100644
--- a/src/mesa/drivers/dri/intel/intel_batchbuffer.c
+++ b/src/mesa/drivers/dri/intel/intel_batchbuffer.c
@@ -105,6 +105,14 @@ do_flush_locked(struct intel_context *intel)
struct intel_batchbuffer *batch = &intel->batch;
int ret = 0;
+ ret = drm_intel_bo_subdata(batch->bo, 0, 4*batch->used, batch->map);
+ if (ret == 0 && batch->state_batch_offset != batch->bo->size) {
+ ret = drm_intel_bo_subdata(batch->bo,
+ batch->state_batch_offset,
+ batch->bo->size - batch->state_batch_offset,
+ (char *)batch->map + batch->state_batch_offset);
+ }
+
if (!intel->intelScreen->no_hw) {
int ring;
@@ -114,14 +122,6 @@ do_flush_locked(struct intel_context *intel)
ring = I915_EXEC_BLT;
}
- ret = drm_intel_bo_subdata(batch->bo, 0, 4*batch->used, batch->map);
- if (ret == 0 && batch->state_batch_offset != batch->bo->size) {
- ret = drm_intel_bo_subdata(batch->bo,
- batch->state_batch_offset,
- batch->bo->size - batch->state_batch_offset,
- (char *)batch->map + batch->state_batch_offset);
- }
-
if (ret == 0)
ret = drm_intel_bo_mrb_exec(batch->bo, 4*batch->used, NULL, 0, 0, ring);
}