Skip to content

Commit

Permalink
sstfb: check fb_alloc_cmap return value and handle failure properly
Browse files Browse the repository at this point in the history
Signed-off-by: Andres Salomon <dilinger@debian.org>
Acked-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Andres Salomon authored and Linus Torvalds committed Apr 1, 2009
1 parent 0a5d924 commit c231242
Showing 1 changed file with 7 additions and 3 deletions.
10 changes: 7 additions & 3 deletions drivers/video/sstfb.c
Original file line number Diff line number Diff line change
Expand Up @@ -1421,13 +1421,16 @@ static int __devinit sstfb_probe(struct pci_dev *pdev,
goto fail;
}

fb_alloc_cmap(&info->cmap, 256, 0);
if (fb_alloc_cmap(&info->cmap, 256, 0)) {
printk(KERN_ERR "sstfb: can't alloc cmap memory.\n");
goto fail;
}

/* register fb */
info->device = &pdev->dev;
if (register_framebuffer(info) < 0) {
printk(KERN_ERR "sstfb: can't register framebuffer.\n");
goto fail;
goto fail_register;
}

sstfb_clear_screen(info);
Expand All @@ -1441,8 +1444,9 @@ static int __devinit sstfb_probe(struct pci_dev *pdev,

return 0;

fail:
fail_register:
fb_dealloc_cmap(&info->cmap);
fail:
iounmap(info->screen_base);
fail_fb_remap:
iounmap(par->mmio_vbase);
Expand Down

0 comments on commit c231242

Please sign in to comment.