summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2008-01-15 10:12:38 -0800
committerEric Anholt <eric@anholt.net>2008-01-15 10:12:38 -0800
commit4652e351a2e617838e4a75ba7857b644211f03d5 (patch)
treea2a2366178cedad1ea7b419b2e3a0bac65199a57
parentbb73cf9ec093d734cbed956d843ef6c2982141ef (diff)
[965] Increase max relocation count, fixing assertions by blender.
-rw-r--r--src/mesa/drivers/dri/intel/intel_bufmgr_ttm.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/intel/intel_bufmgr_ttm.c b/src/mesa/drivers/dri/intel/intel_bufmgr_ttm.c
index 0c61b440d3..ddf59bf66b 100644
--- a/src/mesa/drivers/dri/intel/intel_bufmgr_ttm.c
+++ b/src/mesa/drivers/dri/intel/intel_bufmgr_ttm.c
@@ -925,8 +925,13 @@ intel_bufmgr_ttm_init(int fd, unsigned int fence_type,
bufmgr_ttm->cached_reloc_buf = NULL;
bufmgr_ttm->cached_reloc_buf_data = NULL;
- /* lets go with one relocation per every four dwords - purely heuristic */
- bufmgr_ttm->max_relocs = batch_size / sizeof(uint32_t) / 4;
+ /* Let's go with one relocation per every 2 dwords (but round down a bit
+ * since a power of two will mean an extra page allocation for the reloc
+ * buffer).
+ *
+ * Every 4 was too few for the blender benchmark.
+ */
+ bufmgr_ttm->max_relocs = batch_size / sizeof(uint32_t) / 2 - 2;
intel_init_validate_list(&bufmgr_ttm->list);