From: Roel K. <roe...@gm...> - 2009-08-29 20:15:20
|
tmp allocation may fail, prevent a dereference. Signed-off-by: Roel Kluin <roe...@gm...> --- diff --git a/drivers/gpu/drm/drm_proc.c b/drivers/gpu/drm/drm_proc.c index bbd4b3d..dc967af 100644 --- a/drivers/gpu/drm/drm_proc.c +++ b/drivers/gpu/drm/drm_proc.c @@ -106,6 +106,10 @@ int drm_proc_create_files(struct drm_info_list *files, int count, continue; tmp = kmalloc(sizeof(struct drm_info_node), GFP_KERNEL); + if (tmp == NULL) { + ret = -1; + goto fail; + } ent = create_proc_entry(files[i].name, S_IFREG | S_IRUGO, root); if (!ent) { DRM_ERROR("Cannot create /proc/dri/%s/%s\n", |
From: Dave A. <ai...@li...> - 2009-08-30 23:31:22
|
> tmp allocation may fail, prevent a dereference. Thanks, pushed to drm-next. Dave. > > Signed-off-by: Roel Kluin <roe...@gm...> > --- > diff --git a/drivers/gpu/drm/drm_proc.c b/drivers/gpu/drm/drm_proc.c > index bbd4b3d..dc967af 100644 > --- a/drivers/gpu/drm/drm_proc.c > +++ b/drivers/gpu/drm/drm_proc.c > @@ -106,6 +106,10 @@ int drm_proc_create_files(struct drm_info_list *files, int count, > continue; > > tmp = kmalloc(sizeof(struct drm_info_node), GFP_KERNEL); > + if (tmp == NULL) { > + ret = -1; > + goto fail; > + } > ent = create_proc_entry(files[i].name, S_IFREG | S_IRUGO, root); > if (!ent) { > DRM_ERROR("Cannot create /proc/dri/%s/%s\n", > > |