Date: Thu, 25 Mar 2010 15:56:04 +0000 (UTC) From: Jung-uk Kim <jkim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r205647 - head/sys/compat/x86bios Message-ID: <201003251556.o2PFu4rp068036@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jkim Date: Thu Mar 25 15:56:04 2010 New Revision: 205647 URL: http://svn.freebsd.org/changeset/base/205647 Log: Fix stupid typos. Some VESA BIOSes directly call BIOS interrupt handlers within the VBE interrupt handler. Unfortunately it was causing real mode page faults because we were fetching instructions from bogus addresses. Pass me the pointyhat, please. PR: kern/144654 MFC after: 3 days Modified: head/sys/compat/x86bios/x86bios.c Modified: head/sys/compat/x86bios/x86bios.c ============================================================================== --- head/sys/compat/x86bios/x86bios.c Thu Mar 25 15:53:02 2010 (r205646) +++ head/sys/compat/x86bios/x86bios.c Thu Mar 25 15:56:04 2010 (r205647) @@ -307,8 +307,8 @@ x86bios_emu_get_intr(struct x86emu *emu, sp[2] = htole16(emu->x86.R_FLG); iv = x86bios_get_intr(intno); - emu->x86.R_IP = iv & 0x000f; - emu->x86.R_CS = (iv >> 12) & 0xffff; + emu->x86.R_IP = iv & 0xffff; + emu->x86.R_CS = (iv >> 16) & 0xffff; emu->x86.R_FLG &= ~(F_IF | F_TF); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201003251556.o2PFu4rp068036>