From: Anton Farygin <rider@altlinux.com>
To: sisyphus@lists.altlinux.org
Subject: Re: [sisyphus] Warning: udev-089
Date: Wed, 12 Apr 2006 11:55:14 +0400
Message-ID: <e1ibcs$hj2$1@sea.gmane.org> (raw)
In-Reply-To: <20060412072357.GA14438@procyon.home>
Sergey Vlasov wrote:
> On Wed, Apr 12, 2006 at 10:48:04AM +0400, Anton Farygin wrote:
>> Sergey Vlasov wrote:
>>> On Tue, Apr 11, 2006 at 05:42:17PM +0400, Anton Farygin wrote:
>>>> В ftp://ftp.altlinux.ru/pub/people/rider/udev-089 лежат пакеты нового udev.
>>>>
>>>> Просьба всем, кто использует ядро 2.6.16 - поставить и сообщить мне об
>>>> найденных ошибках. С ядрами < 2.6.16 новый udev работать не будет.
>>>>
>>>> Через пару дней это может добраться до Sisyphus - лучше проверить заранее.
>>> Да, камнепад будет изрядный.
>>>
>>> 1. После вызова udevtrigger нужно дождаться завершения обработки
>>> сгенерированных событий - иначе иногда при дальнейшей загрузке не
>>> обнаруживается даже /dev/urandom. Правда, в этом месте есть
>>> грабли:
>>>
>>> http://wiki.linuxfromscratch.org/lfs/ticket/1720
>>> http://permalink.gmane.org/gmane.linux.hotplug.devel/9711
>> Да, и это известно. Сейчас загрузка проходит нормально, а вот если
>> запускать udevtrigger из rc.sysinit - то всё становится очень плохо.
>>
>>> 2. Большинство /etc/hotplug/*.rc (как минимум, pci.rc и usb.rc) после
>>> установки этой версии udev становятся бесполезным балластом -
>>> udevtrigger сам сгенерирует все нужные события (правда, в
>>> неопределённом порядке).
>> pci.rc и usb.rc помимо генерации событий ещё модули загружает. Впрочем я
>> уже давно собирался перенести эту функциональность в отдельный пакет.
>
> Загружают модули на самом деле *.agent, которые всё равно вызываются
> при обработке событий. В usb.rc остаётся нужным только монтирование
> /proc/bus/usb (впрочем, разработчики ядра давно хотят объявить её
> obsolete - вот /dev/usb/... уже есть, и новая версия libusb умеет
> пользоваться этими устройствами, только нужно из
> /etc/hotplug/*.usermap сделать набор правил для назначения прав
> доступа средствами udev).
да, это понятно что agent. Только вот всё-таки я бы хотел загрузку
модулей каким-то образом упорядочить, а иначе сейчас опять полезут баги
- кто раньше из звуковых загрузился.
Или мы уже умеем определять приоритеты использования у звуковых карт ?
>
> Вот только у нас libusb какая-то древняя - надо обновить.
Обновим.
>
>>> 3. В случае наличия нескольких сетевых плат перед установкой этого
>>> udev крайне желательно установить etcnet и настроить /etc/iftab,
>>> иначе потом придётся долго разбираться в перепутавшихся eth*.
>>> Причём USE_HOTPLUG=yes тоже может не работать, пока из
>>> /etc/hotplug/net.agent не будет удалён кусок:
>>>
>>> # Red Hat specific hack...
>>> if [ -f /etc/redhat-release ]; then
>>> # Don't do anything if the network is stopped
>>> if [ ! -f /var/lock/subsys/network ]; then
>>> exit 0
>>> fi
>>> fi
>>>
>>> Иначе получается race - сетевое устройство вполне может быть
>>> обнаружено раньше, чем запустится сервис network (точнее, если в
>>> запуск udevd будет добавлено ожидание завершения обработки событий
>>> от udevtrigger, устройства и будут обнаруживаться раньше).
>> Это если мы service udevd вынесем в rc.sysinit.
>
> Это и сейчас есть - udevd запускается раньше network, просто крайне
> маловероятно.
ага. точно.
>
>> Но там race идёт похуже
>> - например совершенно непонятно как дождаться появления устройств для /
>> и для swap
>
> while ! [ -f "$root_dev" ]; do sleep 1; done ?
Хм.. как-то это некрасиво - придётся фактически перед каждым устройством
делать. Да и опять же - как быть в случае, если / вдруг перехал ? Или
например раздел прописан по LABEL или UUID ?
>
>>> Впрочем, это тоже неправильно - получается, что сетевые интерфейсы
>>> могут запускаться до завершения общей инициализации сети.
>>> Возможно, придётся добавить в запуск etcnet вызов собственной
>>> версии udevtrigger, генерирующей события только для
>>> /sys/class/net/* (и убедиться, что повторяющиеся вызовы
>>> ifup-removable не приводят к нежелательным эффектам).
>> Сейчас при service udevd restart сеть пропадает (она у меня
>> настраивается вручную). Наверное стоит посмотреть что там точно происходит.
>
> У меня не пропадает.
Это понятно - твой etcnet так настроен.
Rgds,
Rider
next prev parent reply other threads:[~2006-04-12 7:55 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-11 13:42 Anton Farygin
2006-04-11 16:22 ` Sergey Vlasov
2006-04-12 6:48 ` Anton Farygin
2006-04-12 7:23 ` Sergey Vlasov
2006-04-12 7:55 ` Anton Farygin [this message]
2006-04-12 8:44 ` Sergey Vlasov
2006-04-12 9:05 ` Anton Farygin
2006-04-12 11:26 ` Andrei Bulava
2006-04-12 14:04 ` [sisyphus] [JT] " Yury Aliaev
2006-04-12 9:38 ` [sisyphus] " Anton Farygin
2006-04-11 17:07 ` Yuri Horoshkov
2006-04-12 6:51 ` Anton Farygin
2006-04-12 7:43 ` Yuri Horoshkov
2006-04-12 7:03 ` Anton Farygin
2006-04-12 7:45 ` Yuri Horoshkov
2006-04-12 8:08 ` Anton Farygin
2006-04-12 11:22 ` Yuri Horoshkov
2006-04-12 11:32 ` Anton Farygin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='e1ibcs$hj2$1@sea.gmane.org' \
--to=rider@altlinux.com \
--cc=sisyphus@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Sisyphus discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/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 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
public-inbox-index sisyphus
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.sisyphus
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git