• Antonino Daplas's avatar
    [PATCH] fbcon: Another fix for fbcon generic blanking code · 1cb2c359
    Antonino Daplas authored
    If the driver has no fb_blank hook, then the generic method is to clear the
    screen and then disallow writes to the framebuffer.  However, if the
    console is leaving graphics mode (KD_GRAPHICS), it would update the screen
    first, then unblank.  However, since writes to the framebuffers are
    disallowed, the update failes, and upon unblank, the screen is left empty
    except for the flashing cursor.  (This happens, for example when switching
    from X to console).
    
    The fix is to allow writes to the framebuffer even if the console is
    blanked.  To imitate a blank screen, the get_color() function will return
    the attributes of the erase character (black on black) if the console is
    blanked and if the driver has no fb_blank hook.
    
    I think this fixes the rest of the major bugs in the blanking code.  
    Signed-off-by: default avatarAntonino Daplas <adaplas@pol.net>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    1cb2c359
fbcon.c 69.7 KB