mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 05:18:08 +02:00
winsys/radeon: disable use of the buffer busy-for-write flag
This commit is contained in:
parent
db726b048e
commit
1554e69e00
1 changed files with 12 additions and 0 deletions
|
|
@ -192,6 +192,17 @@ static void *radeon_bo_map_internal(struct pb_buffer *_buf,
|
|||
if (radeon_bo_is_referenced_by_cs_for_write(cs, bo)) {
|
||||
cs->flush_cs(cs->flush_data, 0);
|
||||
radeon_bo_wait((struct pb_buffer*)bo);
|
||||
} else {
|
||||
/* XXX We could check whether the buffer is busy for write here. */
|
||||
radeon_bo_wait((struct pb_buffer*)bo);
|
||||
}
|
||||
#if 0
|
||||
/* XXX This per-winsys busy-for-write tracking sucks.
|
||||
* What if some other process wrote something, e.g. using
|
||||
* DRI2CopyRegion? We wouldn't get the busy_for_write flag
|
||||
* set, skipping bo_wait.
|
||||
* We need to move the is-busy-for-write query into the kernel.
|
||||
*/
|
||||
} else if (bo->busy_for_write) {
|
||||
/* Update the busy_for_write field (done by radeon_bo_is_busy)
|
||||
* and wait if needed. */
|
||||
|
|
@ -199,6 +210,7 @@ static void *radeon_bo_map_internal(struct pb_buffer *_buf,
|
|||
radeon_bo_wait((struct pb_buffer*)bo);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
} else {
|
||||
/* Mapping for write. */
|
||||
if (radeon_bo_is_referenced_by_cs(cs, bo)) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue