diff options
author | Simon Farnsworth <[email protected]> | 2012-02-14 12:06:20 +0000 |
---|---|---|
committer | Alex Deucher <[email protected]> | 2012-02-14 09:56:23 -0500 |
commit | 8cd03b933cf868ff867e2db4a0937005a02fd0e4 (patch) | |
tree | 8051cbd2a351e56b423127c54c47a319c7aa590b /src/gallium/drivers/r600/r600_pipe.h | |
parent | 014198ec8860d8a0abfd6aa0ddd8db9d26febdbb (diff) |
r600g: Use a fake reloc to sleep for fences
r300g is able to sleep until a fence completes rather than busywait because
it creates a special buffer object and relocation that stays busy until the
CS containing the fence is finished.
Copy the idea into r600g, and use it to sleep if the user asked for an
infinite wait, falling back to busywaiting if the user provided a timeout.
Note: this is a candidate for the stable branches.
Signed-off-by: Simon Farnsworth <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/r600_pipe.h')
-rw-r--r-- | src/gallium/drivers/r600/r600_pipe.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_pipe.h b/src/gallium/drivers/r600/r600_pipe.h index a16bf5d410b..bfa2fb1ebe6 100644 --- a/src/gallium/drivers/r600/r600_pipe.h +++ b/src/gallium/drivers/r600/r600_pipe.h @@ -204,6 +204,7 @@ struct r600_textures_info { struct r600_fence { struct pipe_reference reference; unsigned index; /* in the shared bo */ + struct r600_resource *sleep_bo; struct list_head head; }; |