[PATCH] vgacon: Return the upper half of 512 character fonts
Amit Kucheria
amit.kucheria at canonical.com
Tue Apr 21 19:39:49 UTC 2009
On Tue, Apr 21, 2009 at 07:47:48PM +0200, Stefan Bader wrote:
> Bug: #355057
>
> Uwe Geuder noted that he gets random bitmaps on a text console if he tried
> to type extended characters (like the e acute). For him everything above
> unicode 0xa0 was corrupted.
>
> After some digging there seems to be a little culprit in vgacon since the
> beginning of ages (well git). The function vgacon_font_get will store the
> number of characters correctly in font->charcount but then calls to
> vgacon_do_font_op(..., 0, 0). Which means only the lower 256 characters are
> actually stored to the fontdata. The rest is left untouched. So the next time
> that saved data is used, the garbled font appears. This happens on every
> switch between text consoles.
>
> Signed-off-by: Stefan Bader <stefan.bader at canonical.com>
> Tested-by: Uwe Geuder <ubuntuLp-ugeuder at sneakemail.com>
> ---
> drivers/video/console/vgacon.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/video/console/vgacon.c b/drivers/video/console/vgacon.c
> index d012edd..38e86b8 100644
> --- a/drivers/video/console/vgacon.c
> +++ b/drivers/video/console/vgacon.c
> @@ -1282,7 +1282,7 @@ static int vgacon_font_get(struct vc_data *c, struct console_font *font)
> font->charcount = vga_512_chars ? 512 : 256;
> if (!font->data)
> return 0;
> - return vgacon_do_font_op(&state, font->data, 0, 0);
> + return vgacon_do_font_op(&state, font->data, 0, vga_512_chars);
> }
>
> #else
Who is the author of this patch?
Is this a cherry-pick from upstream? Or will it be pushed upstream?
--
----------------------------------------------------------------------
Amit Kucheria, Kernel Engineer || amit at canonical.com
----------------------------------------------------------------------
More information about the kernel-team
mailing list