Date: Wed, 21 Mar 2001 10:26:03 -0800 (PST) From: <rnordier@FreeBSD.org> To: jhb@FreeBSD.org (John Baldwin) Cc: rnordier@FreeBSD.org, ia32@FreeBSD.org Subject: Re: Fix BTX to handle early kernel traps Message-ID: <200103211826.f2LIQDq98641@freefall.freebsd.org> In-Reply-To: <XFMail.010320110036.jhb@FreeBSD.org> from John Baldwin at "Mar 20, 2001 11: 0:36 am"
next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote: > I managed to really hose my kernel by slightly breaking an assertion in > mtx_init() and calling panic() as a result. The only problem is that the > mtx_init() in question was done in init386 before the kernel IDT was setup, > so the actual fault's that ensued ended up hitting the BTX exception handler. > This was all nice and good except that when BTX tried to halt it wound up > recursively page faulting on itself because the kernel had enabled paging, but > BTX was not compiled with paging. Furthermore, the gdt had changed out from > under BTX, so during the exit: target I also had to reload the gdt descriptor > register before finessing the selectors and returning to real mode. The > included patch does all of this and I'd like to commit it: > [ . . . ] > Any objections? Fine by me. -- Robert Nordier rnordier@nordier.com // Le monde est plein de fous, et qui n'en veut pas voir rnordier@FreeBSD.org // Doit se tenir tout seul, et casser son miroir. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ia32" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200103211826.f2LIQDq98641>