From 36050cc958596ca81d667d8a51e124e9ea9eb866 Mon Sep 17 00:00:00 2001 From: Jon Smirl Date: Sun, 12 Sep 2004 03:23:50 +0000 Subject: Fix DRM to compile cleanly with recent kernel changes in PCI IO and DRM_COPY_FROM_USER. PCI IO changes in 2.6.9-rc1 bk currently. --- shared-core/via_dma.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'shared-core/via_dma.c') diff --git a/shared-core/via_dma.c b/shared-core/via_dma.c index c11652c0..4afc5215 100644 --- a/shared-core/via_dma.c +++ b/shared-core/via_dma.c @@ -275,11 +275,13 @@ static int via_dispatch_pci_cmdbuffer(drm_device_t *dev, } else if ( cmd->size > VIA_PREALLOCATED_PCI_SIZE ) { if (NULL == (hugebuf = (char *) kmalloc( cmd-> size, GFP_KERNEL ))) return DRM_ERR( ENOMEM ); - DRM_COPY_FROM_USER( hugebuf, cmd->buf, cmd->size ); + if (DRM_COPY_FROM_USER( hugebuf, cmd->buf, cmd->size )) + return DRM_ERR(EFAULT); ret = via_parse_pci_cmdbuffer( dev, hugebuf, cmd->size ); kfree( hugebuf ); } else { - DRM_COPY_FROM_USER( dev_priv->pci_buf, cmd->buf, cmd->size ); + if (DRM_COPY_FROM_USER( dev_priv->pci_buf, cmd->buf, cmd->size )) + return DRM_ERR(EFAULT); ret = via_parse_pci_cmdbuffer( dev, dev_priv->pci_buf, cmd->size ); } return ret; -- cgit v1.2.3