Oops with matroxfb 2.1.129

Petr Vandrovec Ing. VTEI (VANDROVE@vc.cvut.cz)
Tue, 24 Nov 1998 21:34:35 MET-1


In reply to oops in fbcon_cfb32_clear_margins...

Hello Scott,
could you try applying following patch and tell me whether it helps you?
There is problem in clear_margin() if margin below last physical line
is smaller than bottom visual margin. In this case clear_margin() tries
to clear screen above last memory address. BTW, it should not occur in
matroxfb if you are using "accelerated" access method - did you specify
"fbset -accel false" (or better, you forget to specify -accel true) or
what happen?
Best regards,
Petr Vandrovec
vandrove@vc.cvut.cz

diff -urN linux/drivers/video/fbcon.c linux/drivers/video/fbcon.c
--- linux/drivers/video/fbcon.c Mon Nov 16 16:38:57 1998
+++ linux/drivers/video/fbcon.c Thu Nov 19 14:40:03 1998
@@ -530,6 +530,9 @@
conp->vc_rows = nr_rows;
}
p->vrows = p->var.yres_virtual/fontheight(p);
+ if ((p->var.yres % fontheight(p)) &&
+ (p->var.yres_virtual % fontheight(p) < p->var.yres % fontheight(p)))
+ p->vrows--;
conp->vc_can_do_color = p->var.bits_per_pixel != 1;
conp->vc_complement_mask = conp->vc_can_do_color ? 0x7700 : 0x0800;
if (charcnt == 256) {
@@ -1339,6 +1342,9 @@
/* reset wrap/pan */
p->var.xoffset = p->var.yoffset = p->yscroll = 0;
p->vrows = p->var.yres_virtual/h;
+ if ((p->var.yres % fontheight(p)) &&
+ (p->var.yres_virtual % fontheight(p) < p->var.yres % fontheight(p)))
+ p->vrows--;
updatescrollmode(p);
vc_resize_con( p->var.yres/h, p->var.xres/w, unit );
} else if (CON_IS_VISIBLE(p->conp) && vt_cons[unit]->vc_mode == KD_TEXT) {

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