summaryrefslogtreecommitdiffstats
path: root/drivers/char/drm/via_dmablit.c
diff options
context:
space:
mode:
authorThomas Hellstrom2008-03-17 01:07:20 +0100
committerDave Airlie2008-03-17 01:07:20 +0100
commitf0fb6d7798e7e2d1f37a2c15892910661bdaba55 (patch)
tree41ede9d8c5b267700f8304a5299916c4b253986e /drivers/char/drm/via_dmablit.c
parentdrm: Fix race that can lockup the kernel (diff)
downloadkernel-qcow2-linux-f0fb6d7798e7e2d1f37a2c15892910661bdaba55.tar.gz
kernel-qcow2-linux-f0fb6d7798e7e2d1f37a2c15892910661bdaba55.tar.xz
kernel-qcow2-linux-f0fb6d7798e7e2d1f37a2c15892910661bdaba55.zip
drm/via: attempt again to stabilise the AGP DMA command submission.
It's worth remembering that all new bright ideas on how to make this command reader work properly and according to docs will probably fail :( Bring in some old code. Also allow a larger SG-DMA download stride, and remove unnecessary waits for command regulators pauses. Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/char/drm/via_dmablit.c')
-rw-r--r--drivers/char/drm/via_dmablit.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/char/drm/via_dmablit.c b/drivers/char/drm/via_dmablit.c
index 33c5197b73c4..409e00afdd07 100644
--- a/drivers/char/drm/via_dmablit.c
+++ b/drivers/char/drm/via_dmablit.c
@@ -603,7 +603,7 @@ via_build_sg_info(struct drm_device *dev, drm_via_sg_info_t *vsg, drm_via_dmabli
* (Not a big limitation anyway.)
*/
- if ((xfer->mem_stride - xfer->line_length) >= PAGE_SIZE) {
+ if ((xfer->mem_stride - xfer->line_length) > 2*PAGE_SIZE) {
DRM_ERROR("Too large system memory stride. Stride: %d, "
"Length: %d\n", xfer->mem_stride, xfer->line_length);
return -EINVAL;