int i915_dma_cleanup(drm_device_t * dev) 
static int i915_dma_cleanup(drm_device_t * dev) 
int i915_dma_cleanup(drm_device_t * dev){	/* Make sure interrupts are disabled here because the uninstall ioctl	 * may not have been called from userspace and after dev_private	 * is freed, it's too late.	 */	if (dev->irq)		drm_irq_uninstall (dev);	if (dev->dev_private) {		drm_i915_private_t *dev_priv =		    (drm_i915_private_t *) dev->dev_private;		if (dev_priv->ring.virtual_start) {			drm_core_ioremapfree( &dev_priv->ring.map, dev);		}		if (dev_priv->hw_status_page) {			drm_pci_free(dev, PAGE_SIZE, dev_priv->hw_status_page,				     dev_priv->dma_status_page);			/* Need to rewrite hardware status page */			I915_WRITE(0x02080, 0x1ffff000);		}		drm_free (dev->dev_private, sizeof(drm_i915_private_t),			   DRM_MEM_DRIVER);		dev->dev_private = NULL;	}	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/c94f70298529d99ac6e1ee7709f61eab00adeb39/i915_dma.c/buggy/drivers/char/drm/i915_dma.c