Re: uninstalling kext
On Wed, Nov 14, 2012 at 4:25 PM, hagen <noise@dynax.at> wrote:
Thanks Stuart, for this really quick response!
So far I have an Uninstall installer package. Which is also a bit confusing to the user, as there are a lot of places indicating "install", "upgrade" (or similar) which I didn't find a way yet (with packages) to change.
Anyway in one of those scripts I unloading my kext with kextunload, but the issue is that usually some components are using it. I.e. if its an audio device, network etc. So you almost always end up being told by kextunload that there are still references to it and either nothing happens or the kext is unusable anymore. Both is nuts, as now the user will have to reboot. Actually I have only seen kextunload to work for devices the are attached to a bus the OS thinks its PNP (i.e firewire or USB). However it works when the kext (test-wise) was installed to /tmp. The real issue with that is that there is zero documentation. Nothing. Not even very limited documentation like for most parts for kernel development.
Calling kextunload can indeed fail (and should fail) if some resources are still using the extension (e.g. opened sockets attached to a Network Kernel Extension socket filter). The usual solution is to try again later (in a loop for instance) until the kextunload call succeeds. The issue is that even when it succeeds, you can end up with a kernel panic depending on the type of extension (e.g. NKE with a socket filter). _______________________________________________ Do not post admin requests to the list. They will be ignored. Installer-dev mailing list (Installer-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/installer-dev/site_archiver%40lists.... This email sent to site_archiver@lists.apple.com
participants (1)
-
Stephane Sudre