drm: fix ordering of driver unload vs agp unload.
For KMS drivers, we really need to cleanup the driver before disabling the AGP subsystem. Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
@@ -314,14 +314,14 @@ static void drm_cleanup(struct drm_device * dev)
|
|||||||
DRM_DEBUG("mtrr_del=%d\n", retval);
|
DRM_DEBUG("mtrr_del=%d\n", retval);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (dev->driver->unload)
|
||||||
|
dev->driver->unload(dev);
|
||||||
|
|
||||||
if (drm_core_has_AGP(dev) && dev->agp) {
|
if (drm_core_has_AGP(dev) && dev->agp) {
|
||||||
drm_free(dev->agp, sizeof(*dev->agp), DRM_MEM_AGPLISTS);
|
drm_free(dev->agp, sizeof(*dev->agp), DRM_MEM_AGPLISTS);
|
||||||
dev->agp = NULL;
|
dev->agp = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dev->driver->unload)
|
|
||||||
dev->driver->unload(dev);
|
|
||||||
|
|
||||||
drm_ht_remove(&dev->map_hash);
|
drm_ht_remove(&dev->map_hash);
|
||||||
drm_ctxbitmap_cleanup(dev);
|
drm_ctxbitmap_cleanup(dev);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user