Won't boot after upgrade unless I delete hp_io_enabler_compound.kext

After upgrading to El Capitan I cannot boot my Mac only unless I delete in safe boot the following extension:

hp_io_enabler_compound.kext

the funny thing is that it is created after each login. I think by using my HP printer. So two questions, is there a way to fix this and be able to start even when this .kext exists or is there a way to prevent the .kext from being created each time? Will the printer work ok after that?

Any ideas?

Mac Pro (Early 2009), OS X El Capitan (10.11)

Posted on Oct 16, 2015 8:22 AM

Reply
16 replies

Jan 30, 2017 7:24 AM in response to Eric Root

Hello Eric, thanks for your reply.


Customer came back this afternoon and, no surprise this time, the pesty file was back!!


Repeating the usual procedure this time didn't take more than 10 minutes:


  • Start computer from rescue partition
  • Launch Terminal.app
  • Change dir to /Volumes/Macintosh HD/Library/Extensions and check for hp_io_enabler_compound.kext
  • Remove .kext file
  • Reboot computer

Looking into the update history I found that this time the AppStore had automatically updated the printers and have now set preferences to manual.

This ought to be a temporary fix because even a single Epson printer update brought back also the hp_io_enable_compound.kext extension file. Again!

Due to lack of time I have recommended customer not to update nor change anything for the time being, this issue however is real nasty. Will have to look into it again and in more detail, once more time will become available.

Will also need a suitable .pkg un-installer I guess

More in my next post

/P

Jan 28, 2017 12:37 AM in response to GRUser

I have had this same issue. Repeatedly.


Initially, after a update to OS X 10.11.1 the computer didn't want to boot.

Tried a further upgrade to macOS Sierra to no avail. Same problem.


After some searching on the Internet I found that removing all .kext files from the /Volumes/My_hardisk/Library/Extensions directory into a newly created Unsupported did the trick and could boot again.


I than updated the machine from 10.12.1 to 10.12.3 and, much to my surprise the Mac hung again pretty much the same way as before. Exploring the Extension folder I found the hp_io_enabler_compound.kext file which I removed swiftly into a another, newly created, directory. As to be expected this solved again the issue and the Mac booted no problem.


For the sake of testing (it was a customer computer) i tried to startup from the rescue partition and, using the DiskUtilities.app did a Disk Repair. It exited with no errors but now comes the weird part: at a further restart I found the pesty hp_io_enabler_compound.kext file again!

I had to repeat the same procedure (single user mode + terminal ) once more to erase the extension file and be able to boot again. Unbelievable!


It would be nice to better understand what is the mechanism built into the System that recovers this file doing a disk repair as I expect this to repeat again and again at every update.


Any ideas out there?


/P

Jan 28, 2017 6:31 AM in response to Barney-15E

I did check both and found nothing suspicious. Thanks for suggesting.


Please note that nothing bad happens after a new restart.

I can turn off and reboot the machine no problem.

It's booting from the Rescue Partition and performing a disk check that messed up things again.

I wonder how a disk check (and repair permission I guess) can restore a pesty file that has been removed.


/P

Jun 2, 2017 12:57 PM in response to GRUser

A workaround you could try is this: instead of finding where this driver comes from, just prevent it from being placed back. As root, after deleting the extension (the folder with the name hp_io_enabler_compound.kext) in the Extension folder, create an empty file with the same name:


# touch hp_io_enabler_compound.kext


Then remove all writing rights, even for the user:


# chmod ugo-w hp_io_enabler_compound.kext


And finally make it immutable at a system and user level:

# chflags schg hp_io_enabler_compound.kext

# chflags uchg hp_io_enabler_compound.kext


Unless the process that tries to copy it into the Extension folder will try a different name if it fails (like hp_io_enabler_compound_1.kext), it should just fail in placing it there again.

Oct 30, 2015 12:45 AM in response to GRUser

I downloaded HP easy start app which auto discovers your printer and updates your driver to the latest version. So I did.

I also updated through App store.

Still the same. I have to boot each time to safe start and delete hp_io_enabler_compound.kext for the system to boot normal....

You can I remove this kext for good?

Feb 10, 2016 7:42 AM in response to GRUser

I have the exact same problem. At first I was not sure which kernel extension caused the problem but after deleting one after another, hp_io_enabler_compound.kext turned out to be the culprit.


So after a reboot the startup progress bar hangs. I restart and start recovery mode (hold cmd + r when starting up). I open the terminal and navigate to

/Volumes/[volume name]/Library/Extensions
(tab after writing /Volumes/ to see a list of possible names) and I delete hp_io_enabler_compound.kext by running
rm -rf hp_io_enabler_compound.kext
. Then I reboot. After reboot the App Store wants me to install the EPSON Printer Software Update 3.2 and HP Printer Software Update 3.1.

Dec 19, 2016 5:07 PM in response to jimmyspark

A printer doesn't need a kernel extension to print--those are all managed directly by Apple. It is likely for some "feature" of the printer, like some sort of hot button on the printer or maybe a card reader.

io means input/output, so it may be some sort of file transfer (like card reader).


The actual printer driver is separate and wouldn't be affected by uninstalling whatever Utilities the printer bundled with it. You would need to use the uninstaller provided by HP to get it to remove the file that is loading the kext.

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

Won't boot after upgrade unless I delete hp_io_enabler_compound.kext

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.