diff options
Diffstat (limited to 'linux-core')
| -rw-r--r-- | linux-core/drm_bufs.c | 2 | ||||
| -rw-r--r-- | linux-core/drm_drv.c | 5 | 
2 files changed, 2 insertions, 5 deletions
diff --git a/linux-core/drm_bufs.c b/linux-core/drm_bufs.c index bfd3dd3d..967e9a2d 100644 --- a/linux-core/drm_bufs.c +++ b/linux-core/drm_bufs.c @@ -413,6 +413,8 @@ int drm_rmmap_locked(struct drm_device *dev, drm_local_map_t *map)  	case _DRM_SHM:  		vfree(map->handle);  		dev->sigdata.lock = dev->lock.hw_lock = NULL;   /* SHM removed */ +		dev->lock.file_priv = NULL; +		wake_up_interruptible(&dev->lock.lock_queue);  		break;  	case _DRM_AGP:  	case _DRM_SCATTER_GATHER: diff --git a/linux-core/drm_drv.c b/linux-core/drm_drv.c index 6a3e7041..a88ae8b5 100644 --- a/linux-core/drm_drv.c +++ b/linux-core/drm_drv.c @@ -276,11 +276,6 @@ int drm_lastclose(struct drm_device * dev)  	if (drm_core_check_feature(dev, DRIVER_HAVE_DMA))  		drm_dma_takedown(dev); -	if (dev->lock.hw_lock) { -		dev->sigdata.lock = dev->lock.hw_lock = NULL;	/* SHM removed */ -		dev->lock.file_priv = NULL; -		wake_up_interruptible(&dev->lock.lock_queue); -	}  	dev->dev_mapping = NULL;  	mutex_unlock(&dev->struct_mutex);  | 
