Bug 37201 - 50-udev-default.rules no effect при загрузке с propagator
Summary: 50-udev-default.rules no effect при загрузке с propagator
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: propagator (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Leonid Krivoshein
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks: 33000
  Show dependency tree
 
Reported: 2019-09-09 10:12 MSK by Антон Мидюков
Modified: 2023-11-23 00:39 MSK (History)
9 users (show)

See Also:


Attachments
50-udev-default.rules The line takes no effect, ignoring (21.24 KB, image/png)
2019-09-09 10:12 MSK, Антон Мидюков
no flags Details
Скрин (4.44 MB, image/jpeg)
2023-09-18 15:51 MSK, Parajiva
no flags Details
udev.c: redirect udev messages to /var/log/udevd.log (2.48 KB, patch)
2023-09-25 00:15 MSK, Leonid Krivoshein
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Антон Мидюков 2019-09-09 10:12:43 MSK
Created attachment 8287 [details]
50-udev-default.rules The line takes no effect, ignoring

После обновления systemd, при загрузке любых образов куча строк типа:
/etc/udev/rules/50-udev-default.rules: The line takes no effect, ignoring.

Смотреть вложение.
Comment 1 Ivan A. Melnikov 2019-09-09 11:52:15 MSK
> /etc/udev/rules/50-udev-default.rules: The line takes no effect, ignoring.

make-initrd запускает udev с параметром  --resolve-names=never:

http://git.altlinux.org/gears/m/make-initrd.git?p=make-initrd.git;a=blob;f=data/etc/rc.d/init.d/udev;h=1e45c832e13e635f2cab877d9ccf8582554c98d9#l37

В этой ситуации udev игнорирует действия вида GROUP="<name>" -- ему же запрещено превращать символьное имя в gid. Игнорирует настолько, что получается, что такого действия (action) в строке как бы нет:

http://git.altlinux.org/gears/s/systemd.git?p=systemd.git;a=blob;f=src/udev/udev-rules.c;h=1642f105354674746b899f9072332d2ddbb49391#l889

При этом есть правила, которые никаких действий кроме GROUP не содержат. Например:

KERNEL=="parport[0-9]*", GROUP="lp"
SUBSYSTEM=="printer", KERNEL=="lp*", GROUP="lp"
SUBSYSTEM=="ppdev", GROUP="lp"
KERNEL=="lp[0-9]*", GROUP="lp"
KERNEL=="irlpt[0-9]*", GROUP="lp"
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{ID_USB_INTERFACES}=="*:0701??:*", GROUP="lp"

Получается, что у udev есть правило, которое может с чем-то совпасть, но ничего не делает. Начиная, похоже, с коммита 25de7aa7b90c23d33ea50ada1e50c5834a414237 такая ситуация превратилась из log_notice в log_token_warning.
Comment 2 Ivan A. Melnikov 2019-09-13 13:26:05 MSK
На x86_64 на Сизифе это тоже происходит, но всё происходит немного быстрее, поэтому большая часть таких сообщений попадает в:

[    2.414871] printk: udevd: 86 output lines suppressed due to ratelimiting
Comment 3 Alexey Shabalin 2019-09-24 14:33:44 MSK
так в чем ошибка? я не понял.
Comment 4 Антон Мидюков 2019-09-24 14:36:51 MSK
(В ответ на комментарий №3)
> так в чем ошибка? я не понял.

В том, что пользователь видит кучу каких-то ошибок. Хотелось бы, чтобы они не выводились на экран, раз они не ошибки.
Comment 5 Alexey Shabalin 2019-11-05 18:18:01 MSK
это не ошибки, а ворнинги.
Comment 6 Ivan A. Melnikov 2019-11-06 11:30:20 MSK
Проблема не в ворнингах, а в их количестве, которое валится на пользователя при загрузке. Причё
Comment 7 Ivan A. Melnikov 2019-11-06 11:31:17 MSK
Сорри, случайно нажал enter.


> Причё

Причём не в логи, а на экран. Если это не проблема, то и не надо об этом пользователя так рьяно оповещать.
Comment 8 Michael Shigorin 2019-11-06 20:21:38 MSK
А ему можно опустить log level, вызывая из initrd?
Comment 9 Alexey Shabalin 2019-11-06 20:39:35 MSK
(В ответ на комментарий №8)
> А ему можно опустить log level, вызывая из initrd?

man udevd:

Parameters starting with "rd." will be read when systemd-udevd is used in an initrd.

udev.log_priority=, rd.udev.log_priority=
 Set the log level.


Так же можно положить в /etc/udev/udev.conf
udev_log=err
Comment 10 Leonid Krivoshein 2021-08-27 22:23:17 MSK
(In reply to Ivan A. Melnikov from comment #1)
> make-initrd запускает udev с параметром  --resolve-names=never:
Так вот оно что! А я эти строки из старого make-initrd брал:
http://git.altlinux.org/gears/p/propagator.git?p=propagator.git;a=blob;f=udev.c;h=0c211a9956d15a7fbbe52a18ed77493be7c1c707;hb=095e17ab91a18021753ac82142fd9c2100a6bc78#l89

Тогда поправить минутное дело (случайно наткнулся на этот баг)...
Comment 11 Leonid Krivoshein 2021-08-27 22:33:43 MSK
В современном make-initrd:
udevadm control --reload >/dev/null 2>&1 ||:

В пропагатор было перенесено из make-initrd 0.8 сразу с исправлением:
udevadm control --reload-rules

Согласно тогдашним манам это было правильней. Возможно я допустил ошибку в функции spawn_silent(), иначе этому сложно найти объяснение. :-)
Comment 12 Антон Мидюков 2023-09-15 09:23:16 MSK
В современном make-initrd udev не напрямую запускается, а через скриптик udevd
$ cat /lib/initrd/udevd 
#!/bin/bash -efu

exec udevd --debug "$@" >/var/log/udevd.log 2>&1

Можно его вызывать вместо /sbin/udevd:
diff --git a/udev.c b/udev.c
index 0c211a9..466733e 100644
--- a/udev.c
+++ b/udev.c
@@ -87,7 +87,7 @@ static void spawn_silent(char * const command[])
 void udev_start(void)
 {
        /* See make-initrd v0.8.x @ /data/lib/initrd/modules/050-udev for more details */
-       static char* const udevd[]    = {"/sbin/udevd",   "udevd",   "--resolve-names=never", NULL};
+       static char* const udevd[]    = {"/lib/initrd/udevd",   "udevd",   "--resolve-names=never", NULL};
Comment 13 Parajiva 2023-09-18 15:50:01 MSK
Пытаюсь установить на пк 10 kde, вылетают такие ошибки и все намертво виснет, в биосе уже кучу всего перепробовал, смотрел видео как настроить мать на хакинтош и тд, ничего не помогает
Comment 14 Parajiva 2023-09-18 15:51:05 MSK
Created attachment 14456 [details]
Скрин
Comment 15 Ivan A. Melnikov 2023-09-18 16:03:38 MSK
(In reply to Parajiva from comment #13)
> Пытаюсь установить на пк 10 kde, вылетают такие ошибки и все намертво виснет

Не думаю, что это как-то связано с обсуждаемой тут проблемой -- скорее, из-за неё просто на экране много мусорных сообщений и не понятно, что происходит.
Comment 16 Parajiva 2023-09-18 16:07:02 MSK
Эта же флешка, на другом пк прекрасно ставит линукс, на новом пк нет, биос обновил на последнюю версию и при выборе установка или лайв режим выходят данные сообщения, скрин приложил. Вы не знаете как решить проблему?
Comment 17 Ivan A. Melnikov 2023-09-18 16:18:45 MSK
(In reply to Parajiva from comment #16)
> Эта же флешка, на другом пк прекрасно ставит линукс, на новом пк нет, биос
> обновил на последнюю версию и при выборе установка или лайв режим выходят
> данные сообщения, скрин приложил.

Такие сообщение выводятся независимо от того, успешно проходит загрузка или нет; просто когда всё работает, загрузка идёт дальше и этих сообщений не видно. Связывать проблему загрузки и эти сообщения скорее всего неверно.

> Вы не знаете как решить проблему?

По этому скрину я не могу опрделить причину проблемы. Это могут быть проблемы с ядром (слишком старое ядро/слишком новое железо), проблемы с железом (глючное), проблемы с initrd (чего-то специфичного не хватает), и другие. Я бы предложил загрузиться с какой-нибудь live регулярки чтобы проверить, что, например, на новом ядре загрузка проходит дальше.

Но я тут не специалист и это оффтопик в этом обсуждении.
Comment 18 Leonid Krivoshein 2023-09-25 00:15:19 MSK
Created attachment 14546 [details]
udev.c: redirect udev messages to /var/log/udevd.log
Comment 19 Leonid Krivoshein 2023-09-25 00:30:18 MSK
(Ответ для Антон Мидюков на комментарий #12)
> В современном make-initrd udev не напрямую запускается, а через скриптик
> udevd
Приложил патч с очередной попыткой исправить spawn_silent(). Хотя не сомневаюсь, что и предыдущие варианты должны были всё убрать с экрана. Если сообщения снова не исчезнут, думаю проблема в другом:

(Ответ для Ivan A. Melnikov на комментарий #2)
> На x86_64 на Сизифе это тоже происходит, но всё происходит немного быстрее,
> поэтому большая часть таких сообщений попадает в:
> 
> [    2.414871] printk: udevd: 86 output lines suppressed due to ratelimiting
Возможно, на экране мы видим не stdout/stderr от udevd, а вывод сообщений ядра, попадающие на эту консоль иным способом. Тогда в самом начале может помочь что-то вроде:

mesg n или dmesg --console-off

Что думаете об этом?
Comment 20 Leonid Krivoshein 2023-09-25 01:18:49 MSK
(Ответ для Leonid Krivoshein на комментарий #19)
> mesg n или dmesg --console-off
Стоит проверить с таском #330240
Comment 21 Антон Мидюков 2023-09-26 07:07:11 MSK
(Ответ для Leonid Krivoshein на комментарий #20)
> (Ответ для Leonid Krivoshein на комментарий #19)
> > mesg n или dmesg --console-off
> Стоит проверить с таском #330240

Не помогло. Прочитай ещё раз 12 комментарий.(Ответ для Leonid Krivoshein на комментарий #20)
> (Ответ для Leonid Krivoshein на комментарий #19)
> > mesg n или dmesg --console-off
> Стоит проверить с таском #330240

Не стоило. А вот:
https://git.altlinux.org/tasks/330336/

проблему чинит. Сообщения в /var/log/udevd.log
Спасибо. Жду в Сизифе.
Comment 22 Leonid Krivoshein 2023-09-26 12:51:46 MSK
(Ответ для Антон Мидюков на комментарий #21)
> Не помогло. Прочитай ещё раз 12 комментарий.
Там говорится, что помогает перенаправление в лог через скрипт-обёртку, но и раньше в коде было перенаправление, только в /dev/null. И это противоречит данной фактологии из комментария 2:

[    2.414871] printk: udevd: 86 output lines suppressed due to ratelimiting

udevd использует ядерный printk для отправки сообщений в буфер ядра (в dmesg). По крайней мере, это происходит в каких-то случаях, в них может и второе задание помочь.
Comment 23 Michael Shigorin 2023-09-26 13:49:22 MSK
(Ответ для Антон Мидюков на комментарий #21)
> Не стоило. А вот: https://git.altlinux.org/tasks/330336/
> проблему чинит. Сообщения в /var/log/udevd.log
> Спасибо. Жду в Сизифе.
Нет, братцы, это мы уже проходили -- если забивается рамдиск, propagator становится колом; достигнуть такого несложно, например, большим кол-вом дисков (подробности письмом).

Если вести логи stage1, то исключительно на отдельную tmpfs с игнорированием ошибок записи.

Ну и спам бы удалять/чинить, а не заметать под коврик.

(Ответ для Alexey Shabalin на комментарий #9)
> Так же можно положить в /etc/udev/udev.conf
> udev_log=err

Кто-нить проверял с тех пор?
Comment 24 Антон Мидюков 2023-09-27 11:33:02 MSK
(Ответ для Michael Shigorin на комментарий #23)
> (Ответ для Alexey Shabalin на комментарий #9)
> > Так же можно положить в /etc/udev/udev.conf
> > udev_log=err
> 
> Кто-нить проверял с тех пор?

В kernel cmdline можно добавить udev.log_level=err и тогда всё будет хорошо.
Спасибо за вразумление. Исправлю в mkimage-profiles так:
diff --git a/features.in/stage2/config.mk b/features.in/stage2/config.mk
index c310fbf75f..9f161cd80c 100644
--- a/features.in/stage2/config.mk
+++ b/features.in/stage2/config.mk
@@ -5,6 +5,7 @@ use/stage2:: sub/stage1
        @$(call add,STAGE1_MODLISTS,$$(FEATURES))
        @$(call xport,STAGE1_PACKAGES)
        @$(call xport,STAGE1_KCONFIG)
+       @$(call add,STAGE2_BOOTARGS,udev.log_level=err)
 
 ifneq (,$(filter-out e2k%,$(ARCH)))
 ifeq (sisyphus,$(BRANCH))
Comment 25 Leonid Krivoshein 2023-09-27 15:25:32 MSK
(Ответ для Michael Shigorin на комментарий #23)
> если забивается рамдиск, propagator становится колом; достигнуть такого
> несложно, например, большим кол-вом дисков
В отличии от tmpfs, размер initramfs ограничен только реальным размером ОЗУ. Скорее проблема была в том, что логи записывались на tmpfs или devtmfs размером 8Мб (например, в /dev/.initramfs/). При нынешних объёмах ОЗУ на машинах с дясятками дисков главное правильно выбирать место для записи логов.

> Если вести логи stage1, то исключительно на отдельную tmpfs с игнорированием
> ошибок записи.
Как раз наоборт. Игнорировать ошибки записи в журнал тем более нельзя.

> Ну и спам бы удалять/чинить, а не заметать под коврик.
СПАМ удалять, остальное логировать. Изучил, как это делает загрузка с propagator. doklog() из init.c копирует в цикле 1Кб из /dev/kmsg в /dev/tty4, сообщения syslog, идущие в /dev/log, никуда не попадают, хотя по задумке их тоже хотели отправлять на ту же отладочную консоль. Если во внешних скриптах что-то перенаправляется в файлы, их размер ничем не ограничивается, но это уже не вина пропагатора. По дефолту udevd выводит в stdout/stderr при включенной отладке, в большинстве случаев вывод реализован через syslog или запись в /dev/kmsg.

(Ответ для Антон Мидюков на комментарий #24)
> В kernel cmdline можно добавить udev.log_level=err и тогда всё будет хорошо.
Значение почти сразу перебивается propagator на info. Кроме того, для некоторых целей может потребоваться уровень debug. Так что ищем решение, которе будет безопасным и красивым в 10.2 до окончания поддержки пропагатора. :-)
Comment 26 Антон Мидюков 2023-09-28 04:56:33 MSK
(Ответ для Leonid Krivoshein на комментарий #25)
> (Ответ для Антон Мидюков на комментарий #24)
> > В kernel cmdline можно добавить udev.log_level=err и тогда всё будет хорошо.
> Значение почти сразу перебивается propagator на info. Кроме того, для
> некоторых целей может потребоваться уровень debug. Так что ищем решение,
> которе будет безопасным и красивым в 10.2 до окончания поддержки
> пропагатора. :-)

Не прибивается. На экране лишь сообщение
Failed to send request to set log level: No such file or directory

По факту сейчас уровень логов udev меняется через параметр udev.log_level. Мне этот способ кажется наиболее удобным. Подключился по serial console с параметром udev.log_level=debug, и вот он лог udev в текстовом терминале.
Поэтому предлагаю убрать в propagator изменение уровня логов. info и так дефолт у udev. Какую-то бесполезную работу он пытается делать сейчас.
Comment 27 Leonid Krivoshein 2023-09-28 17:42:18 MSK
(Ответ для Антон Мидюков на комментарий #26)
> По факту сейчас уровень логов udev меняется через параметр udev.log_level.
> Мне этот способ кажется наиболее удобным. Подключился по serial console с
> параметром udev.log_level=debug, и вот он лог udev в текстовом терминале.
> Поэтому предлагаю убрать в propagator изменение уровня логов. info и так
> дефолт у udev. Какую-то бесполезную работу он пытается делать сейчас.
Убрал и вернул redirect в /dev/null: #330537.

Данную ошибку это не починит, но всё вкупе, включая #330240, должно помочь...
Comment 28 Антон Мидюков 2023-09-28 18:09:31 MSK
(Ответ для Leonid Krivoshein на комментарий #27)
> (Ответ для Антон Мидюков на комментарий #26)
> > По факту сейчас уровень логов udev меняется через параметр udev.log_level.
> > Мне этот способ кажется наиболее удобным. Подключился по serial console с
> > параметром udev.log_level=debug, и вот он лог udev в текстовом терминале.
> > Поэтому предлагаю убрать в propagator изменение уровня логов. info и так
> > дефолт у udev. Какую-то бесполезную работу он пытается делать сейчас.
> Убрал и вернул redirect в /dev/null: #330537.
> 
> Данную ошибку это не починит, но всё вкупе, включая #330240, должно помочь...

А мы точно не хотим иметь возможность видеть ошибки?
Comment 29 Leonid Krivoshein 2023-09-28 19:43:12 MSK
(Ответ для Антон Мидюков на комментарий #28)
> А мы точно не хотим иметь возможность видеть ошибки?
Об этом баг.)) Варианта всего три:
1) конслоль, это как сейчас в баге
2) журнал на initramfs, но mike@ против, хоть я и не согласен
3) /dev/null, как было изначально, и на что я вернул теперь
Comment 30 Антон Мидюков 2023-09-28 19:46:44 MSK
(Ответ для Leonid Krivoshein на комментарий #29)
> (Ответ для Антон Мидюков на комментарий #28)
> > А мы точно не хотим иметь возможность видеть ошибки?
> Об этом баг.)) Варианта всего три:
> 1) конслоль, это как сейчас в баге
> 2) журнал на initramfs, но mike@ против, хоть я и не согласен
> 3) /dev/null, как было изначально, и на что я вернул теперь

4) Консоль, но управлять через udev.log_level в kernel cmdline
Comment 31 Leonid Krivoshein 2023-09-28 20:29:06 MSK
(Ответ для Антон Мидюков на комментарий #30)
> 4) Консоль, но управлять через udev.log_level в kernel cmdline
Могу собрать и такой вариант. Нужно?
Comment 32 Leonid Krivoshein 2023-09-28 20:46:27 MSK
(Ответ для Leonid Krivoshein на комментарий #31)
> (Ответ для Антон Мидюков на комментарий #30)
> > 4) Консоль, но управлять через udev.log_level в kernel cmdline
> Могу собрать и такой вариант. Нужно?
#330551
Comment 33 Repository Robot 2023-09-28 22:14:43 MSK
mkimage-profiles-1.5.12-alt1 -> sisyphus:

 Fri Sep 29 2023 Anton Midyukov <antohami@altlinux> 1.5.12-alt1
 - pkgpriorities: fix clash 50-pkgpriorities.mk,
   fix usage for main subprofile
 - branding: add release to use/branding
 - stage2: add STAGE2_BOOTARGS=udev.log_level=err (ALT bug 37201)
 - build.mk: replace obsoleted GREP_COLOR with GREP_COLORS
 - x11: install radeon/amdgpu drivers on loongarch64 (thx @asheplyakov)
 - grub: do make a graphical boot menu on LoongArch (thx @asheplyakov)
 - live.mk: add use/stage2/kms to grub-net-install
 - mixin.mk: add power-profiles-daemon (ALT bug 47679)
 - latest commit for alt-server server (thx @jqt4)
 - latest commits for alt-education (thx @cas)
 - spec: don't build documentation on LoongArch (thx @asheplyakov)
Comment 34 Антон Мидюков 2023-09-28 22:20:34 MSK
(Ответ для Leonid Krivoshein на комментарий #32)
> (Ответ для Leonid Krivoshein на комментарий #31)
> > (Ответ для Антон Мидюков на комментарий #30)
> > > 4) Консоль, но управлять через udev.log_level в kernel cmdline
> > Могу собрать и такой вариант. Нужно?
> #330551

В m-p исправил. Дело за propagator.
Comment 35 Michael Shigorin 2023-10-20 13:42:25 MSK
(Ответ для Антон Мидюков на комментарий #24)
> > > Так же можно положить в /etc/udev/udev.conf
> > > udev_log=err
> > Кто-нить проверял с тех пор?
> В kernel cmdline можно добавить udev.log_level=err и тогда всё будет хорошо.
> Спасибо за вразумление. Исправлю в mkimage-profiles так:
> +       @$(call add,STAGE2_BOOTARGS,udev.log_level=err)
Это не cmdline и потому не в m-p: так ты не только замусориваешь cmdline,
но и делаешь это для всех udev, которые туда смотрят; а нам надо только
тому передать, который в initrd.  Соответственно делать надо в make-initrd, propagator или укладыванием в stage1::/etc/udev/udev.conf нужной строчки.

(Ответ для Антон Мидюков на комментарий #26)
> Failed to send request to set log level: No such file or directory
Это тоже (экранный) мусор, которого хотелось бы избежать.

(Ответ для Антон Мидюков на комментарий #34)
> > > > 4) Консоль, но управлять через udev.log_level в kernel cmdline
> > > Могу собрать и такой вариант. Нужно?
> > #330551
> В m-p исправил. Дело за propagator.
Попробуй, пожалуйста, _вместо_ 1c38381c109c8f2b11794ce91921eb6f3e142419
сделать что-то такое (в этом наброске недостаёт указания make-initrd
забрать ещё и созданный файлик, у меня он в initrd.img _не_ попал):

---
#!/bin/sh
# silence useless udev log spam
# see http://bugzilla.altlinux.org/37201 for discussion

dir=usr/share/make-initrd/data/etc/udev

cd .work &&
mkdir -p $dir &&
echo "udev_log=err" >> $dir/udev.conf
:
--- features.in/kernel/stage1/scripts.d/50-silent-udev.sh 

По-хорошему это надо делать в самом make-initrd, чтобы не зависело от того,
из чего конфигурируется такая stage1 (т.е. в m-p это заведомые хаки, лезущие "через голову" конкретно применяемого генератора initrd -- shaba@ где-то применял dracut, например).

Хостовый udev.conf для initrd make-initrd не подбирает, судя по
отсутствию упоминаний (я было думал его и сформировать).
Comment 36 Антон Мидюков 2023-10-20 15:39:09 MSK
Исправил добавлением конфига /etc/udev/udev.conf в make-initrd-propagator:
[#332241] DONE (try 2) make-initrd-propagator.git=0.50-alt1

В m-p коммиты откатил.

Для p10:
[#332261] p10 EPERM make-initrd-propagator.git=0.50-alt1
Comment 37 Leonid Krivoshein 2023-10-21 02:41:30 MSK
(Ответ для Michael Shigorin на комментарий #35)
> (Ответ для Антон Мидюков на комментарий #26)
> > Failed to send request to set log level: No such file or directory
> Это тоже (экранный) мусор, которого хотелось бы избежать.
Как раз с этим борьба в пропагаторе. Исправляется таском #330551.

Он же решает озвученную проблему:
(Ответ для Michael Shigorin на комментарий #23)
> Ну и спам бы удалять/чинить, а не заметать под коврик.
Всё жду апрува...
Comment 38 Repository Robot 2023-10-27 14:33:09 MSK
mkimage-profiles-1.5.13-alt1 -> p10:

 Fri Oct 27 2023 Anton Midyukov <antohami@altlinux> 1.5.13-alt1
 - remove lilo support
 - image.in/Makefile: fix show image size
 - oem: do not set English language by default
 - services: Add (un)mask systemd units (thx @jqt4)
 - grub: add variable DISABLE_LANG_MENU
 - x11-autostart: enable graphical.target
 - oem: fix enabled oem.target
 - x11-autostart: do not require use/x11
 - Revert "initrd-propagator: add {STAGE2,RESCUE}_BOOTARGS=udev.log_level=err"
 - l10n: set KEYMAP in vconsole.conf if exist
 - initrd-bootchain: exclude initrd feature kbd
 - live-install: remove use/live-install/vnc
 - live-install: add use/live-install-pkg
 - oem: add systemd.unit=setup.target to kernel cmdline
 - alt-education: sync with ALT Education 10.2 (thx @cas)
 - slinux: sync with Simply Linux 10.2 (thx @sem)
 - alt-server: add latest commits (thx @jqt4)
 Fri Sep 29 2023 Anton Midyukov <antohami@altlinux> 1.5.12-alt1
 - pkgpriorities: fix clash 50-pkgpriorities.mk,
   fix usage for main subprofile
 - branding: add release to use/branding
 - stage2: add STAGE2_BOOTARGS=udev.log_level=err (ALT bug 37201)
 - build.mk: replace obsoleted GREP_COLOR with GREP_COLORS
 - x11: install radeon/amdgpu drivers on loongarch64 (thx @asheplyakov)
 - grub: do make a graphical boot menu on LoongArch (thx @asheplyakov)
 - live.mk: add use/stage2/kms to grub-net-install
 - mixin.mk: add power-profiles-daemon (ALT bug 47679)
 - latest commit for alt-server server (thx @jqt4)
 - latest commits for alt-education (thx @cas)
 - spec: don't build documentation on LoongArch (thx @asheplyakov)
Comment 39 Антон Мидюков 2023-10-27 14:38:39 MSK
Копирование mkimage-profiles в p10 привело к закрытию бага. Переоткрываю.
Comment 40 Leonid Krivoshein 2023-11-21 03:41:10 MSK
Так все 10.2/11.0 будут идти с этим ужасом при загрузке.

Хотел ещё один баг исправить, а смысл, если #330551 всё ещё на EPERM.
Comment 41 Anton Farygin 2023-11-21 08:46:35 MSK
(Ответ для Leonid Krivoshein на комментарий #40)
> Так все 10.2/11.0 будут идти с этим ужасом при загрузке.
> 
> Хотел ещё один баг исправить, а смысл, если #330551 всё ещё на EPERM.

https://git.altlinux.org/tasks/330551/gears/100/git?p=git;a=commit;h=b498b553504ec02b3a72bc91afb6d5e8dcf0104c

из этого commit message я вообще не понял зачем ты это делаешь.
Comment 42 Leonid Krivoshein 2023-11-21 15:18:03 MSK
(Ответ для Anton Farygin на комментарий #41)
> из этого commit message я вообще не понял зачем ты это делаешь.
Это и так слишком долго и сложно объяснять, особенно на каждой тестовой сборке. Конечно, можно написать because mike@ says "Ну и спам бы удалять/чинить, а не заметать под коврик." :-) Есть же ссылка на баг в следующем коммите.

Мы возвращаем ситуацию с вызовом spawn() к 2018 году до этих двух изменений:

https://git.altlinux.org/gears/p/propagator.git?p=propagator.git;a=commitdiff;h=08aefa7dde7ad0ae4821af4246ba1eda3a86167a
https://git.altlinux.org/gears/p/propagator.git?p=propagator.git;a=commitdiff;h=70bd62ff84fce8a4e9aad678564c062061569210

Когда ещё был старый systemd, новая логика со всеми вызовами, вынесенная в отдельный исходник udev.c, была перенесена из ещё старого рантайма make-initrd, у которого не было проблем с udev, аналогичных тем, что были тогда в пропагаторе. И конкретно данный вызов "заметал весь вывод под коврик". Изначально же его просто не существовало, был просто spawn().

Вообще вот: https://bugzilla.altlinux.org/show_bug.cgi?id=37201#c37 , теперь управление уровнем журналирования перенесено в m-p.
Comment 43 Антон Мидюков 2023-11-21 15:33:40 MSK
(Ответ для Leonid Krivoshein на комментарий #42)
> Вообще вот: https://bugzilla.altlinux.org/show_bug.cgi?id=37201#c37 , теперь
> управление уровнем журналирования перенесено в m-p.

Уже нет. Сделано в make-initrd-propagator:
20 октября 2023 г. Anton Midyukov 0.50-alt1
- rules.mk: add udev_log=err to udev.conf
Comment 44 Anton Farygin 2023-11-21 15:44:01 MSK
Лёня, я написал про commit message не для того, что бы ты мне объяснил, а что бы поправил commit message.
https://initialcommit.com/blog/git-commit-messages-best-practices
Comment 45 Leonid Krivoshein 2023-11-21 22:51:08 MSK
(Ответ для Anton Farygin на комментарий #44)
> Лёня, я написал про commit message не для того, что бы ты мне объяснил, а
> что бы поправил commit message.
Понимаю, просто все сборки были тестовые, чего только не пробовали. Сказал бы сразу -- у нас уже пара дистрибутивов вышла бы с этими улучшениями. В новой сборке поменял только сообщение и дату, код не трогал: #334825.
Comment 46 Anton Farygin 2023-11-22 10:05:23 MSK
Ну тут всё просто - я увидел что мне непонятно происходящее и оставил другим изучать подробности.
Comment 47 Repository Robot 2023-11-22 14:50:04 MSK
propagator-20231121-alt1 -> sisyphus:

 Tue Nov 21 2023 Leonid Krivoshein <klark@altlinux> 20231121-alt1
 - improvements to logging during boot loading (closes #37201)
Comment 48 Leonid Krivoshein 2023-11-23 00:39:41 MSK
(Ответ для Michael Shigorin на комментарий #23)
> Ну и спам бы удалять/чинить, а не заметать под коврик.
Благодаря этому обнаружили ещё один баг в старом коде. У сообщения, проскакивающего очень быстро, которое antohami@ смог поймать только на серийной консоли перед появлением синего окна пропагатора, очевидно log priority как раз err, что теперь задаётся в конфиге udev. Так что оно не просто проскакивает, а ещё и красное. :-)