* [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-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-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] [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
* 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
* [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
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