On Mon, Sep 10, 2012 at 12:26:09PM +0200, Mark Kettenis wrote: > > Date: Wed, 5 Sep 2012 04:01:56 +0400 > > From: Alexander Polakov <p...@sdf.org> > > > > * Alexander Polakov <p...@sdf.org> [120903 21:41]: > > > Now back to "underlying issues": x86emu executes some code which causes > > > parity check NMI (bit 7 set in port 0x61) to be generated, which causes > > > drop to the debugger (I mistook it for a panic). > > > > Nobody asked me which code exactly. But I'll tell you anyway. > > > > 000C1867 56 push si > > 000C1868 BE 38 02 mov si, 0x0238 > > 000C186B 8B 34 mov si, [si] > > 000C186D 8B 74 10 mov si, [si+0x10] > > 000C1870 83 C6 04 add si, 0x04 > > 000C1873 FC cld > > 000C1874 B9 07 00 mov cx, 0x0007 > > 000C1877 66 AD lods eax, ds:[esi] > > 000C1879 E8 D5 F9 call 0x000C1251 > > 000C187C 83 C3 04 add bx, 0x04 > > 000C187F E2 F6 loop 0x000C1877 > > 000C1881 5E pop si > > 000C1882 C3 ret > > > > NMI ... going to debugger > > <...> > > x86emu: SEGMASK: 0x0 > > x86emu: R_DS: 0xc000 > > x86emu: R_SS: 0x0 > > x86emu: R_CS: 0xc000 > > x86emu: R_ES: 0xc000 > > x86emu: R_FS: 0x0 > > x86emu: R_GS: 0x0 > > x86emu: R_IP: 0x1877 > > x86emu: R_SI: 0xe886 > > x86emu: R_ESI: 0xe886 > > x86emu: Now at 0xc1877, instruction: 0x66 > > > > Sometimes it's 0xc1878 or even 0xc187f. > > > > So, if you feel like debugging this video bios/x86 emulation mess, > > feel free to contact me, I can provide you with memory dump or > > disassembled memory dump. > > Hmm 0x66 is used as an instruction prefix. I believe I've seen > prefix-related fixes flying by on the Xorg mailing lists. Might be > worth investigating whether there are any x86emu fixes that are > missing from our tree.
I looked at the NetBSD tree last week and I haven't spotted any. Where's the X11 tree for this?