diff options
| author | Robert Noland <rnoland@FreeBSD.org> | 2009-09-13 11:10:38 +0000 |
|---|---|---|
| committer | Robert Noland <rnoland@FreeBSD.org> | 2009-09-13 11:10:38 +0000 |
| commit | 14928dda5c3cd59ebee4f21daba0ec8cd2f19f77 (patch) | |
| tree | 3aef440ff884d8feb3d445b6db713bb1f7d8d9ef /sys | |
| parent | 199e2065134c1120f269b5e219e8014ad73c6be8 (diff) | |
Notes
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/dev/drm/r600_blit.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/sys/dev/drm/r600_blit.c b/sys/dev/drm/r600_blit.c index 4848579675f3..91690d24ccb1 100644 --- a/sys/dev/drm/r600_blit.c +++ b/sys/dev/drm/r600_blit.c @@ -1734,6 +1734,8 @@ r600_blit_copy(struct drm_device *dev, if (!src_x && !dst_x) { h = (cur_size / max_bytes); + if (h > 8192) + h = 8192; if (h == 0) h = 1; else @@ -1805,8 +1807,8 @@ r600_blit_copy(struct drm_device *dev, vb += 12; dev_priv->blit_vb->used += 12 * 4; - src_gpu_addr += cur_size; - dst_gpu_addr += cur_size; + src_gpu_addr += cur_size * h; + dst_gpu_addr += cur_size * h; size_bytes -= cur_size * h; } } else { @@ -1822,6 +1824,8 @@ r600_blit_copy(struct drm_device *dev, if (!src_x && !dst_x) { h = (cur_size / max_bytes); + if (h > 8192) + h = 8192; if (h == 0) h = 1; else @@ -1894,8 +1898,8 @@ r600_blit_copy(struct drm_device *dev, vb += 12; dev_priv->blit_vb->used += 12 * 4; - src_gpu_addr += cur_size; - dst_gpu_addr += cur_size; + src_gpu_addr += cur_size * h; + dst_gpu_addr += cur_size * h; size_bytes -= cur_size * h; } } |
