The object that should have over-ridden is sitting in the IOreg listing there where my KEXT should be loaded. If I reboot, myKext is in place and works fine. If the object you are matching to already has a kext loaded to it, your loading of a new kext, even with a higher matching criteria, will not load against it. On reboot, your kext will match to it with a higher matching critera and hence will load against that object. Hi Nano, Thanks for your response. Yes, that pretty much describes the situation. My question is, "Is there some way to cause this binding evaluation to take place, once again, after boot-time?" Looking at the darwin source, it appears there is code activity which, when executed, creates the files "/System/Library/Extensions.kextcache" and "/System/Library/Extensions.mkext". I am guessing that, if refs to your kext bundle are not included in those files, you are not in the pool of kexts that will be evaluated for instantiation in the IORegistry. Perhaps that is why simply calling 'kextload' doesn't really do anything useful as it does not cause your kext to be added into that file. Once your kext was embedded in those files - perhaps by invoking the kextcache tool - I am guessing it would then be possible to request IORegistry objects be removed and then re-added based on the criteria available at that time. Is this the key? Maybe this desire to not have to insist the User restart the machine in order to make use of the software is something that cannot be avoided. Would anyone care to chime in with mitigating circumstances or insights that might help me to better understand why this is or is not possible? Thanks, Lance Drake _______________________________________________ darwin-kernel mailing list | darwin-kernel@lists.apple.com Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/darwin-kernel Do not post admin requests to the list. They will be ignored.