Bluetooth device-related kernel panics
Bluetooth devices can cause kernel panics. How to identify and eliminate.
[Published Wednesday, May 23rd]
Kernel panics are often associated with both Apple-provided and third-party hardware that make use of kernel extensions (items with the file extension .kext located in /System/Library/Extensions), and one such grouping of devices implicated in a rash of recently reported kernel panics is Bluetooth.
Determining whether or not a Bluetooth device is potentially behind any given kernel panic is usually as easy as inspecting the appropriate crash report (as described in our tutorial "An introduction to reading Mac OS X crash reports") and looking for one or more of the following lines in the Backtrace:
- com.apple.driver.IOBluetoothHIDDriver
- com.apple.iokit.IOBluetoothFamily
- com.apple.iokit.IOHIDFamily
These lines refer to various Bluetooth-related kernel extensions located in /System/Library/Extensions, such as:
- IOBluetoothFamily.kext
- IOBluetoothHIDDriver.kext
- IOHIDFamily.kext
Once you've identified a Bluetooth device(s) as the potential cuplrit in a kernel panic, there are a few options for dealing with the problem:
Disconnect and test Simply disconnecting all paired Bluetooth devices then reconnecting them in sets (one or more at a time) and checking for persistence of the kernel panics can reveal on or more culpable devices. You can then look for updated drivers or firmware (outdated firmware is a key factor in many kernel panics) for the offending device or discard it permanently.
Clear kernel extension-related caches Use a tool like Cocktail or Tiger Cache Cleaner, or manually delete the following files:
- com.apple.kernelcaches (a folder in /System/Library/Caches)
- Extensions.kextcache (a file in /System/Library)
- Extensions.mkext (a file in /System/Library/)
Have you recently had an experience with an apparently Bluetooth-related kernel panic? Please drop us a line.
Resources