Date: Wed, 21 Mar 2001 12:08:08 -0800 (PST) From: John Baldwin <jhb@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/boot/i386/btx/btx btx.s Message-ID: <200103212008.f2LK8C613667@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
jhb 2001/03/21 12:08:08 PST
Modified files:
sys/boot/i386/btx/btx btx.s
Log:
Always disable paging when exiting back to real mode after receiving a
fatal trap. Also, reload the GDT register to point to BTX's GDT before
playing around with the segment registers to return to real mode. This is
helpful if the kernel causes a fatal exception before it has setup its own
IDT and fault handlers. For example, if one happens to break mtx_init().
Without these changes BTX would recursively page fault (if paging was not
disabled) or triple fault and reset the CPU (without the GDT reload)
instead of providing a potentially useful register dump.
Reviewed by: rnordier
Revision Changes Path
1.24 +5 -5 src/sys/boot/i386/btx/btx/btx.s
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200103212008.f2LK8C613667>
