diff options
author | Dave Airlie <airlied@linux.ie> | 2009-09-26 09:03:39 +1000 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2009-09-26 09:03:39 +1000 |
commit | c5e617e2f84225a28823a3e19951273b9f59eb27 (patch) | |
tree | c35741880d286b2bf29c0409ccba6bd784dc4efa | |
parent | 2f67c6e0220e5311bb14895d32852250b2d9652b (diff) | |
download | op-kernel-dev-c5e617e2f84225a28823a3e19951273b9f59eb27.zip op-kernel-dev-c5e617e2f84225a28823a3e19951273b9f59eb27.tar.gz |
drm/radeon/kms: fix for the extra pages copying.
Thanks to Michel for pointing this out to me, this is
why I need to get more sleep, over complicate this a bit.
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_cs.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_cs.c b/drivers/gpu/drm/radeon/radeon_cs.c index dea8acf..5ab2cf9 100644 --- a/drivers/gpu/drm/radeon/radeon_cs.c +++ b/drivers/gpu/drm/radeon/radeon_cs.c @@ -303,13 +303,11 @@ int radeon_cs_finish_pages(struct radeon_cs_parser *p) int radeon_cs_update_pages(struct radeon_cs_parser *p, int pg_idx) { int new_page; - int num_extra_pages; struct radeon_cs_chunk *ibc = &p->chunks[p->chunk_ib_idx]; int i; int size = PAGE_SIZE; - num_extra_pages = (pg_idx - ibc->last_copied_page - 1); - for (i = ibc->last_copied_page + 1; i < ibc->last_copied_page + num_extra_pages; i++) { + for (i = ibc->last_copied_page + 1; i < pg_idx; i++) { if (DRM_COPY_FROM_USER(p->ib->ptr + (i * (PAGE_SIZE/4)), ibc->user_ptr + (i * PAGE_SIZE), PAGE_SIZE)) { |