[sisyphus] ipw2x00
Sergey Vlasov
=?iso-8859-1?q?vsu_=CE=C1_altlinux=2Eru?=
Ср Июл 13 13:55:09 MSD 2005
On Tue, Jul 12, 2005 at 01:05:20PM +0400, Anton Farygin wrote:
> В письме Tue, 12 Jul 2005 11:45:36 +0400, Alexey Shabalin
> написал:
> > 12.07.05, Anton Farygin<rider на altlinux.com> написал(а):
> >> В письме Tue, 12 Jul 2005 10:53:22 +0400, Alexey Shabalin
> >> написал:
> >> >> Кстати, просьба мантейнеру ipw2200
> >> >> подумать, как уживать ipw2100 и ipw2200 в одной
> >> >> системе. Ибо текущая схема сборки
> >> >> дистрибутива не позволяет размещать в
> >> >> одном дистрибутиве два _конфликтующих_ пакета.
> >> >>
> >> > Вот не знаю как это можно решить. конфликт идет по куче файлов типа
> >> > ieee80211_crypt_*.ko.
> >> > у ipw2100 и ipw2200 они разные. апстрим их синхронизировать похоже не
> >> > собирается. Разве что извращатся и делать разные файлы типа
> >> > ipw2100_ieee80211_crypt_* и ipw2200_ieee80211_crypt_*.
> >>
> >> Почему бы и нет ?
> >
> > Как срочно это надо сделать?
>
> Чем быстрее - тем лучше.
Но так, как только что было сделано в kernel CVS, делать нельзя. После
выполнения depmod получается следующее:
/lib/modules/2.6.12-std26-up-alt1/kernel/drivers/net/wireless/ipw2100/ipw2100.ko:
/lib/modules/2.6.12-std26-up-alt1/kernel/drivers/base/firmware_class.ko
/lib/modules/2.6.12-std26-up-alt1/kernel/drivers/net/wireless/ipw2200/ipw2200_ieee80211.ko
/lib/modules/2.6.12-std26-up-alt1/kernel/drivers/net/wireless/ipw2200/ipw2200_ieee80211_crypt.ko
Т.е., модуль ipw2100 получил в зависимости модули ieee80211 от ipw2200.
При этом версии ieee80211 там, похоже, разные, поэтому ничего хорошего не
выйдет - в зависимости от того, в каком порядке depmod прочитает файлы,
будет работать либо ipw2100, либо ipw2200.
Зависимости модулей определяются по именам экспортируемых функций; если
два модуля экспортируют функции с одинаковыми именами, неизвестно, какой
из них будет выбран. Таким образом, чтобы разделить похожие модули,
необходимо как минимум в одном из них переименовать все экспортируемые
функции (и соответствующим образом исправить те модули, которые используют
эти функции). :(
Кстати, при переименовании модулей в данном случае ещё надо учитывать, что
в драйверах есть вызовы request_module("ieee80211_crypt_wep") и т.п. - эти
имена тоже нужно менять.
В данном случае возможен другой вариант - попробовать подобрать пару
версий ipw2100 и ipw2200, выпущенных примерно в одно время и имеющих
одинаковые компоненты ieee80211, и собирать эти модули в одном пакете,
чтобы они использовали один и тот же набор общих модулей.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/sisyphus/attachments/20050713/53ad840c/attachment-0003.bin>
Подробная информация о списке рассылки Sisyphus