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: sblachm...@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.
_______________________________________________
freebsd-bugs@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "freebsd-bugs-unsubscr...@freebsd.org"

Reply via email to