diff options
author | Kenneth Graunke <[email protected]> | 2018-01-21 00:36:54 -0800 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2019-02-21 10:26:05 -0800 |
commit | f31ae762161af10bde1e896dbb37e9f48a0c7f01 (patch) | |
tree | 4c0e3174c26b91787cf707c600d77a01a27349d9 /src/gallium/drivers | |
parent | 7d90cc8da47862a5899b0d77dbad6b00982c3253 (diff) |
iris: flag SBA updates when instruction BO changes
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/iris/iris_program_cache.c | 2 | ||||
-rw-r--r-- | src/gallium/drivers/iris/iris_state.c | 8 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/gallium/drivers/iris/iris_program_cache.c b/src/gallium/drivers/iris/iris_program_cache.c index 2cbd635684d..8287b7eda15 100644 --- a/src/gallium/drivers/iris/iris_program_cache.c +++ b/src/gallium/drivers/iris/iris_program_cache.c @@ -160,6 +160,8 @@ recreate_cache_bo(struct iris_context *ice, uint32_t size) iris_bo_unreference(old_bo); iris_bo_unmap(old_bo); } + + ice->state.dirty |= IRIS_DIRTY_STATE_BASE_ADDRESS; } const void * diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c index a24ffab51a3..1dafc91ee7a 100644 --- a/src/gallium/drivers/iris/iris_state.c +++ b/src/gallium/drivers/iris/iris_state.c @@ -1271,8 +1271,12 @@ iris_setup_state_base_address(struct iris_context *ice, struct iris_batch *batch, struct iris_bo *instruction_bo) { - if (ice->state.dirty & IRIS_DIRTY_STATE_BASE_ADDRESS) - ice->state.dirty &= ~IRIS_DIRTY_STATE_BASE_ADDRESS; + if (!(ice->state.dirty & IRIS_DIRTY_STATE_BASE_ADDRESS)) + return; + + //iris_batchbuffer_flush(...) + + ice->state.dirty &= ~IRIS_DIRTY_STATE_BASE_ADDRESS; /* XXX: PIPE_CONTROLs */ |