OSDN Git Service

fbcon: use kvmalloc() for scrollback buffer
authorKonstantin Khorenko <khorenko@virtuozzo.com>
Fri, 8 Feb 2019 18:24:45 +0000 (19:24 +0100)
committerBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Fri, 8 Feb 2019 18:24:45 +0000 (19:24 +0100)
Scrollback frame buffer is rather big - 32K,
so it requires 3rd order page, so let's use kvmalloc() instead of
ordinary kmalloc() for it.

Signed-off-by: Konstantin Khorenko <khorenko@virtuozzo.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
drivers/video/fbdev/core/fbcon.c

index bfa1360..fd430e6 100644 (file)
@@ -999,7 +999,7 @@ static const char *fbcon_startup(void)
                        if (!softback_buf) {
                                softback_buf =
                                    (unsigned long)
-                                   kmalloc(fbcon_softback_size,
+                                   kvmalloc(fbcon_softback_size,
                                            GFP_KERNEL);
                                if (!softback_buf) {
                                        fbcon_softback_size = 0;
@@ -1008,7 +1008,7 @@ static const char *fbcon_startup(void)
                        }
                } else {
                        if (softback_buf) {
-                               kfree((void *) softback_buf);
+                               kvfree((void *) softback_buf);
                                softback_buf = 0;
                                softback_top = 0;
                        }
@@ -3672,7 +3672,7 @@ static void fbcon_exit(void)
        }
 #endif
 
-       kfree((void *)softback_buf);
+       kvfree((void *)softback_buf);
        softback_buf = 0UL;
 
        for_each_registered_fb(i) {