summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiang, Haihao <haihao.xiang@intel.com>2010-07-05 10:06:03 +0800
committerXiang, Haihao <haihao.xiang@intel.com>2010-07-07 14:54:41 +0800
commit40ff5b2aa3eadf620753b3ae004b30bc55b40e92 (patch)
tree1f6e3d27985f0a77764c9e67ca530b7cac5ac176
parent1bf70ad420508f5032a16b1cc40de3a015ef999b (diff)
downloadlibva-40ff5b2aa3eadf620753b3ae004b30bc55b40e92.tar.gz
i965_drv_video: fix BSD batch buffer size.
Some stress cases need a large BSD batch buffer.
-rw-r--r--i965_drv_video/intel_batchbuffer.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/i965_drv_video/intel_batchbuffer.c b/i965_drv_video/intel_batchbuffer.c
index 02f66d3..abe548e 100644
--- a/i965_drv_video/intel_batchbuffer.c
+++ b/i965_drv_video/intel_batchbuffer.c
@@ -37,6 +37,7 @@ static void
intel_batchbuffer_reset(struct intel_batchbuffer *batch)
{
struct intel_driver_data *intel = batch->intel;
+ int batch_size = batch->flag == I915_EXEC_RENDER ? BATCH_SIZE : (BATCH_SIZE * 8);
assert(batch->flag == I915_EXEC_RENDER ||
batch->flag == I915_EXEC_BSD);
@@ -44,12 +45,13 @@ intel_batchbuffer_reset(struct intel_batchbuffer *batch)
dri_bo_unreference(batch->buffer);
batch->buffer = dri_bo_alloc(intel->bufmgr,
batch->flag == I915_EXEC_RENDER ? "render batch buffer" : "bsd batch buffer",
- BATCH_SIZE, 0x1000);
+ batch_size,
+ 0x1000);
assert(batch->buffer);
dri_bo_map(batch->buffer, 1);
assert(batch->buffer->virtual);
batch->map = batch->buffer->virtual;
- batch->size = BATCH_SIZE;
+ batch->size = batch_size;
batch->ptr = batch->map;
batch->atomic = 0;
}