[devel-distro] full.cz или initrd.img

Антон Мидюков midyukov-anton at ya.ru
Wed Feb 16 04:51:35 MSK 2022


16.02.2022 05:01, Leonid Krivoshein пишет:
> 
> 15.02.2022 4:27, Антон Мидюков пишет:
>> 15.02.2022 01:53, Leonid Krivoshein пишет:
>>> 14.02.2022 5:52, Антон Мидюков пишет:
>>>> [...]
>>>> 2. Унифицируется сборка initrd.img с propagator и bootchain Используется одинаковый алгоритм добавления модулей ядра.
>>>> [...]
>>>> В связи с этим, мне кажется, стоит выкинуть из mkimage mki-build-propagator, а вместо него добавить mki-make-initrd,
>>> Дело хорошее, но надо учесть, что full.cz собираемый make-initrd-propagator, состоит из трёх кусков (чанок), выравненных по границе в 4Кб, а initrd.img -- из одного или двух кусков. Первый кусок, обычно, это микрокод процессора для ucode. Второй кусок -- основной образ initrd. Третий кусок -- отдельный слой корневой ramfs с модулями ядра и firmware. Часть из них местами попадает во второй кусок. В initrd.img с bootchain второй и третий кусок сейчас объединены в один.
>>>
>>> Полагаю, изначальное разделение на три куска было сделано неслучайно. Микрокод процессора иначе не загрузится. Код ядра обычно сжат, он грузится загрузчиком отдельно. Образ initrd (второй слой) тоже есть смысл сжимать, загрузчик его распаковывает при загрузке. Слой с модулями ядра нет смысла сжимать в большинстве случаев, так как каждый модуль уже сжат отдельно и ядро само умеет загружать модули в таком виде. Насчёт файлов firmware я не анализировал, возможно ей место во втором куске.
>>>
>>>
>> А почему мы тогда не имеем проблем на установленных системах, если только full.cz упакован правильно?
> 
> Так я не говорю про правильно или неправильно. Но раз Антон считает, что оверхед на повторное сжатие незначителен, тогда новая схема с единственным слоем (плюс ucode, если фича не запрещена) вполне годится. А насчёт ucode для универсальных загрузочных носителей у меня другие сомнения: нужно ли обновлять микрокод ядра средствами исталлятора/live/rescue? Не может ли это в каких-то экзотических случаях приводить окирпичиванию железа? Не стоит ли по умолчанию фичу ucode запрещать? Просто, вопрос для знатоков. По идее, свежий BIOS и так должен выполнять ту же процедуру.
> 
> 

В STAGE1 initrd собирается без ucode. Или он как-то по-особому попадал в full.cz раньше?

-- 
С уважением, Антон Мидюков <antohami �� altlinux.org>


More information about the devel-distro mailing list