svn commit: r205647 - head/sys/compat/x86bios

Jung-uk Kim jkim at FreeBSD.org
Thu Mar 25 15:56:04 UTC 2010


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);
 }
 


More information about the svn-src-head mailing list