Re: [PATCH] vt: incomplete initialization of vc_tab_stop

From: Alan Cox
Date: Wed Oct 22 2008 - 06:27:16 EST


On Sat, 18 Oct 2008 13:49:31 +0200
Wolfgang Kroworsch <wolfgang@xxxxxxxxxxxx> wrote:

> Problem 1 (see patch below):
> vc_tab_stop is declared as an array of 8 unsigned ints in struct
> vc_data in include/linux/console_struct.h .
> In drivers/char/vt.c only 5 of these 8 unsigned ints get initialized
> leading to unintended tabulator placement on displays with more than
> 160 columns text.

Seems sensible enough - but need a Signed-off-by line to apply.

>
> Problem 2 (open):
> Upcoming displays will have more than 256 columns of text leading to
> invalid memory access in drivers/char/vt.c during tabulator
> calculations:
> if (vc->vc_tab_stop[vc->vc_x >> 5] & (1 << (vc->vc_x & 31)))
> break;

Yes. We should either limit the vt size or grow the tables.

Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/