Re: faults in a kext
Re: faults in a kext
- Subject: Re: faults in a kext
- From: Mike Smith <email@hidden>
- Date: Wed, 1 Mar 2006 21:52:23 -0800
On Mar 1, 2006, at 7:22 AM, Joshua LeVasseur wrote:
I'm experimenting with kext development on x86, and I'd like to
know how Darwin handles faults that occur due to instructions
executed by my kext, particularly the general protection fault. I
don't have an x86 Apple machine, and am using a friend's machine,
which I'd like to avoid crashing.
As a general rule, kext development is accompanied by a great deal of
crashing.
Does Darwin halt the kernel if a kext raises a GP?
GP faults are actually less common than you might expect; you're more
likely to generate un-resolvable pagefaults or destroy data belonging
to other parts of the kernel.
Does Darwin survive, but terminate a kext if the kext raises a GP?
No, kexts run in the same context as the rest of the kernel. As
noted above, quite often the damage you cause will not directly
affect any thread in your kext.
Is it possible to tell Darwin that a particular instruction may
raise a GP, and if it does raise a GP, then Darwin should call my
dedicated error handler that cleans up and returns the system to a
nominal state?
Not in any sort of straightforward or supported manner.
= Mike
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden