Date: Sun, 03 Dec 2017 23:58:26 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 224069] (Fix included) Use of uninitalized register value in vesa.ko, causing X, text console and suspend/resume to fail Message-ID: <bug-224069-8@https.bugs.freebsd.org/bugzilla/>
index | next in thread | raw e-mail
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=224069 Bug ID: 224069 Summary: (Fix included) Use of uninitalized register value in vesa.ko, causing X, text console and suspend/resume to fail Product: Base System Version: 11.1-STABLE Hardware: Any OS: Any Status: New Severity: Affects Many People Priority: --- Component: kern Assignee: freebsd-bugs@FreeBSD.org Reporter: sblachmann@gmail.com PROBLEMS: -Switching between X and text console fails, screen is garbled or no video at all -Resuming after suspend results either in garbled or no video at all ANALYSYS: As I was getting annoyed by so many people affected by the buggy vesa.ko, and felt frustrated that these problems with X, particulartly switching between X and text console and the failure of suspend/resume to restore the screen, I finally took a look into vesa.ko and found immediately a thing very wrong. In line 515 of /usr/src/sys/dev/fb/vesa.c you see this: /* regs.R_DL = STATE_SIZE; */ The DL register contains the subfunction of the BIOS call retrieving the buffer size. It must not be undefined, as it is unpredictable which subfunction will get called. Thus I wish I knew who has commented out that line for what reason. I think this justifies an explanation. Because, the commenting out of this line caused all these problems, which have done big damage to FreeBSD's reputation regarding its usability as desktop OS. FIX: Uncomment that line. -- You are receiving this mail because: You are the assignee for the bug.help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-224069-8>
