ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] IA: udev-105-alt1 - hotplug slowly dies
@ 2007-02-08 17:56 Sergey Vlasov
  2007-02-09  8:31 ` Victor Forsyuk
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Sergey Vlasov @ 2007-02-08 17:56 UTC (permalink / raw)
  To: sisyphus; +Cc: devel

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

Hello!

В Сизиф отправлен пакет udev-105-alt1, в котором произошло несколько
заметных изменений.

Прежде всего, полностью изменён механизм автоматической загрузки
модулей для поддержки обнаруженных устройств.  Если раньше udevd
вызывал для каждого устройства скрипты из пакета hotplug, которые и
занимались поиском модулей с использованием утилит из libhw-tools,
теперь используется новый механизм, присутствующий в ядрах 2.6.x -
большинство устройств имеют атрибут modalias, значение которого
описывает идентификатор устройства (PCI ID, USB ID, ...); для загрузки
нужных модулей достаточно передать этот modalias программе modprobe,
которая найдёт модули, имеющие алиасы, соответствующие этому
идентификатору.  Теперь правило udev для загрузки нужных модулей
выглядит очень просто (в /etc/udev/rules.d/20-hotplug-modprobe.rules):

SUBSYSTEM=="?*", ENV{MODALIAS}=="?*", RUN+="/sbin/modprobe $env{MODALIAS}"

(ещё есть проверка на ACTION=="add", которая в этом файле общая для
нескольких правил).

Этот механизм работает заметно быстрее старых скриптов hotplug, а
также не требует изменений при появлении новых типов устройств
(достаточно реализации в ядре формирования modalias и соответствующих
алиасов для модулей).

В связи с изменением механизма загрузки модулей меняется и способ
запрета автоматической загрузки модулей.  Если раньше имена мешающих
модулей нужно было заносить в файл /etc/hotplug/blacklist, теперь
вместо этого нужно добавлять команды "blacklist <модуль>" в
конфигурацию modprobe - например, в /etc/modprobe.d/blacklist-local
(лучше создать отдельный файл, чем модифицировать файлы, поставляемые
вместе с пакетами).  В файлах /etc/hotplug/blacklist-* уже содержится
некоторое количество записей, которые в основном покрывают начальное
содержимое /etc/hotplug/blacklist; если же в /etc/hotplug/blacklist
вносились дополнения, его содержимое будет преобразовано в
/etc/modprobe.d/blacklist-autoconverted при обновлении пакета
modprobe.

Совсем избавиться от пакета hotplug в этой сборке не удалось; более
того, отключать сервис hotplug полностью тоже пока не стоит, однако в
/etc/sysconfig/hotplug можно оставить в переменной HOTPLUGRC только
cpu.rc sound.rc acpi.rc:

 - cpu.rc - загрузка модулей cpufreq (впрочем, этот скрипт в текущем
   состоянии не очень полезен - возможно, его лучше удалить и
   пользоваться чем-то другим);

 - sound.rc - действия, выполняемые при загрузке, в данном случае не
   особо полезны, а вот при завершении работы этот скрипт сохраняет
   состояние микшера, которое потом будет восстановлено при
   обнаружении звуковых устройств;

 - acpi.rc - загрузка модулей ACPI (в частности, button для получения
   событий о нажатии кнопок питания и спящего режима).

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

Ещё одно заметное изменение в пакете udev - добавлен сервис
udevd-final, который запускается с тем же приоритетом, что и старый
сервис hotplug.  В настоящее время единственная функция, которую
выполняет этот сервис - запуск повторной обработки событий, при
обработке которых ранее произошла ошибка (одна из программ, указанных
в правилах в списке RUN, вернула ненулевой статус).  Это, в частности,
решает проблему с неработоспособностью сетевых интерфейсов, для
которых в конфигурации etcnet было установлено USE_HOTPLUG=yes
(проблема возникала из-за того, что udevd запускается раньше сервиса
network, когда активизировать сетевые интерфейсы нежелательно; раньше
такие события просто пропадали; теперь сервис udevd-final обрабатывает
их повторно в тот момент, когда они могут быть обработаны правильно).

Менее заметные изменения:

 - Добавлено создание символических ссылок /dev/disk/by-uuid/* и
   /dev/disk/by-label/* для устройств, управляемых через device mapper
   (LVM2, EVMS); впрочем, эти правила особо не тестировались.

 - Добавлены вызовы /sbin/pam_console_apply - теперь при обработке
   событий не должны портиться права доступа к устройствам, которыми
   управляет pam_console.

 - Убрано отмонтирование /dev при останове сервиса (от него слишком
   много ломается).  По этой причине обновить пакет dev, пользуясь
   советом из его скрипта %pre, теперь не получится - нужно будет,
   например, переместить /dev в другое место через mount -n --move, а
   после обновления вернуть назад.

 - Восстановлено нормальное поведение udevd как сервиса - перезапуск
   после обновления пакета.  Правда, при этом выполняется повторная
   обработка всех событий (для обработки ситуации, когда правила
   существенно изменились), в результате возможны некоторые побочные
   эффекты (например, восстановление состояния микшера в то, которое
   было сохранено при предыдущем завершении работы системы).  С другой
   стороны, это изменение устраняет другие неприятные проблемы
   (например, неработоспособность udevcontrol после обновления).

Наконец, в пакет udev были внесены изменения с целью добавления
поддержки initramfs в mkinitrd - о них подробнее в отдельном письме,
посвящённом mkinitrd-3.0.0-alt1 (на функционирование системы после
загрузки эти изменения не влияют).

-- 
Sergey Vlasov

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [devel] IA: udev-105-alt1 - hotplug slowly dies
  2007-02-08 17:56 [devel] IA: udev-105-alt1 - hotplug slowly dies Sergey Vlasov
@ 2007-02-09  8:31 ` Victor Forsyuk
  2007-02-09  8:37   ` Stanislav Ievlev
  2007-02-09 10:24 ` Valery V. Inozemtsev
  2007-02-11 20:56 ` [devel] udev-105-alt2 - bugfixes Sergey Vlasov
  2 siblings, 1 reply; 14+ messages in thread
From: Victor Forsyuk @ 2007-02-09  8:31 UTC (permalink / raw)
  To: ALT Devel discussion list

On Thu, Feb 08, 2007 at 08:56:25PM +0300, Sergey Vlasov <vsu@altlinux.ru> wrote:
> Hello!
> 
> В Сизиф отправлен пакет udev-105-alt1, в котором произошло несколько
> заметных изменений.

# rpm -q udev
udev-103-alt1
# rpm -q --requires udev|grep net
#

Киндер-сюрприз:

$ rpm -qp --requires udev-105-alt1.i586.rpm |grep net
etcnet

net-scripts - R.I.P ?




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

* Re: [devel] IA: udev-105-alt1 - hotplug slowly dies
  2007-02-09  8:31 ` Victor Forsyuk
@ 2007-02-09  8:37   ` Stanislav Ievlev
  2007-02-09 13:22     ` Victor Forsyuk
  0 siblings, 1 reply; 14+ messages in thread
From: Stanislav Ievlev @ 2007-02-09  8:37 UTC (permalink / raw)
  To: ALT Devel discussion list

On Fri, Feb 09, 2007 at 10:31:13AM +0200, Victor Forsyuk wrote:
> On Thu, Feb 08, 2007 at 08:56:25PM +0300, Sergey Vlasov <vsu@altlinux.ru> wrote:
> > Hello!
> > 
> > В Сизиф отправлен пакет udev-105-alt1, в котором произошло несколько
> > заметных изменений.
> 
> # rpm -q udev
> udev-103-alt1
> # rpm -q --requires udev|grep net
> #
> 
> Киндер-сюрприз:
> 
> $ rpm -qp --requires udev-105-alt1.i586.rpm |grep net
> etcnet
> 
> net-scripts - R.I.P ?
Давно бы их туда.



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

* Re: [devel] IA: udev-105-alt1 - hotplug slowly dies
  2007-02-08 17:56 [devel] IA: udev-105-alt1 - hotplug slowly dies Sergey Vlasov
  2007-02-09  8:31 ` Victor Forsyuk
@ 2007-02-09 10:24 ` Valery V. Inozemtsev
  2007-02-09 11:30   ` Sergey Vlasov
  2007-02-11 20:56 ` [devel] udev-105-alt2 - bugfixes Sergey Vlasov
  2 siblings, 1 reply; 14+ messages in thread
From: Valery V. Inozemtsev @ 2007-02-09 10:24 UTC (permalink / raw)
  To: sisyphus, devel

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

В сообщении от 8 февраля 2007 Sergey Vlasov написал(a):
> Hello!
>
> В Сизиф отправлен пакет udev-105-alt1, в котором произошло несколько
> заметных изменений.
...
>  - sound.rc - действия, выполняемые при загрузке, в данном случае не
>    особо полезны, а вот при завершении работы этот скрипт сохраняет
>    состояние микшера, которое потом будет восстановлено при
>    обнаружении звуковых устройств;

remove ты зря убрал. во первых есть ноуты, у которых при засыпании модули 
звуковухи могут выгружаться (например snd-intel8x0 не поддерживает 
засыпание). во вторых на обычных десктопах мы сейчас получаем всегда 
дефолтные установки микшера. сохранять настройки можно при остановке например 
udev-final примерно следующим способом
export DEVPATH=$(udevtrigger --dry-run --verbose --subsystem-match=sound | 
grep controlC)
export ACTION=remove
/lib/udev/sound.agent

...
> Ещё одно заметное изменение в пакете udev - добавлен сервис
> udevd-final, который запускается с тем же приоритетом, что и старый
> сервис hotplug.  В настоящее время единственная функция, которую
> выполняет этот сервис - запуск повторной обработки событий, при
> обработке которых ранее произошла ошибка (одна из программ, указанных
> в правилах в списке RUN, вернула ненулевой статус).  Это, в частности,
> решает проблему с неработоспособностью сетевых интерфейсов, для
> которых в конфигурации etcnet было установлено USE_HOTPLUG=yes
> (проблема возникала из-за того, что udevd запускается раньше сервиса
> network, когда активизировать сетевые интерфейсы нежелательно; раньше
> такие события просто пропадали; теперь сервис udevd-final обрабатывает
> их повторно в тот момент, когда они могут быть обработаны правильно).

$ rpmquery -R udev | grep etcnet
etcnet

после чего вызывает некоторое недоумение содержимое /lib/udev/net.agent с 
поддержкой net-scripts

...

Еще в 20-hotplug-modprobe.rules есть следующее:
SUBSYSTEM=="pcmcia_socket", RUN+="/sbin/modprobe -b pcmcia"
это совершенно не нужно, т.к. находится в 60-pcmcia.rules из пакета 
pcmciautils

-- 
Valery V. Inozemtsev

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [devel] IA: udev-105-alt1 - hotplug slowly dies
  2007-02-09 10:24 ` Valery V. Inozemtsev
@ 2007-02-09 11:30   ` Sergey Vlasov
  2007-02-09 12:04     ` [devel] [sisyphus] " Valery V. Inozemtsev
  0 siblings, 1 reply; 14+ messages in thread
From: Sergey Vlasov @ 2007-02-09 11:30 UTC (permalink / raw)
  To: sisyphus, devel

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

On Fri, Feb 09, 2007 at 01:24:16PM +0300, Valery V. Inozemtsev wrote:
> В сообщении от 8 февраля 2007 Sergey Vlasov написал(a):
> > Hello!
> >
> > В Сизиф отправлен пакет udev-105-alt1, в котором произошло несколько
> > заметных изменений.
> ...
> >  - sound.rc - действия, выполняемые при загрузке, в данном случае не
> >    особо полезны, а вот при завершении работы этот скрипт сохраняет
> >    состояние микшера, которое потом будет восстановлено при
> >    обнаружении звуковых устройств;
> 
> remove ты зря убрал. во первых есть ноуты, у которых при засыпании модули 
> звуковухи могут выгружаться (например snd-intel8x0 не поддерживает 
> засыпание).

Тогда то, что выгружает эти модули, должно перед этим самостоятельно
сохранить настройки.  Сохранять состояние в обработчике remove,
вызываемом из udevd, уже поздно - в этот момент устройство уже
уничтожено.

> во вторых на обычных десктопах мы сейчас получаем всегда 
> дефолтные установки микшера.

По этому поводу я и написал о необходимости sound.rc...

> сохранять настройки можно при остановке например 
> udev-final примерно следующим способом
> export DEVPATH=$(udevtrigger --dry-run --verbose --subsystem-match=sound | 
> grep controlC)
> export ACTION=remove
> /lib/udev/sound.agent

В принципе можно запихать это и в udevd-final.  Можно туда же засунуть
и загрузку модулей ACPI, но не уверен, что это правильно.

> $ rpmquery -R udev | grep etcnet
> etcnet

Эта зависимость появилась случайно и будет убрана.

> после чего вызывает некоторое недоумение содержимое /lib/udev/net.agent с 
> поддержкой net-scripts
> 
> ...
> 
> Еще в 20-hotplug-modprobe.rules есть следующее:
> SUBSYSTEM=="pcmcia_socket", RUN+="/sbin/modprobe -b pcmcia"
> это совершенно не нужно, т.к. находится в 60-pcmcia.rules из пакета 
> pcmciautils

Там просто были собраны в одну кучу правила для поддержки не совсем
правильно работающих подсистем ядра (не предоставляющих modalias).
Хорошо, уберу pcmcia из этой кучи.

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [devel] [sisyphus]  IA: udev-105-alt1 - hotplug slowly dies
  2007-02-09 11:30   ` Sergey Vlasov
@ 2007-02-09 12:04     ` Valery V. Inozemtsev
  2007-02-09 14:30       ` Sergey Vlasov
  0 siblings, 1 reply; 14+ messages in thread
From: Valery V. Inozemtsev @ 2007-02-09 12:04 UTC (permalink / raw)
  To: devel

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

В сообщении от 9 февраля 2007 Sergey Vlasov написал(a):
> On Fri, Feb 09, 2007 at 01:24:16PM +0300, Valery V. Inozemtsev wrote:
> > В сообщении от 8 февраля 2007 Sergey Vlasov написал(a):
> > > Hello!
> > >
> > > В Сизиф отправлен пакет udev-105-alt1, в котором произошло несколько
> > > заметных изменений.
> >
> > ...
> >
> > >  - sound.rc - действия, выполняемые при загрузке, в данном случае не
> > >    особо полезны, а вот при завершении работы этот скрипт сохраняет
> > >    состояние микшера, которое потом будет восстановлено при
> > >    обнаружении звуковых устройств;
> >
> > remove ты зря убрал. во первых есть ноуты, у которых при засыпании модули
> > звуковухи могут выгружаться (например snd-intel8x0 не поддерживает
> > засыпание).
>
> Тогда то, что выгружает эти модули, должно перед этим самостоятельно
> сохранить настройки.  Сохранять состояние в обработчике remove,
> вызываемом из udevd, уже поздно - в этот момент устройство уже
> уничтожено.

# rmmod snd-intel8x0
настройки сохранились, или я че не понимаю?

>
> > во вторых на обычных десктопах мы сейчас получаем всегда
> > дефолтные установки микшера.
>
> По этому поводу я и написал о необходимости sound.rc...
>
> > сохранять настройки можно при остановке например
> > udev-final примерно следующим способом
> > export DEVPATH=$(udevtrigger --dry-run --verbose --subsystem-match=sound
> > | grep controlC)
> > export ACTION=remove
> > /lib/udev/sound.agent
>
> В принципе можно запихать это и в udevd-final.

скорее нужно
stop()
{
        
DEVPATH_ALL=$(udevtrigger --dry-run --verbose --subsystem-match=sound | grep 
controlC)
        if [ -n "$DEVPATH_ALL" ]; then
                for d in DEVPATH_ALL; do
                        export DEVPATH=$d
                        export ACTION=remove
                        /lib/udev/sound.agent
                done
        fi
        rm -f "$LOCKFILE"
}

> Можно туда же засунуть 
> и загрузку модулей ACPI, но не уверен, что это правильно.

не надо грязи. пусть cpu.rc acpi.rc живут гдето отдельно

>
> > $ rpmquery -R udev | grep etcnet
> > etcnet
>
> Эта зависимость появилась случайно и будет убрана.
>
> > после чего вызывает некоторое недоумение содержимое /lib/udev/net.agent с
> > поддержкой net-scripts
> >
> > ...
> >
> > Еще в 20-hotplug-modprobe.rules есть следующее:
> > SUBSYSTEM=="pcmcia_socket", RUN+="/sbin/modprobe -b pcmcia"
> > это совершенно не нужно, т.к. находится в 60-pcmcia.rules из пакета
> > pcmciautils
>
> Там просто были собраны в одну кучу правила для поддержки не совсем
> правильно работающих подсистем ядра (не предоставляющих modalias).
> Хорошо, уберу pcmcia из этой кучи.



-- 
Valery V. Inozemtsev

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [devel] IA: udev-105-alt1 - hotplug slowly dies
  2007-02-09  8:37   ` Stanislav Ievlev
@ 2007-02-09 13:22     ` Victor Forsyuk
  2007-02-09 13:30       ` Nick S. Grechukh
  0 siblings, 1 reply; 14+ messages in thread
From: Victor Forsyuk @ 2007-02-09 13:22 UTC (permalink / raw)
  To: ALT Devel discussion list

On Fri, Feb 09, 2007 at 11:37:00AM +0300, Stanislav Ievlev <inger@altlinux.org> wrote:
> > # rpm -q udev
> > udev-103-alt1
> > # rpm -q --requires udev|grep net
> > #
> > 
> > Киндер-сюрприз:
> > 
> > $ rpm -qp --requires udev-105-alt1.i586.rpm |grep net
> > etcnet
> > 
> > net-scripts - R.I.P ?
> Давно бы их туда.

Я не спорю с тем, что etcnet это наше светлое будущее.
Но, IMHO, в это будущее не нужно загонять под дулом пистолета.
То есть, в идеале дистрибутив должен поддерживать и унаcледованную
network-config-subsystem (net-scripts) и новую, etcnet. Это даст
пользователям дистрибутива время на осознание преимуществ новой схемы
и постепенный переход на нее. Новая схема должна быть качественно
документирована.

В любом случае, зависимость на etcnet у udev - это ошибка.




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

* Re: [devel] IA: udev-105-alt1 - hotplug slowly dies
  2007-02-09 13:22     ` Victor Forsyuk
@ 2007-02-09 13:30       ` Nick S. Grechukh
  0 siblings, 0 replies; 14+ messages in thread
From: Nick S. Grechukh @ 2007-02-09 13:30 UTC (permalink / raw)
  To: ALT Devel discussion list

2007/2/9, Victor Forsyuk <force@altlinux.org>:
> Я не спорю с тем, что etcnet это наше светлое будущее.
> Но, IMHO, в это будущее не нужно загонять под дулом пистолета.

это наше светлое настоящее :). и я рад, что меня загнали под дулом,
пока я упирался.

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

* Re: [devel] [sisyphus]  IA: udev-105-alt1 - hotplug slowly dies
  2007-02-09 12:04     ` [devel] [sisyphus] " Valery V. Inozemtsev
@ 2007-02-09 14:30       ` Sergey Vlasov
  2007-02-09 17:28         ` Valery V. Inozemtsev
  0 siblings, 1 reply; 14+ messages in thread
From: Sergey Vlasov @ 2007-02-09 14:30 UTC (permalink / raw)
  To: devel

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

On Fri, Feb 09, 2007 at 03:04:56PM +0300, Valery V. Inozemtsev wrote:
> > > >  - sound.rc - действия, выполняемые при загрузке, в данном случае не
> > > >    особо полезны, а вот при завершении работы этот скрипт сохраняет
> > > >    состояние микшера, которое потом будет восстановлено при
> > > >    обнаружении звуковых устройств;
> > >
> > > remove ты зря убрал. во первых есть ноуты, у которых при засыпании модули
> > > звуковухи могут выгружаться (например snd-intel8x0 не поддерживает
> > > засыпание).
> >
> > Тогда то, что выгружает эти модули, должно перед этим самостоятельно
> > сохранить настройки.  Сохранять состояние в обработчике remove,
> > вызываемом из udevd, уже поздно - в этот момент устройство уже
> > уничтожено.
> 
> # rmmod snd-intel8x0
> настройки сохранились, или я че не понимаю?

Сейчас проверил и убедился, что сохранение не работает, как и должно.
Ни с "for i in /sys/class/sound/controlC*", как было в оригинальном
скрипте, ни с сохранением параметров для устройства, указанного в
DEVPATH.

Ещё раз повторяю: событие remove генерируется, когда устройство уже
стало недоступным (как минимум - было убрано из sysfs), поэтому в его
обработчике нельзя делать ничего, для чего требуется доступ к
устройству.

Если какие-то скрипты выгружают модули snd-*, в этих скриптах надо
предусмотреть какие-то вызовы для сохранения состояния микшера перед
выгрузкой модулей.  В принципе можно оформить это в виде перезапуска
какого-то сервиса, но тогда этот кусок нельзя тащить в udevd-final -
он должен быть отдельным сервисом, который и нужно будет вписывать в
RestartServices для hibernate или ещё куда-то.

> > В принципе можно запихать это и в udevd-final.
[skip очередной хак]
> > Можно туда же засунуть 
> > и загрузку модулей ACPI, но не уверен, что это правильно.
> 
> не надо грязи. пусть cpu.rc acpi.rc живут гдето отдельно

Как будто вызовы sound.agent там - не грязь...

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [devel] [sisyphus]  IA: udev-105-alt1 - hotplug slowly dies
  2007-02-09 14:30       ` Sergey Vlasov
@ 2007-02-09 17:28         ` Valery V. Inozemtsev
  2007-02-09 18:43           ` Sergey Vlasov
  0 siblings, 1 reply; 14+ messages in thread
From: Valery V. Inozemtsev @ 2007-02-09 17:28 UTC (permalink / raw)
  To: devel

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

> > # rmmod snd-intel8x0
> > настройки сохранились, или я че не понимаю?
>
> Сейчас проверил и убедился, что сохранение не работает, как и должно.
> Ни с "for i in /sys/class/sound/controlC*", как было в оригинальном
> скрипте, ни с сохранением параметров для устройства, указанного в
> DEVPATH.

for i in /sys/class/sound/controlC*; do
	alsactl -f /var/lib/hotplug/asound0.state store 
${i#/sys/class/sound/controlC}
done

>
> Ещё раз повторяю: событие remove генерируется, когда устройство уже
> стало недоступным (как минимум - было убрано из sysfs), поэтому в его
> обработчике нельзя делать ничего, для чего требуется доступ к
> устройству.

да, тут я ступил. смотрел на время создания asound0.state, а надо было внутрь 
заглядывать

>
> Если какие-то скрипты выгружают модули snd-*, в этих скриптах надо
> предусмотреть какие-то вызовы для сохранения состояния микшера перед
> выгрузкой модулей.  В принципе можно оформить это в виде перезапуска
> какого-то сервиса, но тогда этот кусок нельзя тащить в udevd-final -
> он должен быть отдельным сервисом, который и нужно будет вписывать в
> RestartServices для hibernate или ещё куда-то.

есть у нас для этого пакет sound-scripts, нерабочий уже как года 3, вот его и 
надо бы реанимировать

>
> > > В принципе можно запихать это и в udevd-final.
>
> [skip очередной хак]
>
> > > Можно туда же засунуть
> > > и загрузку модулей ACPI, но не уверен, что это правильно.
> >
> > не надо грязи. пусть cpu.rc acpi.rc живут гдето отдельно
>
> Как будто вызовы sound.agent там - не грязь...

не совсем. sound.agent не влияет на стабильность системы, в отличии от

-- 
Valery V. Inozemtsev

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [devel] [sisyphus]  IA: udev-105-alt1 - hotplug slowly dies
  2007-02-09 17:28         ` Valery V. Inozemtsev
@ 2007-02-09 18:43           ` Sergey Vlasov
  2007-02-09 19:06             ` Valery V. Inozemtsev
  2007-02-14 11:43             ` Michael Shigorin
  0 siblings, 2 replies; 14+ messages in thread
From: Sergey Vlasov @ 2007-02-09 18:43 UTC (permalink / raw)
  To: devel

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

On Fri, Feb 09, 2007 at 08:28:18PM +0300, Valery V. Inozemtsev wrote:
> for i in /sys/class/sound/controlC*; do
> 	alsactl -f /var/lib/hotplug/asound0.state store 
> ${i#/sys/class/sound/controlC}
> done

Ну и чем это отличается от оригинала, кроме явной ошибки (сваливание
всего в asound0.state)?

> > Если какие-то скрипты выгружают модули snd-*, в этих скриптах надо
> > предусмотреть какие-то вызовы для сохранения состояния микшера перед
> > выгрузкой модулей.  В принципе можно оформить это в виде перезапуска
> > какого-то сервиса, но тогда этот кусок нельзя тащить в udevd-final -
> > он должен быть отдельным сервисом, который и нужно будет вписывать в
> > RestartServices для hibernate или ещё куда-то.
> 
> есть у нас для этого пакет sound-scripts, нерабочий уже как года 3

Хм, у меня он даже установлен :)

> вот его и надо бы реанимировать

Судя по его содержимому (2.4.x only), скорее выкинуть и переписать с
нуля.

Тогда, возможно, туда логично вынести и sound.agent вместе с файлом
правил для udev.  Вот только как организовать обновление в этом
случае...

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [devel] [sisyphus]  IA: udev-105-alt1 - hotplug slowly dies
  2007-02-09 18:43           ` Sergey Vlasov
@ 2007-02-09 19:06             ` Valery V. Inozemtsev
  2007-02-14 11:43             ` Michael Shigorin
  1 sibling, 0 replies; 14+ messages in thread
From: Valery V. Inozemtsev @ 2007-02-09 19:06 UTC (permalink / raw)
  To: devel

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

В сообщении от 9 февраля 2007 Sergey Vlasov написал(a):
> On Fri, Feb 09, 2007 at 08:28:18PM +0300, Valery V. Inozemtsev wrote:
> > for i in /sys/class/sound/controlC*; do
> > 	alsactl -f /var/lib/hotplug/asound0.state store
> > ${i#/sys/class/sound/controlC}
> > done
>
> Ну и чем это отличается от оригинала,

ну такой вариант точно работает

> кроме явной ошибки (сваливание 
> всего в asound0.state)?

бывает

>
> > > Если какие-то скрипты выгружают модули snd-*, в этих скриптах надо
> > > предусмотреть какие-то вызовы для сохранения состояния микшера перед
> > > выгрузкой модулей.  В принципе можно оформить это в виде перезапуска
> > > какого-то сервиса, но тогда этот кусок нельзя тащить в udevd-final -
> > > он должен быть отдельным сервисом, который и нужно будет вписывать в
> > > RestartServices для hibernate или ещё куда-то.
> >
> > есть у нас для этого пакет sound-scripts, нерабочий уже как года 3
>
> Хм, у меня он даже установлен :)

$ rpmquery -R interactivesystem | grep sound
sound-scripts

>
> > вот его и надо бы реанимировать
>
> Судя по его содержимому (2.4.x only), скорее выкинуть и переписать с
> нуля.

в процессе

>
> Тогда, возможно, туда логично вынести и sound.agent вместе с файлом
> правил для udev.

логично

> Вот только как организовать обновление в этом 
> случае...

-- 
Valery V. Inozemtsev

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* [devel] udev-105-alt2 - bugfixes
  2007-02-08 17:56 [devel] IA: udev-105-alt1 - hotplug slowly dies Sergey Vlasov
  2007-02-09  8:31 ` Victor Forsyuk
  2007-02-09 10:24 ` Valery V. Inozemtsev
@ 2007-02-11 20:56 ` Sergey Vlasov
  2 siblings, 0 replies; 14+ messages in thread
From: Sergey Vlasov @ 2007-02-11 20:56 UTC (permalink / raw)
  To: devel, sisyphus

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

On Thu, Feb 08, 2007 at 08:56:25PM +0300, Sergey Vlasov wrote:
> Hello!
> 
> В Сизиф отправлен пакет udev-105-alt1, в котором произошло несколько
> заметных изменений.

В пакете udev-105-alt2 некоторые из изменений, оказавшиеся слишком
заметными, исправлены.

Зависимость на пакет etcnet, случайно появившаяся в ходе отрывания
net.agent от hotplug.functions, вновь убрана - теперь установка пакета
udev не требует принудительного перехода с net-scripts на etcnet.

Файлы правил udev вынесены в отдельный пакет udev-rules (который
теперь предоставляет /etc/udev/rules.d, а на всякий случай ещё и
/etc/udev/initramfs-rules.d).  Теперь пакеты udev и udev-initramfs
имеют зависимость на udev-rules, а зависимость udev-initramfs на
основной пакет udev убрана (таким образом, возможна установка нового
mkinitrd без установки udev в основную систему).  Установка пакета
udev-rules не вызывает каких-либо существенных изменений в системе,
кроме появления нескольких файлов и каталогов в /etc, поэтому на него
можно ставить зависимости, не опасаясь гнева тех, кто не желает
использовать udev (на самом деле предполагается, что такие зависимости
будут появляться автоматически у всех пакетов, добавляющих файлы в
каталог /etc/udev/rules.d, но для этого потребуется соответствующее
изменение в rpm-build).

>  - Убрано отмонтирование /dev при останове сервиса (от него слишком
>    много ломается).  По этой причине обновить пакет dev, пользуясь
>    советом из его скрипта %pre, теперь не получится - нужно будет,
>    например, переместить /dev в другое место через mount -n --move, а
>    после обновления вернуть назад.

В udev-105-alt2 отмонтирование /dev при выполнении service udevd stop
возвращено обратно по многочисленным просьбам пользователей пакета
dev.  Видимо, обходить эту операцию при завершении работы системы
придётся каким-то другим способом (например, проверкой вывода
/sbin/runlevel и пропуском отмонтирования /dev в случае, если
происходит смена runlevel).

>  - Восстановлено нормальное поведение udevd как сервиса - перезапуск
>    после обновления пакета.  Правда, при этом выполняется повторная
>    обработка всех событий (для обработки ситуации, когда правила
>    существенно изменились), в результате возможны некоторые побочные
>    эффекты (например, восстановление состояния микшера в то, которое
>    было сохранено при предыдущем завершении работы системы).  С другой
>    стороны, это изменение устраняет другие неприятные проблемы
>    (например, неработоспособность udevcontrol после обновления).

Запуск udevtrigger, вызывавший повторную обработку всех событий, в
udev-105-alt2 был убран из обработки restart (и condrestart,
выполняемого при обновлении пакета).  В результате с устройствами
ничего неприятного при обновлении не происходит (а новые правила
принудительно не применяются), однако события, произошедшие в процессе
перезапуска udevd, теряются.

-- 
Sergey Vlasov

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [devel] [sisyphus]  IA: udev-105-alt1 - hotplug slowly dies
  2007-02-09 18:43           ` Sergey Vlasov
  2007-02-09 19:06             ` Valery V. Inozemtsev
@ 2007-02-14 11:43             ` Michael Shigorin
  1 sibling, 0 replies; 14+ messages in thread
From: Michael Shigorin @ 2007-02-14 11:43 UTC (permalink / raw)
  To: devel

On Fri, Feb 09, 2007 at 09:43:09PM +0300, Sergey Vlasov wrote:
> > есть у нас для этого пакет sound-scripts, нерабочий уже как года 3
> Хм, у меня он даже установлен :)
> > вот его и надо бы реанимировать
> Судя по его содержимому (2.4.x only), скорее выкинуть и
> переписать с нуля.  Тогда, возможно, туда логично вынести и
> sound.agent вместе с файлом правил для udev.  Вот только как
> организовать обновление в этом случае...

FYI: в bugzilla на нём висят несколько FR, в т.ч. со ссылками 
на обсуждения в alsa-devel@.  Правда, они за эти три года тоже
скорее всего протухли.

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


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

end of thread, other threads:[~2007-02-14 11:43 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-02-08 17:56 [devel] IA: udev-105-alt1 - hotplug slowly dies Sergey Vlasov
2007-02-09  8:31 ` Victor Forsyuk
2007-02-09  8:37   ` Stanislav Ievlev
2007-02-09 13:22     ` Victor Forsyuk
2007-02-09 13:30       ` Nick S. Grechukh
2007-02-09 10:24 ` Valery V. Inozemtsev
2007-02-09 11:30   ` Sergey Vlasov
2007-02-09 12:04     ` [devel] [sisyphus] " Valery V. Inozemtsev
2007-02-09 14:30       ` Sergey Vlasov
2007-02-09 17:28         ` Valery V. Inozemtsev
2007-02-09 18:43           ` Sergey Vlasov
2007-02-09 19:06             ` Valery V. Inozemtsev
2007-02-14 11:43             ` Michael Shigorin
2007-02-11 20:56 ` [devel] udev-105-alt2 - bugfixes Sergey Vlasov

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