|
From: Andrzej O. <an...@ma...> - 2012-03-28 12:54:27
|
Heiko Zuerker wrote: > the new udev doesn't use the module-init-tools anymore. > They have switch to kmod, which is a library. > > Maybe the kmod sources have some information. Heiko, I apologize for the delay - I was sick. Thanks for suggestions. Indeed, I read that from the version 171 of udev does not use the m-i-t but kmod library directly. But the preliminary analysis of the sources shows that blacklist is treated differently in m-i-t and in kmod, and that it is rather a political decision. It seems that for kmod dependencies are stronger than the blacklist. So the whole philosophy of loading dahdi drivers modules for Asterisk telephony cards out the window. Since each telephony card typically provides a number of channels and these are numbered, it is not irrelevant, in what order we load the cards drivers. Therefore, the Asterisk developers recommend that all drivers should be on the modprobe blacklist and then loaded on demand by init.d script in the desired order. This worked with old udev and m-i-t correctly. Meanwhile, the presence of telephony card is treated as a dependency and udev/kmod loads drivers regardless of their presence on a blacklist in /etc/modprobe.d/modprobe.conf. Loads them automatcally in the order of cards on the bus and not in the order desired because of the numbers of telephone channels. The behavior of udev/kmod is relatively young and not present in many distribution. This is strange kmod blacklist policy, where the blacklist is not a blacklist, but the discussion shows that the kmod authors rather insist on his own. Of course we can patch the kmod, but it has a little sense because it is the political behavior so patch would be branch from main line of development. We need wait for further decisions: whether Digium becomes independent on the order of loading drivers or kmod team will change the blacklisting policy. So now is the easiest way to get around the problem by modifying the script /etc/init.d/dahdi to mandatory unload all telephony cards drivers before loading they in desired order. And drivers would be loaded, unloaded and loaded again. Best Regards -- Andrzej Odyniec |