How To identify and disable system extensions that cause other apps to crash
Feb 27, '12 07:30:00AM • Contributed by: tempel

Sometimes, people contact me because software of mine, such as Find Any File, crashes mysteriously at launch. Often it turns out that this is caused by an incompatibility or bug in some other software that tries to enhance general Mac OS X functionality. The difficulty is to figure out which software is the culprit, in order to disable it and/or notify its maker and ask to get this resolved.

Sometimes, one can get a hint by looking at the detailed Crash Report one can find when opening the Console app. It will contain a long list of 'Binary Images,' listing which software components are loaded along with the app that crashes.

Many of those components are so-called Frameworks and 'libs' provided by Apple as part of OS X; but they're usually not the culprit. Then, there are other parts, installed by other apps or even installed explicitly by you for a particular purpose.

However, analysing these reports is difficult and may not lead to success, either. Instead, I'll try to give you some pointers that are often helping and do not require to understand the Crash Report contents.

In any case, the hard part is always that the crash happens only on someone else's computer and I can't reproduce it to find out what's going wrong. On Mac OS before X, there was the great Conflict Catcher software sorting such problems out, but there's no such thing for OS X.

Hence, I'm trying to give a little guidance to users who experience such crashes in the hopes it'll make their system more stable.

I've posted the article on my web site, where I might be improving it over time, based on feedback I hope to receive.

[crarko adds: The author suggested, and I considered, posting the text of the article here. But the page he's put up is heavily and well-illustrated, and is also evolving based on feedback. I don't think I can do any better than to refer you all to the original article.]

Hint Options

How To identify and disable system extensions that cause other apps to crash | 5 comments | Create New Account

Click here to return to the 'How To identify and disable system extensions that cause other apps to crash' hint

The following comments are owned by whoever posted them. This site is not responsible for what they say.

How To identify and disable system extensions that cause other apps to crash
Authored by: vykor on Feb 27, '12 02:28:01PM

To add to this, a fair number of kernel panics (the "you have to restart" kind of full system crashes) are due to incompatible kernel extensions, or kexts, located in /Library/Extensions and /System/Library/Extensions. Most of the time, repeated kernel panics due to kexts start to happen after an OS update or an app update, but sometimes there are just bugs in the kernel extensions that don't surface until a specific usage scenario occurs. The offending extension usually show up in the panic log.

In general, I'm extremely wary of any application that installs kernel extensions, just because these things will take down the entire system if there is a bug or two. Sometimes they're unavoidable though, usually because they are device drivers for some hardware. But a very rough rule of thumb is: the fewer third-party kernel extensions you have to keep around, the more stable a given system tends to be.

How To identify and disable system extensions that cause other apps to crash
Authored by: pentique on Dec 09, '12 11:25:43AM

Could one super simple resolution to the kext problem just remove the offending extension? No crashes just a constant popup window informing me, after months of a trouble-free mac mini and printer symbiosis, that one of my printer extensions was installed improperly. Apologies in advance for not including the message as written. I updated my printer since the upgrade was a software update but the problem continues. Any suggestions?

How To identify and disable system extensions that cause other apps to crash
Authored by: auco on Feb 28, '12 03:04:10AM

I think it would be much more valuable to teach people how to read Crash Reports. I noticed that many are afraid when they see some hexadecimal address numbers, but in fact, you only need to scan the document from top down and search for the "Exception Type" and the first or second line after "Thread X crashed". For example, here's a (random) crash report from Finder:

Process: Finder [181]

Now, look at the reason, why it crashed; you'll typically find it at "Exception Type":

Exception Type: EXC_BAD_ACCESS (SIGSEGV)

EXC_BAD_ACCESS is a very typical reason and it simply means that the application tried to access an object which wasn't there anymore (common memory management error).

Each application has more than one thread and we want to find the thread that crashed, so look out for "Thread x Crashed":

From top down you'll find the history of this crash. If we start looking at number 3 first, we find that there was a mouseDown event on a tab in the (nice btw) extension TotalFinder. 2 shows us there was a drag operation in AppKit and 1 tried to get the icon image from the NSWorkspace (AppKit as well). 0 finally shows, that there obviously was no icon image to be found and the application crashed.

So, to sum it up: it is relatively certain that most of Apple's frameworks (like com.apple.AppKit) are not the culprits, so go back until you find the app name that crashed or a third party extension. Typically, you'll find it in the first two to five rows of the crashed thread.

So, if there was any plugin or system enhancer involved, you can really easily find out who's the culprit. Well, in 90% of all cases that is.

How To identify and disable system extensions that cause other apps to crash
Authored by: Webber on May 17, '13 12:39:12AM

I don't not comment much online but this time it would not feel good when I didn't.

This article has saved me hours and hours of tedious system recovery, really.
I had an application crashing all the time (I was about to throw my computer out of the window), I then found and read this article and sure enough in the first lines I could point the chrashing bad software (plugin in my case). Removed the plugin, all problems solved! :-)