Messages in this thread Patch in this message | | | Date | Tue, 18 Jun 2002 08:38:29 -0700 | From | Paul Mundt <> | Subject | Re: 2.5.22: FB_VESA - early crash in fbcon_cursor() |
| |
Hi Martin,
On Tue, Jun 18, 2002 at 12:31:29PM +0200, Martin Diehl wrote: > no luck here getting 2.5.22 to boot on my ob800 with vesafb enabled. > Same with 2.5.21. Last one working was 2.5.16 but I haven't tried 17-20. > Box oopses due to NULL-pointer dereference during inital fbdev setup. > > config, dmesg + decoded dump from serial console below. > <snip>
> Code: 8b 40 18 85 c0 74 4a 66 8b 7f 2c 89 ea 66 89 bb e4 00 00 00 > Error (Oops_bfd_perror): set_section_contents Bad value > > >>EIP; c0192baf <fbcon_cursor+6f/200> <===== > Trace; c0177281 <hide_cursor+81/90> > Trace; c017a79c <vt_console_print+8c/310> <snip>
Looks like the dispsw isn't being set and you're running into the NULL dereference in fbcon_cursor() upon trying to dereference it.. it looks like fbgen.c is the culprit here, as it never sets display->dispsw if we aren't in 24-bpp or have FBCON_HAS_ACCEL set..
James, what's the point of th FBCON_HAS_ACCEL ifdef? It looks like all the accel wrapper code does is provide a wrapper to the fillrect, imageblit, and copyarea routines -- if the driver doesn't have accelerated ones to provide for itself, it just uses the cfb_fillrect/imageblit/copyarea as a fallback, thus it should _always_ be safe to call them.
If that's not the case, we'll have to re-introduce the FBON_CAS_CFBx brain-damage in gen_set_disp() to keep dispsw happy.
Regards,
-- Paul Mundt <lethal@chaoticdreams.org>
--- linux-fbdev-2.5/drivers/video/fbgen.c Tue Jun 18 11:37:46 2002 +++ linux-fbdev-2.5/drivers/video/fbgen.c Tue Jun 18 11:37:59 2002 @@ -452,10 +452,9 @@ #endif } -#ifdef FBCON_HAS_ACCEL display->scrollmode = SCROLL_YNOMOVE; display->dispsw = &fbcon_accel; -#endif + return; } [unhandled content-type:application/pgp-signature] | |