xserver/hw/xfree86
Luc Verhaegen cc2c73ddcb x86emu: fix jump_near_IMM to handle DATA: flag correctly.
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=24348

Before (data flag ignored -> broken):
66                  DATA:
e944f1              JMP       1ff6

After (fixed):
66                  DATA:
e944f1ffff          JMP       00001ff8

This subtle difference in the length of decoded instruction meant
that the VBE call jumped to the routine setting AX=0x14F (VBE Failed)
instead of the routine that set AX=0x4F (VBE success).

The ability to run the same code in vm86 significantly aided the
debugging of this issue. Those X.org developers who would like to drop
vm86 better take special care towards _all_ vesa bugs, as those will
expose further issues.

Patch applies easily to even xserver 1.4.2.

Signed-off-by: Luc Verhaegen <libv@skynet.be>
Tested-by: Luc Verhaegen <libv@skynet.be>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2010-11-10 14:56:57 -08:00
..
common xfree86: set mask for valuators 0/1 when emulating core events (#30267) 2010-10-20 08:02:38 +10:00
ddc ddc: Don't probe for DDC/CI or EEPROM 2010-10-18 15:42:54 -04:00
dixmods xserver: delete pervasively use of DISPATCH_PROC 2010-09-28 16:45:05 +03:00
doc xfree86: Remove %M expansion from config parser 2010-10-18 15:33:27 -04:00
dri xserver: delete pervasively use of DISPATCH_PROC 2010-09-28 16:45:05 +03:00
dri2 DRI2: Avoid call to NULL pointer 2010-11-10 14:38:09 -08:00
exa Change the devPrivates API to require dixRegisterPrivateKey 2010-06-05 19:23:03 -07:00
fbdevhw xfree86: Remove useless module setup functions where appropriate 2010-09-22 10:57:22 -04:00
i2c xfree86: Remove useless module setup functions where appropriate 2010-09-22 10:57:22 -04:00
int10 Merge remote branch 'ajax/less-loader' 2010-09-28 08:15:07 -07:00
loader xfree86: Do not call dlclose(NULL) [regression after ab7f057] 2010-10-04 11:46:07 -07:00
modes edid: Fix the HDTV sync pulse adjustment 2010-10-05 08:19:25 -07:00
os-support Do not trap access to timer and keyboard 2010-11-10 14:42:44 -08:00
parser dri1: Remove "buffers" from the config logic 2010-10-18 15:34:08 -04:00
ramdac Add API to update setting of waitForUpdate screen private in miPointer 2010-07-02 14:27:49 +10:00
shadowfb xfree86: Kill pixmapPrivate with a vengeance (v2) 2010-09-28 08:07:21 -07:00
utils Remove unnecessary parentheses around return values in functions 2010-06-10 06:42:42 -07:00
vbe vbe: Fix copying the mode info block 2010-10-05 10:20:43 -07:00
vgahw xfree86: nds32: add nds32 definition for vgaHW support. 2010-09-23 15:36:19 -07:00
x86emu x86emu: fix jump_near_IMM to handle DATA: flag correctly. 2010-11-10 14:56:57 -08:00
xaa Delete redundant GC initializations. 2010-09-13 15:55:17 -07:00
xf8_16bpp Update several of my and/or Red Hat's licenses to standard form. 2009-05-14 07:02:44 -04:00
.gitignore .gitignore: use common defaults with custom section #24239 2009-11-11 21:40:20 -08:00
Makefile.am Fix relink targets for silent rules 2010-03-22 00:45:52 -05:00
xorgconf.cpp Update xorg.conf man page & sample for changes in Xorg 1.7 2009-09-14 16:03:18 +10:00