On Tue, Mar 25, 2003 at 05:23:07PM +0000, James Simmons wrote:
quoted
quoted
While loading X, I get this oops. The weird thing is that I don't use
framebuffer. I compiled with gcc 3.2.2 but the code generated looks weird.
Virgin gcc 3.2.2 on a pentium III.
You don't use framebuffer? Can you send me your config.
Ok, I've found the bug, it is in fb_open() in drivers/video/fbmem.c, it
needs this addition:
if(fbidx >= FB_MAX)
return -ENODEV;
Without it, large minor numbers result in access beyond the end of
registered_fb.
On Debian, ls /dev/fb[67] results in:
crw--w--w- 1 root tty 29, 192 Nov 30 2000 /dev/fb6
crw--w--w- 1 root tty 29, 224 Nov 30 2000 /dev/fb7
On Red Hat this is:
crw------- 1 root root 29, 7 Apr 11 2002 /dev/fb7
crw------- 1 root root 29, 8 Apr 11 2002 /dev/fb8
Which explains why many don't see this bug.
Ah. That explains it. I will apply the fix.