ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [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