offb: use framebuffer_alloc() to allocate fb_info struct
authorKrzysztof Helt <krzysztof.h1@wp.pl>
Tue, 16 Jun 2009 22:34:23 +0000 (15:34 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 17 Jun 2009 02:47:58 +0000 (19:47 -0700)
Use the framebuffer_alloc() function to allocate the fb_info structure so
the structure is correctly initialized after allocation.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/video/offb.c

index e1d9eeb..bb915a4 100644 (file)
@@ -378,7 +378,6 @@ static void __init offb_init_fb(const char *name, const char *full_name,
        struct fb_fix_screeninfo *fix;
        struct fb_var_screeninfo *var;
        struct fb_info *info;
-       int size;
 
        if (!request_mem_region(res_start, res_size, "offb"))
                return;
@@ -393,15 +392,12 @@ static void __init offb_init_fb(const char *name, const char *full_name,
                return;
        }
 
-       size = sizeof(struct fb_info) + sizeof(u32) * 16;
-
-       info = kmalloc(size, GFP_ATOMIC);
+       info = framebuffer_alloc(sizeof(u32) * 16, NULL);
        
        if (info == 0) {
                release_mem_region(res_start, res_size);
                return;
        }
-       memset(info, 0, size);
 
        fix = &info->fix;
        var = &info->var;