ioremap must be balanced by an iounmap and failing to do so can result in a
memory leak.
Signed-off-by: Amol Lad <amol@verismonetworks.com>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
 
                do_install_cmap(0, fb_info);
 
-               if (register_framebuffer(fb_info) < 0)
+               if (register_framebuffer(fb_info) < 0) {
+                       iounmap(zinfo->base);
                        return -EINVAL;
+               }
 
                printk(KERN_INFO "fb%d: %s frame buffer device, using %ldK of "
                       "video memory\n", fb_info->node,