site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com The kext tools look at all kexts installed in /System/Library/Extensions, whether top-level or plugins, so I don't understand yet why you are even seeing this failure. Can you please send us the exact absolute path listings of your kexts? If you delete the library kext from disk, then any dependencies will fail to load even if the library kext is loaded in the kernel. We require all dependencies be on disk for validation of the entire dependency chain before we send data down to the kernel. Nik Gervae Kext Management Engineer Apple, Inc. On 27 Jul, 2010, at 12:14 , Duane Murphy wrote:
Thank you for the idea, I'll give this a try as well, but I don't see how it would be any different from just having the library kext as it's own kext.
That is, a kext outside of the kext "family" will not be able to satisfy a dependency on the library kext.
Incidentally, the additional kext we want to use will not be in SLE. It will be loaded separately by hand.
On Jul 27, 2010, at 8:23 AM, Alexander Klyuev wrote:
Hi Duane,
Usually I do the following: I create main KEXT naming it like MyKextFamily that is actually library_kext and reside actual driver KEXTs as plugins:
MyKextFamily.kext Contents PlugIns MyDriver1.kext MyDriver2.kext ... MyDriverN.kext MacOS MyKextFamily (library_kext_executable)
All the MyDriverX.kext KEXTs depend on shared MyKextFamily.kext.
That works perfectly.
Honestly speaking I've never tried to put another KEXT into SLE that would depend on (in the example above) MyKextFamily.kext however I pretty sure it would work.
So try to reorganize library_kext as main KEXT, not plugin.
Best, Alexander
-----Original Message----- Sent: July 26, 2010 11:07 PM To: Darwin Kernel Subject: Re: Shared Library kext
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256
On Jul 26, 2010, at 7:10 PM, Michael Smith wrote:
On Jul 26, 2010, at 4:51 PM, Duane Murphy wrote:
The library kext example (IOKitWithLibrary) puts the library kext in the PlugIns directory inside of the "master" kext.
We would like to arrange to share a library kext between multiple top level kext.
You can't do this.
You'd have to have a third kext on which each of your others depended.
Hmm, that's a bummer.
Not quite sure I understand what the difference would be. I think this is what I was asking for.
kext1 & kext2 depend on library_kext
Why not investigate making the 'conditional' parts of your driver family into plugins?
That sounds great. I thought that's what I was doing. Any pointers for how to do this?
A little background.
We have one kext that is loaded all the time (/System/Library/Extensions) that depends on the library kext. The second kext is only loaded sometimes. In fact, we don't want to ship the second kext at all, but rather use it only for testing purposes.
= Mike
Thanks,
...Duane
-----BEGIN PGP SIGNATURE----- Version: PGP Desktop 10.0.2 (Build 13) Charset: us-ascii
wsBVAwUBTE5NVUrg9acQ4r2CAQhocQf/RtE7cDc4QNPsjGGu46/X0hZ3wJ5NbsfO O+nS87Z1j/P5N87sKxJWd85oreMkvhSRU/FbUmtyGkIIyVn4VvOTR60edxB9VCYd AvSreLqXkxM96ungszLs2Oe4c5OuwrUQk4nnYkFbNUSKtrAyJyurTogngHM1r2Qr 0g96FlGzLJhep/ktkVADcu8mDVvrFirx8YGtmF24Z6SU7CQqB4nLnWeSjffTs0Qj Mz0bPm3W4aQrAxe/yXaZmQrKOAuVb7IZqOZAiRv2AR2WvGKkDeVoSdBxhecjuNTI ASSYDB/ZtOSK8T1VAez6wKK1DJcwmhUL96TRFhLDX8K2tQR4SrzCJQ== =t+Jd -----END PGP SIGNATURE----- _______________________________________________
...Duane
_______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/ngervae%40apple.com
This email sent to ngervae@apple.com
_______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... This email sent to site_archiver@lists.apple.com
participants (1)
-
Nik Gervae