Bladeren bron

drm: ioremap return value checks

Signed-off-by: Scott Thompson <postfail <at> hushmail.com>
Signed-off-by: Dave Airlie <airlied@linux.ie>
Scott Thompson 18 jaren geleden
bovenliggende
commit
0769d39c99
1 gewijzigde bestanden met toevoegingen van 7 en 1 verwijderingen
  1. 7 1
      drivers/char/drm/drm_bufs.c

+ 7 - 1
drivers/char/drm/drm_bufs.c

@@ -177,8 +177,14 @@ static int drm_addmap_core(struct drm_device * dev, unsigned int offset,
 						     MTRR_TYPE_WRCOMB, 1);
 			}
 		}
-		if (map->type == _DRM_REGISTERS)
+		if (map->type == _DRM_REGISTERS) {
 			map->handle = ioremap(map->offset, map->size);
+			if (!map->handle) {
+				drm_free(map, sizeof(*map), DRM_MEM_MAPS);
+				return -ENOMEM;
+			}
+		}
+				
 		break;
 	case _DRM_SHM:
 		list = drm_find_matching_map(dev, map);