* [devel] несколько модулей ядра с одним именем в системе
@ 2010-03-15 0:45 Денис Смирнов
2010-03-15 5:37 ` Michail Yakushin
2010-03-18 15:51 ` Michael Shigorin
0 siblings, 2 replies; 4+ messages in thread
From: Денис Смирнов @ 2010-03-15 0:45 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 1073 bytes --]
Суть задачи: есть подсистема dahdi, и собранные дополнительно пакеты
модулей cronyx и wanpipe. При сборке dahdi можно указать значение некоего
#define, которое используется при сборке как всех модулей самого dahdi,
так и всех модулей его использующих.
При одном значении этого #define можно собрать все модули, и они будут
работать. При другом -- собирается только часть из них, зато часть из тех
кто собирается работает в два раза быстрее. И это в два раза быстрее
критично на нагруженных станциях (где сотни каналов).
Получается необходимость собирать эти модули в двух вариантах.
Задача: хочется иметь возможность поставить одновременно в систему оба
варианта модулей, и иметь возможность runtime выбрать какие из них
используются (выгрузить одни/загрузить другие).
Как это можно сделать?
Вроде близкая задача решалась для nvidia, здесь правда усложнение в том
что этих модулей несколько, да еще и в разных пакетах.
--
С уважением, Денис
http://mithraen.ru/
----------------------------------------------------------------------------
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [devel] несколько модулей ядра с одним именем в системе
2010-03-15 0:45 [devel] несколько модулей ядра с одним именем в системе Денис Смирнов
@ 2010-03-15 5:37 ` Michail Yakushin
2010-03-15 10:38 ` Денис Смирнов
2010-03-18 15:51 ` Michael Shigorin
1 sibling, 1 reply; 4+ messages in thread
From: Michail Yakushin @ 2010-03-15 5:37 UTC (permalink / raw)
To: ALT Linux Team development discussions
15.03.2010 03:45, Денис Смирнов пишет:
> Суть задачи: есть подсистема dahdi, и собранные дополнительно пакеты
> модулей cronyx и wanpipe. При сборке dahdi можно указать значение некоего
> #define, которое используется при сборке как всех модулей самого dahdi,
> так и всех модулей его использующих.
>
> При одном значении этого #define можно собрать все модули, и они будут
> работать. При другом -- собирается только часть из них, зато часть из тех
> кто собирается работает в два раза быстрее. И это в два раза быстрее
> критично на нагруженных станциях (где сотни каналов).
>
> Получается необходимость собирать эти модули в двух вариантах.
>
> Задача: хочется иметь возможность поставить одновременно в систему оба
> варианта модулей, и иметь возможность runtime выбрать какие из них
> используются (выгрузить одни/загрузить другие).
>
> Как это можно сделать?
>
> Вроде близкая задача решалась для nvidia, здесь правда усложнение в том
> что этих модулей несколько, да еще и в разных пакетах.
Если оба модуля не требуется загружать одновременно то можно сделать
например так:
1. Собрать модуль в одном значении define
2. переименовать например в dahdi1.ko
3. make clean
4 Собрать с другим значением define
5 переименовать в dahdi2.ko
ну а в пакете symlink например.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [devel] несколько модулей ядра с одним именем в системе
2010-03-15 5:37 ` Michail Yakushin
@ 2010-03-15 10:38 ` Денис Смирнов
0 siblings, 0 replies; 4+ messages in thread
From: Денис Смирнов @ 2010-03-15 10:38 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 771 bytes --]
On Mon, Mar 15, 2010 at 08:37:26AM +0300, Michail Yakushin wrote:
MY> Если оба модуля не требуется загружать одновременно то можно сделать
MY> например так:
MY> 1. Собрать модуль в одном значении define
MY> 2. переименовать например в dahdi1.ko
MY> 3. make clean
MY> 4 Собрать с другим значением define
MY> 5 переименовать в dahdi2.ko
MY> ну а в пакете symlink например.
А как с этой кучей симлинков потому управляться? Это 3 пакета с модулями,
суммарно около двух десятков модулей. Чем их создавать и рулить ими?
Что-то из существующего инструментария (типа alternatives) справится, или
нужно свое что-то извращенное делать?
--
С уважением, Денис
http://mithraen.ru/
----------------------------------------------------------------------------
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [devel] несколько модулей ядра с одним именем в системе
2010-03-15 0:45 [devel] несколько модулей ядра с одним именем в системе Денис Смирнов
2010-03-15 5:37 ` Michail Yakushin
@ 2010-03-18 15:51 ` Michael Shigorin
1 sibling, 0 replies; 4+ messages in thread
From: Michael Shigorin @ 2010-03-18 15:51 UTC (permalink / raw)
To: ALT Linux Team development discussions
On Mon, Mar 15, 2010 at 03:45:10AM +0300, Денис Смирнов wrote:
> Вроде близкая задача решалась для nvidia, здесь правда
> усложнение в том что этих модулей несколько, да еще и
> в разных пакетах.
Вот там и посмотри -- а перекидывать один симлинк или несколько
(у тебя ж есть нужный всем "разным" dahdi, правильно?) можно из
одного скрипта.
Насколько понимаю, инфраструктуры нет, потому как не было чего
обобщать, для начала. Если в процессе адаптации правок окажется
немного -- ну списывайся отдельно с zerg@ насчёт выноса общей части.
--
---- WBR, Michael Shigorin <mike@altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-03-18 15:51 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-03-15 0:45 [devel] несколько модулей ядра с одним именем в системе Денис Смирнов
2010-03-15 5:37 ` Michail Yakushin
2010-03-15 10:38 ` Денис Смирнов
2010-03-18 15:51 ` Michael Shigorin
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git