ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] coldplug
@ 2005-08-30  8:29 Денис Смирнов
  2005-08-30  8:45 ` Denis Ovsienko
  0 siblings, 1 reply; 22+ messages in thread
From: Денис Смирнов @ 2005-08-30  8:29 UTC (permalink / raw)
  To: devel; +Cc: mike

[-- Attachment #1: Type: text/plain, Size: 1194 bytes --]

Проблема:

Есть новый установки дистрибутива, хотелось бы при их установке
автоматически определять список требуемых модулей, и прописывать их в
/etc/modules. Соответственно если после этого будет обновлён hotplug и
libhw, и "вдруг" для имеющегося железа изменится в его базе соответствие
модулей, не хотелось бы чтобы производились какие-либо лишние изменения.

При этом установка нового оборудования должна отрабатывать корректно.

Решение:

Скрипт, поверх pciscan -r, который сам пропишет модули в /etc/modules, что
весьма удобно.

Скрипт не трогает старые записи (чтобы сохранять порядок загрузки
модулей), исключительно добавляя новые при необходимости.

Процедура добавления выглядит так:
 - сначала формируем временный файл со списком
 - если в нём что-то есть -- _добавляем_ это прямо в /etc/modules.

Скрипт в аттаче.

Скоро в сизиф уйдёт пакет с этим скриптом (у меня он, видимо, будет одной
из системообразующих компонент).

-- 
С уважением, Денис

http://freesource.info
----------------------------------------------------------------------------
Посмотрите MTU на интерфейсах.
Фрагментация IP-пакетов разрешена?

Всё, мой телепатический модуль перегрелся.
		-- alb in community@


[-- Attachment #2: cold --]
[-- Type: text/plain, Size: 2191 bytes --]

#!/bin/sh
# coldplug	Adding new modules to /etc/modules
#
# chkconfig: 2345 29 69
# description:	Script for adding new modules to /etc/modules, \
#		for don't depend to hotplug correctly works
# processname: coldplug
##config: /etc/template.conf
##pidfile: /var/run/template.pid
#=============================================================================#
#    				Add modules for loading to modules.conf					  #
#=============================================================================#
# (c) Denis Smirnov <mithraen@freesource.info>
#=============================================================================#
# + must be run _before_ sound
# + must be run _before_ hotplug
# + must be run _after_ mounting /usr (for comm and uniq utilites)
set +e

WITHOUT_RC_COMPAT=1

# Source function library.
. /etc/init.d/functions

#PIDFILE=/var/run/template.pid
#LOCKFILE=/var/lock/subsys/template
RETVAL=0

start()
{
T_OLD=`mktemp`
T_NEW=`mktemp`
T_DIFF=`mktemp`

cat /etc/modules \
	| /bin/grep -v '^#' \
	| /bin/grep . \
	| /bin/sort \
	| /usr/bin/uniq \
	> $T_OLD

# Get list for PCI-card drivers
/usr/bin/pciscan -r \
	| /bin/sort \
	| /usr/bin/uniq \
	> $T_NEW

/usr/bin/comm -13 $T_OLD $T_NEW  > $T_DIFF
/bin/rm -f $T_OLD $T_NEW

if [ -s $T_DIFF ]; then
	echo "# Added by coldplug @ `date -I`" >> /etc/modules
	cat $T_DIFF >> /etc/modules
fi

	RETVAL=$?
	return $RETVAL
}

stop()
{
#	stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root -- template
	RETVAL=$?
	return $RETVAL
}

restart()
{
#	stop
	start
}

reload()
{
#	msg_reloading template
#	stop_daemon --pidfile "$PIDFILE" --expect-user root -HUP -- template
	RETVAL=$?
	return $RETVAL
} 

# See how we were called.
case "$1" in
	start)
		start
		;;
	stop)
		stop
		;;
	reload)
		reload
		;;
	restart)
		restart
		;;
	condstop)
		if [ -e "$LOCKFILE" ]; then
			stop
		fi
		;;
	condrestart)
		if [ -e "$LOCKFILE" ]; then
			restart
		fi
		;;
	condreload)
		if [ -e "$LOCKFILE" ]; then
			reload
		fi
		;;
	status)
		status --pidfile "$PIDFILE" --expect-user root -- template
		RETVAL=$?
		;;
	*)
		msg_usage "${0##*/} {start|stop|reload|restart|condstop|condrestart|condreload|status}"
		RETVAL=1
esac


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [devel] coldplug
  2005-08-30  8:29 [devel] coldplug Денис Смирнов
@ 2005-08-30  8:45 ` Denis Ovsienko
  2005-08-30  9:00   ` Денис Смирнов
  2005-08-30  9:46   ` Michael Shigorin
  0 siblings, 2 replies; 22+ messages in thread
From: Denis Ovsienko @ 2005-08-30  8:45 UTC (permalink / raw)
  To: ALT Devel discussion list

> Проблема:
[...]
Проблема в том, что не годится инициализировать систему как livecd при каждой
загрузке. И кстати, coldplug уже есть, я видел в SuSE.

-- 
    DO4-UANIC


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [devel] coldplug
  2005-08-30  8:45 ` Denis Ovsienko
@ 2005-08-30  9:00   ` Денис Смирнов
  2005-08-30  9:21     ` [devel] coldplug Anton Farygin
  2005-08-30  9:24     ` [devel] coldplug Igor Tertishny
  2005-08-30  9:46   ` Michael Shigorin
  1 sibling, 2 replies; 22+ messages in thread
From: Денис Смирнов @ 2005-08-30  9:00 UTC (permalink / raw)
  To: devel

On Tue, Aug 30, 2005 at 12:45:11PM +0400, Denis Ovsienko wrote:

DO> [...]
DO> Проблема в том, что не годится инициализировать систему как livecd при каждой
DO> загрузке. И кстати, coldplug уже есть, я видел в SuSE.

Причём тут инициализация как livecd?

При каждой загрузки загружаются все модули из /etc/modules. Кроме этого те
модули, который с точки зрения libhw нужны, но их нет -- дописываются в
/etc/modules.

При штатной работе (без обновлений libhw, ядра, добавления железа)
coldplug не будет делать ничего.

Собственно для стабильности он и нужен.

-- 
С уважением, Денис

http://freesource.info
----------------------------------------------------------------------------
Собственно говоря, пакет glibc предназначен для того, чтобы не потерять
разные части glibc, если только вы не знаете заранее, что они не все вам
нужны.
		-- ldv in community@



^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: coldplug
  2005-08-30  9:00   ` Денис Смирнов
@ 2005-08-30  9:21     ` Anton Farygin
  2005-08-30 10:41       ` [devel] Re: coldplug/warmplug Michael Shigorin
  2005-08-30 11:23       ` [devel] Re: coldplug Денис Смирнов
  2005-08-30  9:24     ` [devel] coldplug Igor Tertishny
  1 sibling, 2 replies; 22+ messages in thread
From: Anton Farygin @ 2005-08-30  9:21 UTC (permalink / raw)
  To: ALT Devel discussion list

On Tue, 30 Aug 2005 13:00:37 +0400, Денис Смирнов wrote:

> On Tue, Aug 30, 2005 at 12:45:11PM +0400, Denis Ovsienko wrote:
> 
> DO> [...]
> DO> Проблема в том, что не годится
> инициализировать систему как livecd при
> каждой DO> загрузке. И кстати, coldplug уже
> есть, я видел в SuSE.
> 
> Причём тут инициализация как livecd?
> 
> При каждой загрузки загружаются все
> модули из /etc/modules. Кроме этого те модули,
> который с точки зрения libhw нужны, но их
> нет -- дописываются в /etc/modules.

Можно подробнее ? Какие модули прописываются и где их нет ?

> 
> При штатной работе (без обновлений libhw,
> ядра, добавления железа) coldplug не будет
> делать ничего.

А когда он будет выполняться ?

Мне не совсем понятна схема его работы.
Что будет происходить в случае, когда:
- модуль переименовался в новом ядре
- модуль исчез в новом ядре
- сменили железо
- удалили железо
- добавили железо

и т.д.

Что будет делаться для:
- не PCI устройств (PNP, USB, CPU и т.д.)
- упорядочивания загрузки модулей (актуально для USB, например)
- добавления параметров модулям
и т.д.

Rgds,
Rider



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [devel] coldplug
  2005-08-30  9:00   ` Денис Смирнов
  2005-08-30  9:21     ` [devel] coldplug Anton Farygin
@ 2005-08-30  9:24     ` Igor Tertishny
  2005-08-30 11:14       ` Denis Smirnov
  1 sibling, 1 reply; 22+ messages in thread
From: Igor Tertishny @ 2005-08-30  9:24 UTC (permalink / raw)
  To: Денис
	Смирнов,
	devel

> При штатной работе (без обновлений libhw, ядра, добавления железа)
> coldplug не будет делать ничего.
>
> Собственно для стабильности он и нужен.

Имхо, крайне полезная вещь. Даже больше, чем полезная. Не раз наступал на 
грабли при смене железа. Еще бы какой инструмент, срабатывающий при смене 
видеокарты и вызывающий прогу настройки... Недавно менял, пришлось все 
ручками править, иначе никак не получалось.


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: coldplug
  2005-08-30  8:45 ` Denis Ovsienko
  2005-08-30  9:00   ` Денис Смирнов
@ 2005-08-30  9:46   ` Michael Shigorin
  1 sibling, 0 replies; 22+ messages in thread
From: Michael Shigorin @ 2005-08-30  9:46 UTC (permalink / raw)
  To: ALT Devel discussion list

On Tue, Aug 30, 2005 at 12:45:11PM +0400, Denis Ovsienko wrote:
> > Проблема:
> Проблема в том, что не годится инициализировать систему как
> livecd при каждой загрузке. И кстати, coldplug уже есть, я
> видел в SuSE.

И в gentoo есть, мне показывали.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: coldplug/warmplug
  2005-08-30  9:21     ` [devel] coldplug Anton Farygin
@ 2005-08-30 10:41       ` Michael Shigorin
  2005-08-30 11:20         ` Денис Смирнов
  2005-08-30 11:40         ` [devel] Re: [hotplug] " Sviataslau Svirydau
  2005-08-30 11:23       ` [devel] Re: coldplug Денис Смирнов
  1 sibling, 2 replies; 22+ messages in thread
From: Michael Shigorin @ 2005-08-30 10:41 UTC (permalink / raw)
  To: devel; +Cc: hotplug

On Tue, Aug 30, 2005 at 01:21:01PM +0400, Anton Farygin wrote:
> > > Проблема в том, что не годится инициализировать систему как
> > > livecd при каждой загрузке. И кстати, coldplug уже есть, я
> > > видел в SuSE.
> > Причём тут инициализация как livecd?

При том, что нет фиксации состояния и есть повышенная
неопределённость.  Администраторы *NIX склонны это воспринимать 
в штыки :-)

Денис, не тормози :-)

> > При каждой загрузки загружаются все модули из /etc/modules.
> > Кроме этого те модули, который с точки зрения libhw нужны, но
> > их нет -- дописываются в /etc/modules.
> Можно подробнее ? Какие модули прописываются и где их нет ?

Только лучше не /etc/modules, а что-то включаемое.

> > При штатной работе (без обновлений libhw, ядра, добавления
> > железа) coldplug не будет делать ничего.
> А когда он будет выполняться ?

Вместо kudzu, около (не знаю, перед/после) hotplug?

> Мне не совсем понятна схема его работы.

В hotplug@ вот чего надумали:

http://lists.osdn.org.ua/wws/arc/hotplug/2005-06/msg00006.html
http://lists.osdn.org.ua/wws/arc/hotplug/2005-06/msg00014.html
http://lists.osdn.org.ua/wws/arc/hotplug/2005-06/msg00017.html
http://lists.osdn.org.ua/wws/arc/hotplug/2005-08/msg00002.html

> Что будет происходить в случае, когда:

И придумали схему, когда:

> - модуль переименовался в новом ядре

Перестраивается кэш соответствий ID<->modname

> - модуль исчез в новом ядре

Предполагается кэш с учётом `uname -r`, так что обновление ядра
автоматически приводит к инвалидации /кэша/.

> - сменили железо
> - удалили железо
> - добавили железо

Комбинация инициализации "как обычно" и исчезновения модуля
(ломание мостика ID<->modname)

> и т.д.

И т.п.

> Что будет делаться для:
> - не PCI устройств (PNP, USB, CPU и т.д.)

ISA PnP -- я склонен фиксировать конфигурацию и изменения
производить исключительно пинком обновлялки (ср. sndconfig).
Потому что дорого по времени и более чревато зависаниями.

CPU -- не знаю, не требовалось.

USB -- как раз территория _hotplug_.  См. третью ссылку из пачки
выше.

> - упорядочивания загрузки модулей (актуально для USB, например)

Для PCI тоже актуально (звук/сеть; обсуждение -- ссылки выше):

https://bugzilla.altlinux.org/show_bug.cgi?id=7085
https://bugzilla.altlinux.org/show_bug.cgi?id=6830

На самом деле может ещё потребоваться "дробный" *plug -- с тем,
чтобы на стадии "доступен /" иметь списки драйверов (кэш), но
инициировать загрузку их из соответствующих rc/initscripts.

Это может помочь решить проблемы:

- необходимость /usr для настроечных скриптов подсистемы, который
  бывает сетевой (для чего нужен загруженный модуль интерфейса и 
  отработавший ifup);
- один из втыкаемых hotplug "по площади" модулей вешает систему
  (отключение сервиса);
- недостаточной управляемости (тот же порядок устройств) и
  перегруженности системы невостребованными модулями.

Не уверен, что не создаст больше проблем, это сырая мысль,
которая возникла только что (но вспоминая обсуждение темы
USB-устройств и /usr в alsa-devel@).

> - добавления параметров модулям

Автоматического -- можно в кэш-файл (заодно изменение
автонастроек сможет производиться обновлением ядра).

Ручного -- чем-то, куда modprobe смотрит после кэша.

> и т.д.


PS: время на эту подсистему выделить можно, только если мы этим
будем заниматься не когда нам удобно, то надо бы понять сроки и
задачи, которые берёмся порешать.  Всё на вчера -- не бывает,
а Дед Лайн, про которого я слышал, был на днях.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [devel] coldplug
  2005-08-30  9:24     ` [devel] coldplug Igor Tertishny
@ 2005-08-30 11:14       ` Denis Smirnov
  2005-08-30 11:47         ` [devel] coldplug Michael Shigorin
  0 siblings, 1 reply; 22+ messages in thread
From: Denis Smirnov @ 2005-08-30 11:14 UTC (permalink / raw)
  To: ilar; +Cc: devel

Igor Tertishny wrote:

>Имхо, крайне полезная вещь. Даже больше, чем полезная. Не раз наступал на 
>грабли при смене железа. Еще бы какой инструмент, срабатывающий при смене 
>видеокарты и вызывающий прогу настройки... Недавно менял, пришлось все 
>ручками править, иначе никак не получалось.
>  
>
Какое действие должно производиться при смене видеокарты? Какие скрипты 
запускаться, и т.д. Если скажете -- напишу такой скрипт.



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [devel] Re: coldplug/warmplug
  2005-08-30 10:41       ` [devel] Re: coldplug/warmplug Michael Shigorin
@ 2005-08-30 11:20         ` Денис Смирнов
  2005-08-30 11:50           ` Michael Shigorin
  2005-08-30 11:40         ` [devel] Re: [hotplug] " Sviataslau Svirydau
  1 sibling, 1 reply; 22+ messages in thread
From: Денис Смирнов @ 2005-08-30 11:20 UTC (permalink / raw)
  To: devel

On Tue, Aug 30, 2005 at 01:41:49PM +0300, Michael Shigorin wrote:

MS> При том, что нет фиксации состояния и есть повышенная
MS> неопределённость.  Администраторы *NIX склонны это воспринимать 
MS> в штыки :-)
MS> Денис, не тормози :-)

Миша, сейчас буду учить тебя пользоваться vim'ом :)

coldplug как раз _фиксирует_ состояние в /etc/modules, и исключительно для
этого и сделан. Иначе можно просто pciscan -r | xargs -n1 modprobe
запускать в rc.local, и не парить себе мозги.

>>> При каждой загрузки загружаются все модули из /etc/modules.
>>> Кроме этого те модули, который с точки зрения libhw нужны, но
>>> их нет -- дописываются в /etc/modules.
>> Можно подробнее ? Какие модули прописываются и где их нет ?
MS> Только лучше не /etc/modules, а что-то включаемое.

А у нас такое есть? IMHO без обоснования необходимости лучше данные по
нескольким конфигам не распихивать.

>>> При штатной работе (без обновлений libhw, ядра, добавления
>>> железа) coldplug не будет делать ничего.
>> А когда он будет выполняться ?
MS> Вместо kudzu, около (не знаю, перед/после) hotplug?

IMHO -- перед.

-- 
С уважением, Денис

http://freesource.info
----------------------------------------------------------------------------
<Pilot> смотрю: на одной панели /usr и на другой панели /usr. дай, думаю, один удалю, зачем мне два?


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [devel] Re: coldplug
  2005-08-30  9:21     ` [devel] coldplug Anton Farygin
  2005-08-30 10:41       ` [devel] Re: coldplug/warmplug Michael Shigorin
@ 2005-08-30 11:23       ` Денис Смирнов
  2005-08-30 12:35         ` [devel] " Anton Farygin
  1 sibling, 1 reply; 22+ messages in thread
From: Денис Смирнов @ 2005-08-30 11:23 UTC (permalink / raw)
  To: devel

On Tue, Aug 30, 2005 at 01:21:01PM +0400, Anton Farygin wrote:

AF> Можно подробнее ? Какие модули прописываются и где их нет ?

Проще прочитать код, чем моё объяснение -- там несколько строк на шелле :)

Если с точки зрения pciscan модуль должен быть загружен, а в /etc/modules
его нет -- добавляем.

>> При штатной работе (без обновлений libhw,
>> ядра, добавления железа) coldplug не будет
>> делать ничего.
AF> А когда он будет выполняться ?

При загрузке.

AF> Мне не совсем понятна схема его работы.
AF> Что будет происходить в случае, когда:
AF> - модуль переименовался в новом ядре
AF> - модуль исчез в новом ядре
AF> - сменили железо
AF> - удалили железо
AF> - добавили железо
AF> и т.д.

Ему пофиг, он pciscan допрашивает. Если модуль переименовали или железо
удалили, то будет лишняя загрузка модуля.

AF> Что будет делаться для:
AF> - не PCI устройств (PNP, USB, CPU и т.д.)
AF> - упорядочивания загрузки модулей (актуально для USB, например)
AF> - добавления параметров модулям

А этим пущай hotplug занимается, он умный. Моя игрушка только для
упрощения установки серверов, там мне на USB плевать. И на PNP, вместе с
CPU -- тоже.

И единственное её преимущество -- выполнение своей узкой задачи с большой
степенью гарантии, ибо проста.

-- 
С уважением, Денис

http://freesource.info
----------------------------------------------------------------------------
Регулярные выражения --- удивительно удобный и гибкий механизм. Вы
только попробуйте им воспользоваться --- сами не заметите как
начнёте постоянно регулярно выражаться.
		-- avp in oo-discuss@


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: [hotplug] Re: coldplug/warmplug
  2005-08-30 10:41       ` [devel] Re: coldplug/warmplug Michael Shigorin
  2005-08-30 11:20         ` Денис Смирнов
@ 2005-08-30 11:40         ` Sviataslau Svirydau
  1 sibling, 0 replies; 22+ messages in thread
From: Sviataslau Svirydau @ 2005-08-30 11:40 UTC (permalink / raw)
  To: devel

Michael Shigorin wrote:

>...
>В hotplug@ вот чего надумали:
>
>http://lists.osdn.org.ua/wws/arc/hotplug/2005-06/msg00006.html
>http://lists.osdn.org.ua/wws/arc/hotplug/2005-06/msg00014.html
>http://lists.osdn.org.ua/wws/arc/hotplug/2005-06/msg00017.html
>http://lists.osdn.org.ua/wws/arc/hotplug/2005-08/msg00002.html
>

Кстати, вот совершенно случайно наткнулся... немного в сторону, но все
же связано с...

[http://www.ubuntulinux.org/removed_items/ReleaseNotes504]
grepmap
grepmap has been used to improve the speed of the hotplug system, which
allows you to 'hot-swap' devices such as USB devices and IEEE
1394/firewire devices.

[https://launchpad.net/products/grepmap]
A utility to parse the map files produced by the depmod tool in the
module-init-tools package and output the list of modules you should load
for a device.

[http://www.mail-archive.com/debian-bugs-closed@lists.debian.org/msg22399.html]
Bug#318426: marked as done (hotplug: Please support grepmap for faster
start up)
Debian Bug Tracking System
Fri, 15 Jul 2005 10:02:37 -0700

Кажется, в контексте сизифа grepmap еще не упоминался...





^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: coldplug
  2005-08-30 11:14       ` Denis Smirnov
@ 2005-08-30 11:47         ` Michael Shigorin
  0 siblings, 0 replies; 22+ messages in thread
From: Michael Shigorin @ 2005-08-30 11:47 UTC (permalink / raw)
  To: devel

On Tue, Aug 30, 2005 at 03:14:10PM +0400, Denis Smirnov wrote:
> >Имхо, крайне полезная вещь. Даже больше, чем полезная. Не раз
> >наступал на грабли при смене железа. Еще бы какой инструмент,
> >срабатывающий при смене видеокарты и вызывающий прогу
> >настройки... Недавно менял, пришлось все ручками править,
> >иначе никак не получалось.
> Какое действие должно производиться при смене видеокарты?
> Какие скрипты запускаться, и т.д. Если скажете -- напишу
> такой скрипт.

Текстовый (curses/dumb) интерфейс реконфигурирования X.
Непосредственно сейчас науке не известен, ~80% задачи -- 
выставление правильного Driver или откат на vesa.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: coldplug/warmplug
  2005-08-30 11:20         ` Денис Смирнов
@ 2005-08-30 11:50           ` Michael Shigorin
  2005-08-30 13:13             ` Денис Смирнов
  0 siblings, 1 reply; 22+ messages in thread
From: Michael Shigorin @ 2005-08-30 11:50 UTC (permalink / raw)
  To: devel; +Cc: hotplug

On Tue, Aug 30, 2005 at 03:20:18PM +0400, Денис Смирнов wrote:
> >>> При каждой загрузки загружаются все модули из /etc/modules.
> >>> Кроме этого те модули, который с точки зрения libhw нужны,
> >>> но их нет -- дописываются в /etc/modules.
> >> Можно подробнее ? Какие модули прописываются и где их нет ?
> MS> Только лучше не /etc/modules, а что-то включаемое.
> А у нас такое есть? IMHO без обоснования необходимости лучше
> данные по нескольким конфигам не распихивать.

Есть -- это генерат, а не рукоприкладство.  Их всегда было проще
разделять, чем разбирать (особенно если делать сразу, а не лечить
клинику вроде fstab).

> >>> При штатной работе (без обновлений libhw, ядра, добавления
> >>> железа) coldplug не будет делать ничего.
> >> А когда он будет выполняться ?
> MS> Вместо kudzu, около (не знаю, перед/после) hotplug?
> IMHO -- перед.

Мне тоже так кажется, но ещё не знаю, стоит ли думать/пробовать
дальше в сторону разнесения постановки задачи (=> список модулей) 
и исполнения (загрузка их).  От этого тоже зависит.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: Re: coldplug
  2005-08-30 11:23       ` [devel] Re: coldplug Денис Смирнов
@ 2005-08-30 12:35         ` Anton Farygin
  2005-08-30 14:37           ` Денис Смирнов
  0 siblings, 1 reply; 22+ messages in thread
From: Anton Farygin @ 2005-08-30 12:35 UTC (permalink / raw)
  To: devel

On Tue, 30 Aug 2005 15:23:42 +0400, Денис Смирнов wrote:

> On Tue, Aug 30, 2005 at 01:21:01PM +0400, Anton Farygin wrote:
> 
> AF> Можно подробнее ? Какие модули
> прописываются и где их нет ?
> 
> Проще прочитать код, чем моё объяснение
> -- там несколько строк на шелле :)
> 
> Если с точки зрения pciscan модуль должен
> быть загружен, а в /etc/modules его нет --
> добавляем.
> 
>>> При штатной работе (без обновлений libhw,
>>> ядра, добавления железа) coldplug не будет
>>> делать ничего.
> AF> А когда он будет выполняться ?
> 
> При загрузке.
> 
> AF> Мне не совсем понятна схема его
> работы. AF> Что будет происходить в
> случае, когда: AF> - модуль переименовался
> в новом ядре AF> - модуль исчез в новом
> ядре AF> - сменили железо
> AF> - удалили железо
> AF> - добавили железо
> AF> и т.д.
> 
> Ему пофиг, он pciscan допрашивает. Если
> модуль переименовали или железо
> удалили, то будет лишняя загрузка
> модуля.

Ясно. Бывает к сожалению так, что лишняя
загрузка модуля приводит к большим проблемам.

В hotplug это решается с помощью черных списков.

> 
> AF> Что будет делаться для: AF> - не PCI
> устройств (PNP, USB, CPU и т.д.) AF> -
> упорядочивания загрузки модулей
> (актуально для USB, например) AF> -
> добавления параметров модулям
> 
> А этим пущай hotplug занимается, он умный.
> Моя игрушка только для упрощения
> установки серверов, там мне на USB
> плевать. И на PNP, вместе с CPU -- тоже.

Ааа.. я думал это нормальное решение.

Понятно.

Только я не понимаю зачем тогда это
вообще нужно и чем не устраивал текущий вариант.

> 
> И единственное её преимущество --
> выполнение своей узкой задачи с
> большой степенью гарантии, ибо проста.

так и здесь все очень просто ;-)

Rgds,
Rider



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [devel] Re: coldplug/warmplug
  2005-08-30 11:50           ` Michael Shigorin
@ 2005-08-30 13:13             ` Денис Смирнов
  2005-08-30 13:56               ` Michael Shigorin
  0 siblings, 1 reply; 22+ messages in thread
From: Денис Смирнов @ 2005-08-30 13:13 UTC (permalink / raw)
  To: devel

On Tue, Aug 30, 2005 at 02:50:35PM +0300, Michael Shigorin wrote:

MS> Есть -- это генерат, а не рукоприкладство.  Их всегда было проще
MS> разделять, чем разбирать (особенно если делать сразу, а не лечить
MS> клинику вроде fstab).

Звучит логично.
Только, опять же, очень важным является порядок загрузки модулей. Поэтому
лично я у себя предпочитаю видеть их в виде одного списка, до тех пор пока
не написал неестественный интеллект думающий о порядке :)

Есть и ещё одна причина, почему я сделал именно так -- сейчас из
/etc/modules модули загружаются всегда. Пока нет /etc/modules.d, любой
другой вариант менее надёжен.

MS> Мне тоже так кажется, но ещё не знаю, стоит ли думать/пробовать
MS> дальше в сторону разнесения постановки задачи (=> список модулей) 
MS> и исполнения (загрузка их).  От этого тоже зависит.

Правильно -- переписывать с нуля hotplug, предварительно сформировав ТЗ на
него. И в нём реализовать в том числе такой режим работы.

-- 
С уважением, Денис

http://freesource.info
----------------------------------------------------------------------------
Я бы предпочёл, чтобы специалисты думали прежде чем обновлять, а все
остальные ставили всё, что есть в updates, даже без анонса.
		-- ldv in community@


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: coldplug/warmplug
  2005-08-30 13:13             ` Денис Смирнов
@ 2005-08-30 13:56               ` Michael Shigorin
  2005-08-30 14:27                 ` Denis Smirnov
  0 siblings, 1 reply; 22+ messages in thread
From: Michael Shigorin @ 2005-08-30 13:56 UTC (permalink / raw)
  To: devel
  Cc: Денис
	Смирнов

On Tue, Aug 30, 2005 at 05:13:24PM +0400, Денис Смирнов wrote:
> Только, опять же, очень важным является порядок загрузки
> модулей. Поэтому лично я у себя предпочитаю видеть их в виде
> одного списка, до тех пор пока не написал неестественный
> интеллект думающий о порядке :)

Мне тоже важно, но пока только в случаях "звук" и "сеть".
После появления etcnet -- скорее первое, чем второе.

> Есть и ещё одна причина, почему я сделал именно так -- сейчас
> из /etc/modules модули загружаются всегда. Пока нет
> /etc/modules.d, любой другой вариант менее надёжен.

/etc/modutils.d/ работает уже оочень давно :-)

> Правильно -- переписывать с нуля hotplug, предварительно
> сформировав ТЗ на него. И в нём реализовать в том числе такой
> режим работы.

С другой стороны, это может налететь на несоответствие
генеральной линии политики партии в лице upstream и вылиться 
в существенные потери времени для выхода из ситуации.

Может, я тупой, но пока впечатление такое, что состояние дел 
с планированием развития hotplug и около -- "в головах" ещё 
в худшей степени, чем linux kernel... а вокруг форки растут.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: coldplug/warmplug
  2005-08-30 13:56               ` Michael Shigorin
@ 2005-08-30 14:27                 ` Denis Smirnov
  0 siblings, 0 replies; 22+ messages in thread
From: Denis Smirnov @ 2005-08-30 14:27 UTC (permalink / raw)
  To: shigorin; +Cc: devel

Michael Shigorin wrote:

>Может, я тупой, но пока впечатление такое, что состояние дел 
>с планированием развития hotplug и около -- "в головах" ещё 
>в худшей степени, чем linux kernel... а вокруг форки растут.
>  
>
Именно поэтому я сейчас считаю адекватным успокоиться и потихоньку 
формировать ТЗ на хотплаг, дотачивая то что имеется.

Ну и, чтобы геморрой лишний не иметь, прикрыться простыми местечковыми 
хаками вроде моего coldplug.



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [devel] Re: Re: coldplug
  2005-08-30 12:35         ` [devel] " Anton Farygin
@ 2005-08-30 14:37           ` Денис Смирнов
  2005-08-30 14:52             ` [devel] " Anton Farygin
  0 siblings, 1 reply; 22+ messages in thread
From: Денис Смирнов @ 2005-08-30 14:37 UTC (permalink / raw)
  To: devel

On Tue, Aug 30, 2005 at 04:35:23PM +0400, Anton Farygin wrote:

AF> Только я не понимаю зачем тогда это
AF> вообще нужно и чем не устраивал текущий вариант.

Не меняется поведение системы при обновлении libhw. Если модуль грузился
-- он и будет грузиться.

-- 
С уважением, Денис

http://freesource.info
----------------------------------------------------------------------------
>А что, он [fdisk] с неких пор научился увеличивать объём диска :)? 
давно уже.
кнопка "d" увеличивает свободное пространство вплоть до физических
пределов винта.
		-- avl in sisyphus@


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: Re: Re: coldplug
  2005-08-30 14:37           ` Денис Смирнов
@ 2005-08-30 14:52             ` Anton Farygin
  2005-08-30 15:30               ` Денис Смирнов
  0 siblings, 1 reply; 22+ messages in thread
From: Anton Farygin @ 2005-08-30 14:52 UTC (permalink / raw)
  To: devel

On Tue, 30 Aug 2005 18:37:07 +0400, Денис Смирнов wrote:

> On Tue, Aug 30, 2005 at 04:35:23PM +0400, Anton Farygin wrote:
> 
> AF> Только я не понимаю зачем тогда это AF>
> вообще нужно и чем не устраивал текущий
> вариант.
> 
> Не меняется поведение системы при
> обновлении libhw. Если модуль грузился -- он
> и будет грузиться.

Так и сейчас точно так же происходит ;-)

Или ты планируешь сервера держать на нестабильной копии ?

Rgds,
Rider



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [devel] Re: Re: Re: coldplug
  2005-08-30 14:52             ` [devel] " Anton Farygin
@ 2005-08-30 15:30               ` Денис Смирнов
  2005-08-30 15:48                 ` [devel] " Anton Farygin
  0 siblings, 1 reply; 22+ messages in thread
From: Денис Смирнов @ 2005-08-30 15:30 UTC (permalink / raw)
  To: devel

On Tue, Aug 30, 2005 at 06:52:32PM +0400, Anton Farygin wrote:

AF> Так и сейчас точно так же происходит ;-)

Ага, щаззз.

AF> Или ты планируешь сервера держать на нестабильной копии ?

Машины, надёжность которых не критична -- таки да, для тестирования.

-- 
С уважением, Денис

http://freesource.info
----------------------------------------------------------------------------
У нас _очень_ хороший майнтейнер ядра, грех этим не пользоваться,
особенно когда не требуется чего-то очень специфического ;-)
		-- mike in community@


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: Re: Re: Re: coldplug
  2005-08-30 15:30               ` Денис Смирнов
@ 2005-08-30 15:48                 ` Anton Farygin
  2005-08-30 15:54                   ` [devel] " Michael Shigorin
  0 siblings, 1 reply; 22+ messages in thread
From: Anton Farygin @ 2005-08-30 15:48 UTC (permalink / raw)
  To: ALT Devel discussion list

On Tue, 30 Aug 2005 19:30:09 +0400, Денис Смирнов wrote:

> On Tue, Aug 30, 2005 at 06:52:32PM +0400, Anton Farygin wrote:
> 
> AF> Так и сейчас точно так же происходит ;-)
> 
> Ага, щаззз.
> 
> AF> Или ты планируешь сервера держать на
> нестабильной копии ?
> 
> Машины, надёжность которых не критична --
> таки да, для тестирования.

Ну а как тогда тестировать новые версии libhw ? ;-)

Rgds,
Rider



^ permalink raw reply	[flat|nested] 22+ messages in thread

* [devel] Re: coldplug
  2005-08-30 15:48                 ` [devel] " Anton Farygin
@ 2005-08-30 15:54                   ` Michael Shigorin
  0 siblings, 0 replies; 22+ messages in thread
From: Michael Shigorin @ 2005-08-30 15:54 UTC (permalink / raw)
  To: ALT Devel discussion list

On Tue, Aug 30, 2005 at 07:48:16PM +0400, Anton Farygin wrote:
> > AF> Или ты планируешь сервера держать на
> > AF> нестабильной копии ?

(хотя мама предупреждала :)

> > Машины, надёжность которых не критична --
> > таки да, для тестирования.
> Ну а как тогда тестировать новые версии libhw ? ;-)

По-хорошему -- в дифференциальном режиме с педалью, бишь есть
последнее состояние, обновили, пнули в педаль с ключом -n,
посмотрели diff, при несогласии закинули багу.

По-среднему -- пнули в педаль, обрадовались или огребли,
поехали дальше. :)

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2005-08-30 15:54 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-08-30  8:29 [devel] coldplug Денис Смирнов
2005-08-30  8:45 ` Denis Ovsienko
2005-08-30  9:00   ` Денис Смирнов
2005-08-30  9:21     ` [devel] coldplug Anton Farygin
2005-08-30 10:41       ` [devel] Re: coldplug/warmplug Michael Shigorin
2005-08-30 11:20         ` Денис Смирнов
2005-08-30 11:50           ` Michael Shigorin
2005-08-30 13:13             ` Денис Смирнов
2005-08-30 13:56               ` Michael Shigorin
2005-08-30 14:27                 ` Denis Smirnov
2005-08-30 11:40         ` [devel] Re: [hotplug] " Sviataslau Svirydau
2005-08-30 11:23       ` [devel] Re: coldplug Денис Смирнов
2005-08-30 12:35         ` [devel] " Anton Farygin
2005-08-30 14:37           ` Денис Смирнов
2005-08-30 14:52             ` [devel] " Anton Farygin
2005-08-30 15:30               ` Денис Смирнов
2005-08-30 15:48                 ` [devel] " Anton Farygin
2005-08-30 15:54                   ` [devel] " Michael Shigorin
2005-08-30  9:24     ` [devel] coldplug Igor Tertishny
2005-08-30 11:14       ` Denis Smirnov
2005-08-30 11:47         ` [devel] coldplug Michael Shigorin
2005-08-30  9:46   ` 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