A couple of kext loading/matching issues
site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; bh=5MMmwzbQOMVQ6F3Yto6LsiCkey6C1Z40FNE+hNE3mlk=; b=mOaMTDw0Co1oQ1L8BxrezVUdxzqYSqMiPMiPnRSLvqdtpGWhBcUFdKrZzWL9djxoQOEeVnvjWcUZbLNd/Pr71Bg5zpPy2iq/1/mUy/NONU3ok+F8GBXqNc9pJWAuISniR6ysFsyqJrlJpFkbUHbv5VqqCBnb+f9wagDuLBx9KG4= Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=mTGTvZdY3hobZY61Vuo+dJr+AHT2EQYP5P6EWWD7MYulzpDVdIGlLgvTD5UGfx+7oICQnvdFO5RV6I/epEJ7jHOGGuQ/Z3NwGrcCd3UlssZh04jVomy6qmW/ZEokAkjL1/OttIF88IPpW28SMAtGJut4co5fYUfcfUqDWjfPZyc= Hey guys I'm having a hard time figuring out a couple of issues concerning the loading of kexts. 1) I'm developing a driver which operates on LVM/LDM stripes. However, I'm using an internal library which parses and constructs volumes from the metadata on the devices. This implies that I don't want IOFDiskPartitionScheme or IOGUIDPartitionScheme to get in my way. That's why I increased the matching score and my driver is loaded for the ldm/lvm devices instead of the aforementioned two. Now all of this works fine as long as my driver is loaded (that is, I manually kextload'ed it before). I've read that drivers are usually loaded on demand, which if I understand correctly, means that if I put the kext in /System/Library/Extensions and if a nub (or media device in this) is published which my driver matches on it should be loaded automatically. Is this correct? This doesn't seem to be working in my case (IOGUIDPartitionSheme is loaded instead) and my driver can't match the whole media device any more. So I'd like to know how to make my driver load automatically on the ldm/lvm disks instead of the partition scheme drivers. 2) An interesting issue occurs sometimes when I move drivers to the /System/Library/Extensions folders. When a certain kext (it happens with a few third-party kexts) is anywhere but in /S/L/E it gets kextload'ed without problems. However, when I put it there I get "Bus error" on load. Interestingly enough though, it *loads* fine with kextload -t -v. (I've tested this on a macbook pro with a 9.2.0 kernel, however it doesn't work with the new 9.2.2 kernel as well.) 3) Is it possible to load a few drivers for a given nub and if yes how? Any help would be greatly appreciated. Thanks in advance V. _______________________________________________ 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)
-
Valentin Slavov