Bug 49125

Summary: Не закрывает за собой tty2 и tty3
Product: Sisyphus Reporter: Антон Мидюков <antohami>
Component: make-initrd-bootchainAssignee: Leonid Krivoshein <klark>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: antohami, klark, legion
Version: unstable   
Hardware: all   
OS: Linux   

Description Антон Мидюков 2024-01-19 13:22:14 MSK
make-initrd-bootchain не закрывает после завершения работы tty2 и tty3.
Во время загрузки на них можно переключаться.
В результате в rescue именно на этих консолях сломаны шрифты.
Comment 1 Leonid Krivoshein 2024-01-19 23:37:57 MSK
(In reply to Антон Мидюков from comment #0)
> make-initrd-bootchain не закрывает после завершения работы tty2 и tty3.
> Во время загрузки на них можно переключаться.
Допустим, я найду место для их освобождения. А как определить, что проблема вылечилась? Ведь при загрузке кто-то после make-initrd или даже уже в stage1 тоже работает с консолями. Также замечу, что данное поведение было всегда и у пропагатора, например, в установщике стаблильных продуктов тоже доступны консоли tty2 и tty3.

> В результате в rescue именно на этих консолях сломаны шрифты.
Только в rescue? А в установщике и live? Там ведь тот же bootchain.
Comment 2 Антон Мидюков 2024-01-20 05:56:13 MSK
(Ответ для Leonid Krivoshein на комментарий #1)
> (In reply to Антон Мидюков from comment #0)
> > make-initrd-bootchain не закрывает после завершения работы tty2 и tty3.
> > Во время загрузки на них можно переключаться.
> Допустим, я найду место для их освобождения. А как определить, что проблема
> вылечилась? Ведь при загрузке кто-то после make-initrd или даже уже в stage1
> тоже работает с консолями. Также замечу, что данное поведение было всегда и
> у пропагатора, например, в установщике стаблильных продуктов тоже доступны
> консоли tty2 и tty3.

Сразу после завершения работы сервисов в initrd опробовать переключиться в tty2 или tty3. Это не должно получаться. Сейчас возможно. tty должны инициализироваться позже самим systemd. tty4 и tty5 на раннем этапе не доступны.

> 
> > В результате в rescue именно на этих консолях сломаны шрифты.
> Только в rescue? А в установщике и live? Там ведь тот же bootchain.

В установщике какая-то другая проблема накладывается на эту, поэтому легче не станет. В live systemd сейчас нормально переинициализирует vconsole.
Comment 3 Антон Мидюков 2024-01-27 01:35:37 MSK
Неиспользуемые консоли можно закрыть командой
deallocvt

Я подписал Алексея, так как хочу спросить:
А не стоит ли сделать штатной функцией make-initrd закрытие неиспользуемых tty после killall?
Comment 4 Leonid Krivoshein 2024-01-27 03:45:18 MSK
Я не Алексей, но мне кажется, что make-initrd не использует TTY's совсем. Раньше они были только в фиче kbd, но её больше нет. К тому же была идея отказаться в make-initrd-bootchain-interactive от TTY's в пользу tmux, но она пока нереализована.
Comment 5 Антон Мидюков 2024-01-27 06:44:46 MSK
(Ответ для Leonid Krivoshein на комментарий #4)
> Я не Алексей, но мне кажется, что make-initrd не использует TTY's совсем.
> Раньше они были только в фиче kbd, но её больше нет. К тому же была идея
> отказаться в make-initrd-bootchain-interactive от TTY's в пользу tmux, но
> она пока нереализована.

Ну мало ли чего происходит в initrd. Вот bootchain нормально не завершается и tty за собой не закрывает. Делается же killall, почему бы ещё и tty освободившиеся не почистить.
Comment 6 Leonid Krivoshein 2024-01-27 15:33:44 MSK
(In reply to Антон Мидюков from comment #5)
> Ну мало ли чего происходит в initrd. Вот bootchain нормально не завершается
> и tty за собой не закрывает. Делается же killall, почему бы ещё и tty
> освободившиеся не почистить.
Надо решать проблему на стороне bootchain. Если бы кроме неё ещё кто-то использовал TTY's, тогда другое дело.
Comment 7 Repository Robot 2024-02-15 13:10:18 MSK
make-initrd-bootchain-0.1.5-alt21 -> sisyphus:

 Thu Feb 15 2024 Leonid Krivoshein <klark@altlinux> 0.1.5-alt21
 - use $BC_ROOT instead of $rootmnt, it fixes race conditions
 - core+interactive: daemon stop has been reworked (ALT #49126)
 - core+interactive: deallocate TTY's at finish (ALT #49125)
 - core: add cmdline parameter to limit steps failure
 - pipeline steps has been synced whith upstream v2.42.0