diff options
Diffstat (limited to 'shared-core')
| -rw-r--r-- | shared-core/mga_dma.c | 9 | ||||
| -rw-r--r-- | shared-core/r128_cce.c | 9 | ||||
| -rw-r--r-- | shared-core/radeon_cp.c | 9 | 
3 files changed, 18 insertions, 9 deletions
diff --git a/shared-core/mga_dma.c b/shared-core/mga_dma.c index 5e95c9f9..96fd97ff 100644 --- a/shared-core/mga_dma.c +++ b/shared-core/mga_dma.c @@ -642,9 +642,12 @@ int mga_do_cleanup_dma( drm_device_t *dev )  	if ( dev->dev_private ) {  		drm_mga_private_t *dev_priv = dev->dev_private; -		DRM_IOREMAPFREE( dev_priv->warp ); -		DRM_IOREMAPFREE( dev_priv->primary ); -		DRM_IOREMAPFREE( dev_priv->buffers ); +		if ( dev_priv->warp != NULL ) +			DRM_IOREMAPFREE( dev_priv->warp ); +		if ( dev_priv->primary != NULL ) +			DRM_IOREMAPFREE( dev_priv->primary ); +		if ( dev_priv->buffers != NULL ) +			DRM_IOREMAPFREE( dev_priv->buffers );  		if ( dev_priv->head != NULL ) {  			mga_freelist_cleanup( dev ); diff --git a/shared-core/r128_cce.c b/shared-core/r128_cce.c index 7f0f4325..ad03f4f9 100644 --- a/shared-core/r128_cce.c +++ b/shared-core/r128_cce.c @@ -619,9 +619,12 @@ int r128_do_cleanup_cce( drm_device_t *dev )  #if __REALLY_HAVE_SG  		if ( !dev_priv->is_pci ) {  #endif -			DRM_IOREMAPFREE( dev_priv->cce_ring ); -			DRM_IOREMAPFREE( dev_priv->ring_rptr ); -			DRM_IOREMAPFREE( dev_priv->buffers ); +			if ( dev_priv->cce_ring != NULL ) +				DRM_IOREMAPFREE( dev_priv->cce_ring ); +			if ( dev_priv->ring_rptr != NULL ) +				DRM_IOREMAPFREE( dev_priv->ring_rptr ); +			if ( dev_priv->buffers != NULL ) +				DRM_IOREMAPFREE( dev_priv->buffers );  #if __REALLY_HAVE_SG  		} else {  			if (!DRM(ati_pcigart_cleanup)( dev, diff --git a/shared-core/radeon_cp.c b/shared-core/radeon_cp.c index 3ec8dfd1..ee4beb1a 100644 --- a/shared-core/radeon_cp.c +++ b/shared-core/radeon_cp.c @@ -1279,9 +1279,12 @@ int radeon_do_cleanup_cp( drm_device_t *dev )  		drm_radeon_private_t *dev_priv = dev->dev_private;  		if ( !dev_priv->is_pci ) { -			DRM_IOREMAPFREE( dev_priv->cp_ring ); -			DRM_IOREMAPFREE( dev_priv->ring_rptr ); -			DRM_IOREMAPFREE( dev_priv->buffers ); +			if ( dev_priv->cp_ring != NULL ) +				DRM_IOREMAPFREE( dev_priv->cp_ring ); +			if ( dev_priv->ring_rptr != NULL ) +				DRM_IOREMAPFREE( dev_priv->ring_rptr ); +			if ( dev_priv->buffers != NULL ) +				DRM_IOREMAPFREE( dev_priv->buffers );  		} else {  #if __REALLY_HAVE_SG  			if (!DRM(ati_pcigart_cleanup)( dev,  | 
