diff options
author | Chris Wilson <[email protected]> | 2018-09-07 14:32:05 +0100 |
---|---|---|
committer | Chris Wilson <[email protected]> | 2018-09-10 09:14:46 +0100 |
commit | 44e3e6a9b403f9325f49684b9baed1854da30cec (patch) | |
tree | ab39b23729a3ae99ebb5cdc9ec7cd65c741713e7 /src | |
parent | 2fece204c02e437811732c223cd158f82c4dd916 (diff) |
i965: Bump aperture tracking to u64
As a prelude to handling large address spaces, first allow ourselves the
luxury of handling the full 4G.
Reported-by: Andrey Simiklit <[email protected]>
Cc: Kenneth Graunke <[email protected]>
Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_context.h | 2 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/intel_batchbuffer.c | 9 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/intel_batchbuffer.h | 8 |
3 files changed, 8 insertions, 11 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index bf2cddebdc6..7fd15669eb9 100644 --- a/src/mesa/drivers/dri/i965/brw_context.h +++ b/src/mesa/drivers/dri/i965/brw_context.h @@ -514,7 +514,7 @@ struct intel_batchbuffer { int exec_array_size; /** The amount of aperture space (in bytes) used by all exec_bos */ - int aperture_space; + uint64_t aperture_space; struct { uint32_t *map_next; diff --git a/src/mesa/drivers/dri/i965/intel_batchbuffer.c b/src/mesa/drivers/dri/i965/intel_batchbuffer.c index 65d2c64e319..4363b146150 100644 --- a/src/mesa/drivers/dri/i965/intel_batchbuffer.c +++ b/src/mesa/drivers/dri/i965/intel_batchbuffer.c @@ -870,7 +870,7 @@ _intel_batchbuffer_flush_fence(struct brw_context *brw, bytes_for_commands, 100.0f * bytes_for_commands / BATCH_SZ, bytes_for_state, 100.0f * bytes_for_state / STATE_SZ, brw->batch.exec_count, - (float) brw->batch.aperture_space / (1024 * 1024), + (float) (brw->batch.aperture_space / (1024 * 1024)), brw->batch.batch_relocs.reloc_count, brw->batch.state_relocs.reloc_count); @@ -891,13 +891,6 @@ _intel_batchbuffer_flush_fence(struct brw_context *brw, } bool -brw_batch_has_aperture_space(struct brw_context *brw, unsigned extra_space) -{ - return brw->batch.aperture_space + extra_space <= - brw->screen->aperture_threshold; -} - -bool brw_batch_references(struct intel_batchbuffer *batch, struct brw_bo *bo) { unsigned index = READ_ONCE(bo->index); diff --git a/src/mesa/drivers/dri/i965/intel_batchbuffer.h b/src/mesa/drivers/dri/i965/intel_batchbuffer.h index d10948f1916..0632142cd31 100644 --- a/src/mesa/drivers/dri/i965/intel_batchbuffer.h +++ b/src/mesa/drivers/dri/i965/intel_batchbuffer.h @@ -44,8 +44,12 @@ int _intel_batchbuffer_flush_fence(struct brw_context *brw, void intel_batchbuffer_data(struct brw_context *brw, const void *data, GLuint bytes); -bool brw_batch_has_aperture_space(struct brw_context *brw, - unsigned extra_space_in_bytes); +static inline bool +brw_batch_has_aperture_space(struct brw_context *brw, uint64_t extra_space) +{ + return brw->batch.aperture_space + extra_space <= + brw->screen->aperture_threshold; +} bool brw_batch_references(struct intel_batchbuffer *batch, struct brw_bo *bo); |