From: Marek Olšák marek.olsak@amd.com
---
I'm not really interested in studying the R200 driver to fix it. This has to suffice.
radeon/radeon_cs_gem.c | 9 +++++++++ 1 file changed, 9 insertions(+)
diff --git a/radeon/radeon_cs_gem.c b/radeon/radeon_cs_gem.c index b87c6b1..bcfa05b 100644 --- a/radeon/radeon_cs_gem.c +++ b/radeon/radeon_cs_gem.c @@ -178,6 +178,15 @@ static int cs_gem_write_reloc(struct radeon_cs_int *cs, uint32_t idx; unsigned i;
+ if (!boi->space_accounted) { + struct radeon_cs *rcs = (struct radeon_cs*)cs; + int r; + + radeon_cs_space_add_persistent_bo(rcs, bo, read_domain, write_domain); + r = radeon_cs_space_check(rcs); + if (r) + return r; + } assert(boi->space_accounted);
/* check domains */
On Fri, Aug 1, 2014 at 9:43 AM, Marek Olšák maraeo@gmail.com wrote:
From: Marek Olšák marek.olsak@amd.com
I'm not really interested in studying the R200 driver to fix it. This has to suffice.
Reviewed-by: Alex Deucher alexander.deucher@amd.com
radeon/radeon_cs_gem.c | 9 +++++++++ 1 file changed, 9 insertions(+)
diff --git a/radeon/radeon_cs_gem.c b/radeon/radeon_cs_gem.c index b87c6b1..bcfa05b 100644 --- a/radeon/radeon_cs_gem.c +++ b/radeon/radeon_cs_gem.c @@ -178,6 +178,15 @@ static int cs_gem_write_reloc(struct radeon_cs_int *cs, uint32_t idx; unsigned i;
if (!boi->space_accounted) {
struct radeon_cs *rcs = (struct radeon_cs*)cs;
int r;
radeon_cs_space_add_persistent_bo(rcs, bo, read_domain, write_domain);
r = radeon_cs_space_check(rcs);
if (r)
return r;
} assert(boi->space_accounted);
/* check domains */
-- 1.9.1
dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel
Actually, please disregard this patch. I have found and fixed the real problem in mesa/r200.
Marek
On Mon, Aug 4, 2014 at 5:58 PM, Alex Deucher alexdeucher@gmail.com wrote:
On Fri, Aug 1, 2014 at 9:43 AM, Marek Olšák maraeo@gmail.com wrote:
From: Marek Olšák marek.olsak@amd.com
I'm not really interested in studying the R200 driver to fix it. This has to suffice.
Reviewed-by: Alex Deucher alexander.deucher@amd.com
radeon/radeon_cs_gem.c | 9 +++++++++ 1 file changed, 9 insertions(+)
diff --git a/radeon/radeon_cs_gem.c b/radeon/radeon_cs_gem.c index b87c6b1..bcfa05b 100644 --- a/radeon/radeon_cs_gem.c +++ b/radeon/radeon_cs_gem.c @@ -178,6 +178,15 @@ static int cs_gem_write_reloc(struct radeon_cs_int *cs, uint32_t idx; unsigned i;
if (!boi->space_accounted) {
struct radeon_cs *rcs = (struct radeon_cs*)cs;
int r;
radeon_cs_space_add_persistent_bo(rcs, bo, read_domain, write_domain);
r = radeon_cs_space_check(rcs);
if (r)
return r;
} assert(boi->space_accounted);
/* check domains */
-- 1.9.1
dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel
dri-devel@lists.freedesktop.org