Fix for agpgart module detection. If the kernel module has been configured

to use AGP, and the module is not present, fail gracefully instead of
    doing evil things.
main
Gareth Hughes 2000-07-01 01:50:00 +00:00
parent dc2701a9f6
commit 62838b948c
2 changed files with 14 additions and 0 deletions

View File

@ -369,6 +369,13 @@ int r128_init(void)
#ifdef DRM_AGP #ifdef DRM_AGP
dev->agp = drm_agp_init(); dev->agp = drm_agp_init();
if (dev->agp == NULL) {
DRM_ERROR("Cannot initialize agpgart module.\n");
drm_proc_cleanup();
misc_deregister(&r128_misc);
r128_takedown(dev);
return -ENOMEM;
}
#ifdef CONFIG_MTRR #ifdef CONFIG_MTRR
dev->agp->agp_mtrr = mtrr_add(dev->agp->agp_info.aper_base, dev->agp->agp_mtrr = mtrr_add(dev->agp->agp_info.aper_base,

View File

@ -369,6 +369,13 @@ int r128_init(void)
#ifdef DRM_AGP #ifdef DRM_AGP
dev->agp = drm_agp_init(); dev->agp = drm_agp_init();
if (dev->agp == NULL) {
DRM_ERROR("Cannot initialize agpgart module.\n");
drm_proc_cleanup();
misc_deregister(&r128_misc);
r128_takedown(dev);
return -ENOMEM;
}
#ifdef CONFIG_MTRR #ifdef CONFIG_MTRR
dev->agp->agp_mtrr = mtrr_add(dev->agp->agp_info.aper_base, dev->agp->agp_mtrr = mtrr_add(dev->agp->agp_info.aper_base,