Bug 28535

Summary: udevadm trigger вызывает падение X-сервера
Product: Branch t6 Reporter: Roman Savochenko <rom_as>
Component: alterator-liloAssignee: Michael Shigorin <mike>
Status: CLOSED FIXED QA Contact: QA t6 <qa-t6>
Severity: critical    
Priority: P3 CC: boyarsh, kostyalamer, mike, sem, shadowsbrother, slazav
Version: не указана   
Hardware: all   
OS: Linux   

Description Roman Savochenko 2013-02-10 23:42:26 MSK
Падение устойчиво, но только на графических картах от ATI, у меня это HD3200.
Замечено, что в момент вызова модуля настройки lilo явно идёт вмешательство в оборудование ядра. Так, на другой машине с TV тюнером в этот момент происходит сброс тюнер, как и при перегрузке HAL/udev.

Если сразу после падения иксов войти назад то модуль настройки "lilo" не крашит иксы. Если иксы предварительно перегрузить "# service dm restart" то падение опять происходит.

Попытка локализовать инициатора падения не дала результатов. Расстановка точек печати в /backend3/lilo показывает последний action "read" для объекта "dev", но  комментирование его содержимого проблемы не исправляет.
Comment 1 Roman Savochenko 2013-02-10 23:45:00 MSK
И ещё. Факт падения от драйвера видеокарты не зависит. Падает и на "fglrx" и на "radeon".
Comment 2 Roman Savochenko 2013-02-12 14:20:35 MSK
Подтвердилось падание и на Radeon X600.
Похоже эта проблема характерна для всех карт ATI.
Comment 3 Vladislav Zavjalov 2013-02-12 14:56:14 MSK
Не могут ли все портить команды
 udevadm trigger
 udevadm settle
в начале бакенда?

То, что иксы повторно не рушатся, может быть вызвано тем, что alteratord выживает и бакенд не перезапускается, а используется старый.
Comment 4 Roman Savochenko 2013-02-12 19:08:31 MSK
(В ответ на комментарий №3)
> Не могут ли все портить команды
>  udevadm trigger
>  udevadm settle
Да, именно они и вызывают падение иксов.
Comment 5 Roman Savochenko 2013-02-12 19:49:01 MSK
(В ответ на комментарий №2)
> Подтвердилось падание и на Radeon X600.
> Похоже эта проблема характерна для всех карт ATI.
И не только, вот увидел падение на старом NVidia Geforce 4 после прямого вызова команды: "# udevadm trigger".
Comment 6 Vladislav Zavjalov 2013-02-12 20:48:53 MSK
Надо перевесить на udev, наверное.
Comment 7 Michael Shigorin 2013-02-13 00:53:20 MSK
А зачем там вообще udevadm trigger?
Comment 8 Roman Savochenko 2013-02-13 00:58:44 MSK
(В ответ на комментарий №7)
> А зачем там вообще udevadm trigger?
Вот и у меня этот вопрос крутится.
Comment 9 Vladislav Zavjalov 2013-02-13 01:09:06 MSK
> А зачем там вообще udevadm trigger?

Не помню уже. В районе 20/05/2009 что-то без него не работало.
Там же рядом какие-то разборки с шагами инсталятора, монтирование proc-sys-tmp в /mnt/destination и т.п.

А есть сейчас дистрибутивы с alterator-lilo?
Comment 10 Michael Shigorin 2013-02-13 01:53:41 MSK
Да, я на mkimage-profiles выпекал и как раз с alterator-lilo припоминаются плавающие проблемы.  Попробую добраться и проверить, перевешиваю назад.
Comment 11 Roman Savochenko 2013-02-13 12:10:38 MSK
(В ответ на комментарий №9)
> А есть сейчас дистрибутивы с alterator-lilo?
Как-бы никто не мешает поставить его и перелезть на LILO после установки, что я и сделал. Сначала перелез на стационарной машине, а затем на ноутбуке, где и столкнулся с этой проблемой.

Затем сделал LiveCD под свои проекты, с функцией установки, на основе LILO и опять увидел эту проблему на ряде машин.

Собственно съезжаю на LILO не от хорошей жизни с Grub2, а как раз от ряда проблем:
- при установке с LiveCD не обнаруживает соседних дистрибутивов Linux вообще, хотя os-prober присутствует;
- чтобы добавить загрузку рядом стоящей Венды нужно сделать ряд неочевидных действий поскольку она и не обнаруживается и добавляется не одной строкой как в Lilo;
- часто при установке на MBR ругается на отсутствие диска, обычно для FAT32-flash сборок.
- на Сизифе он у меня опять не установился на раздел;
- и т.д.
Comment 12 Roman Savochenko 2013-02-13 12:12:28 MSK
(В ответ на комментарий №11)
> Собственно съезжаю на LILO не от хорошей жизни с Grub2, а как раз от ряда
> проблем:
> - при установке с LiveCD не обнаруживает соседних дистрибутивов Linux вообще,
> хотя os-prober присутствует;
> - чтобы добавить загрузку рядом стоящей Венды нужно сделать ряд неочевидных
> действий поскольку она и не обнаруживается и добавляется не одной строкой как в
> Lilo;
> - часто при установке на MBR ругается на отсутствие диска, обычно для
> FAT32-flash сборок.
> - на Сизифе он у меня опять не установился на раздел;
- не загружается установка ALTLinux 5.1.
Comment 13 Vladislav Zavjalov 2013-02-13 12:47:59 MSK
> > А есть сейчас дистрибутивы с alterator-lilo?
> Как-бы никто не мешает поставить его и перелезть на LILO после установки

Я тоже использую lilo (без альтератора, правда).

Я имел в виду, использует ли кто-то этот модуль в инсталяторе. Раньше была нетивиальная задача сделать так, чтобы работало и там, и в системе. Там очень много всего на эту тему понаписано, и я уже плохо помню, что к чему. И udevadm trigger добавлялся явно ради инсталятора, и менять там сейчас что-то боязно, так как непонятно, где сломается, и кто это протестирует и т.п.

> Затем сделал LiveCD под свои проекты, с функцией установки, на основе LILO и
опять увидел эту проблему на ряде машин.

Можно попробовать убрать вызовы udevadm и поглядеть что получится. Ну или перенести его чуть ниже, под под if, который срабатывает в инсталяторе.
Наверное, могу выдать acl, раз вы этим модулем пользуетесь.
Comment 14 Anton V. Boyarshinov 2013-02-13 13:36:38 MSK
> - при установке с LiveCD не обнаруживает соседних дистрибутивов Linux вообще,
> хотя os-prober присутствует;
> - чтобы добавить загрузку рядом стоящей Венды нужно сделать ряд неочевидных
> действий поскольку она и не обнаруживается и добавляется не одной строкой как В дистрибутивах, устанавливающихся через installer, устанавливается firsttime скрипт, который пересоздаёт grub.cfg при первой загрузке с использованием os-prober. Делается ли это при установке с live?
Comment 15 Michael Shigorin 2013-02-13 17:47:40 MSK
(In reply to comment #14)
> > - при установке с LiveCD не обнаруживает соседних дистрибутивов Linux вообще,
> > хотя os-prober присутствует;
> В дистрибутивах, устанавливающихся через installer, устанавливается firsttime
> скрипт, который пересоздаёт grub.cfg при первой загрузке с использованием
> os-prober. Делается ли это при установке с live?
Нет, причём как раз на днях с sem@ о том и задумались.  После переделки на installer-scripts-remount можно вообще перетащить os-prober из firsttime в install3.

Рома, повесь это отдельно на... ммм... installer, наверное.  А livecd-install с ним надо унифицировать, сейчас это в существенной мере параллельные форки.
Comment 16 Michael Shigorin 2013-02-13 18:58:04 MSK
(In reply to comment #13)
> Я имел в виду, использует ли кто-то этот модуль в инсталяторе. Раньше была
> нетивиальная задача сделать так, чтобы работало и там, и в системе. Там очень
> много всего на эту тему понаписано, и я уже плохо помню, что к чему. И udevadm
> trigger добавлялся явно ради инсталятора, и менять там сейчас что-то боязно,
> так как непонятно, где сломается, и кто это протестирует и т.п.
Не исключено, что добавлялось из-за evms, а сейчас (по крайней мере в сизифе) ещё в инсталяторе осуществляется его гашение при перемонтировании разделов в режим "как они и будут".

Собрать образ на сизифе недолго, проверять их в виртуалке и на стенде довольно удобно.

Другое дело, что в t6 я бы тоже побоялся его ломать...
Comment 17 Vladislav Zavjalov 2013-02-13 19:36:14 MSK
Там вообще было очень много всего, связанного с evms, с наступлением и отступлением halа, с какими-то мелкими изменениями в sysfs и udev. Наверняка, сейчас большая часть всего этого уже неактуальна.
Comment 18 Roman Savochenko 2013-02-13 23:51:54 MSK
(В ответ на комментарий №13)
> > Затем сделал LiveCD под свои проекты, с функцией установки, на основе LILO и
> > опять увидел эту проблему на ряде машин.
> Можно попробовать убрать вызовы udevadm и поглядеть что получится.
Убрал. Всё установилось и загрузилось нормально, единственно нужно добавлять параметры "splash и resume=????". "splash" я добавил в опции по умолчанию, а "resume=????" и "grub" не ставит.
Comment 19 Roman Savochenko 2013-03-01 12:55:46 MSK
Ещё одно замечание, не к alterator-lilo, но к "lilo". После удаления ядра запись от него в /etc/lilo.conf не удаляется и как следствие загрузчик без правки конфигурации руками не устанавливается. Кто эту запись ранее удалял я не знаю:
image="/boot/vmlinuz-3.0.65-std-def-alt0.M60P.1"
        initrd="/boot/initrd-3.0.65-std-def-alt0.M60P.1.img"
        label="3.0.65-std-def-alt0.M60P.1"
        root="UUID=94416bab-4054-4347-9209-bd89e05c2925"
        read-only
        optional
Comment 20 Michael Shigorin 2013-03-01 15:48:33 MSK
(В ответ на комментарий №19)
> Ещё одно замечание, не к alterator-lilo, но к "lilo".
Ищи/вешай отдельно, это про bootloader-utils и posttrans filetrigger, IIRC.
Comment 21 Roman Savochenko 2013-04-22 20:04:28 MSK
(В ответ на комментарий №18)
> (В ответ на комментарий №13)
> > > Затем сделал LiveCD под свои проекты, с функцией установки, на основе LILO и
> > > опять увидел эту проблему на ряде машин.
> > Можно попробовать убрать вызовы udevadm и поглядеть что получится.
> Убрал. Всё установилось и загрузилось нормально
Просьба дать права или подтвердить задачи: #96352 и #96353
Comment 22 Michael Shigorin 2013-04-22 20:22:21 MSK
(In reply to comment #21)
> Просьба дать права или подтвердить задачи: #96352
Спасибо, подтвердил (сделай ещё раз task run).

> и #96353
Там ты в ACL, соберётся после #96352.
Comment 23 Roman Savochenko 2013-05-13 13:27:59 MSK
Будем считать, что исправлено.