From: Michel Dänzer michel.daenzer@amd.com
Only account for the write domain in that case.
Should fix https://bugs.freedesktop.org/show_bug.cgi?id=43893 .
Signed-off-by: Michel Dänzer michel.daenzer@amd.com --- radeon/radeon_cs_space.c | 15 +++++++++------ 1 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/radeon/radeon_cs_space.c b/radeon/radeon_cs_space.c index 208e1bb..be047a7 100644 --- a/radeon/radeon_cs_space.c +++ b/radeon/radeon_cs_space.c @@ -65,13 +65,16 @@ static inline int radeon_cs_setup_bo(struct radeon_cs_space_check *sc, struct ra }
if (bo->space_accounted == 0) { - if (write_domain == RADEON_GEM_DOMAIN_VRAM) - sizes->op_vram_write += bo->size; - else if (write_domain == RADEON_GEM_DOMAIN_GTT) - sizes->op_gart_write += bo->size; - else + if (write_domain) { + if (write_domain == RADEON_GEM_DOMAIN_VRAM) + sizes->op_vram_write += bo->size; + else if (write_domain == RADEON_GEM_DOMAIN_GTT) + sizes->op_gart_write += bo->size; + sc->new_accounted = write_domain; + } else { sizes->op_read += bo->size; - sc->new_accounted = (read_domains << 16) | write_domain; + sc->new_accounted = read_domains << 16; + } } else { uint16_t old_read, old_write;
2012/2/8 Michel Dänzer michel@daenzer.net:
From: Michel Dänzer michel.daenzer@amd.com
Only account for the write domain in that case.
Should fix https://bugs.freedesktop.org/show_bug.cgi?id=43893 .
Signed-off-by: Michel Dänzer michel.daenzer@amd.com
Reviewed-by: Alex Deucher alexander.deucher@amd.com
radeon/radeon_cs_space.c | 15 +++++++++------ 1 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/radeon/radeon_cs_space.c b/radeon/radeon_cs_space.c index 208e1bb..be047a7 100644 --- a/radeon/radeon_cs_space.c +++ b/radeon/radeon_cs_space.c @@ -65,13 +65,16 @@ static inline int radeon_cs_setup_bo(struct radeon_cs_space_check *sc, struct ra }
if (bo->space_accounted == 0) {
- if (write_domain == RADEON_GEM_DOMAIN_VRAM)
- sizes->op_vram_write += bo->size;
- else if (write_domain == RADEON_GEM_DOMAIN_GTT)
- sizes->op_gart_write += bo->size;
- else
- if (write_domain) {
- if (write_domain == RADEON_GEM_DOMAIN_VRAM)
- sizes->op_vram_write += bo->size;
- else if (write_domain == RADEON_GEM_DOMAIN_GTT)
- sizes->op_gart_write += bo->size;
- sc->new_accounted = write_domain;
- } else {
sizes->op_read += bo->size;
- sc->new_accounted = (read_domains << 16) | write_domain;
- sc->new_accounted = read_domains << 16;
- }
} else { uint16_t old_read, old_write;
-- 1.7.9
dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel
dri-devel@lists.freedesktop.org