Bug 28641 - Ядро не может примонтировать корневую ФС на xfs
: Ядро не может примонтировать корневую ФС на xfs
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/make-initrd)
: unstable
: all Linux
: P3 major
Assigned To:
:
:
:
:
: 27685
  Show dependency tree
 
Reported: 2013-03-07 12:15 by
Modified: 2013-03-21 15:00 (History)


Attachments
initrd-3.8.2-alt1.img (3.92 MB, application/octet-stream)
2013-03-07 12:49, serpiph
no flags Details


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2013-03-07 12:15:41
Версия 3.8.2-alt1. Собран initrd при помощи make-initrd-0.8.3-alt1. При
загрузке процесс входит в закольцовывание. На экране бегут:
строка про использование loop для подключения корневой ФС
mount: unknown filesystem: xfs
...

В версии ядра 3.7.9-alt1.1 такого безобразия не наблюдается. В initrd для 3.8.2
модуль xfs есть. Образы initrd для этих ядер отличаются только модулями для
ядер, остальное всё совпадает.

Наблюдается на всех машинах с корнем на xfs (как на отдельных разделах, так и в
составе soft-RAID1).
------- Comment #1 From 2013-03-07 12:28:22 -------
Есть ли в initrd модуль libcrc32c.ko ?
Если нет, попробуйте добавить принудительно.
------- Comment #2 From 2013-03-07 12:41:39 -------
Модуль libcrc32c.ko есть в initrd. Но проблему это не решает.
------- Comment #3 From 2013-03-07 12:45:54 -------
Модуль libcrc32c.ko есть в initrd. Но проблему это не решает.
------- Comment #4 From 2013-03-07 12:49:06 -------
Created an attachment (id=5763) [details]
initrd-3.8.2-alt1.img

Загрузочный образ для std-def-3.8.2-alt1
------- Comment #5 From 2013-03-11 15:57:29 -------
добавьте в initrd модуль crc32c.
Ошибка состоит в том, что libcrc32c должен зависеть от него, но не зависит.
Исправленное ядро ожидается в ближайшие дни.
------- Comment #6 From 2013-03-11 16:22:31 -------
(В ответ на комментарий №5)
> добавьте в initrd модуль crc32c.
> Ошибка состоит в том, что libcrc32c должен зависеть от него, но не зависит.
> Исправленное ядро ожидается в ближайшие дни.

судя по http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=602254 исправление
следует ожидать, скорее в make-initrd, чем в ядре, в ядре отсутствие этой
зависимости считается фичей, а не багой и crc32c должен всегда добавляться при
добавлении в initrd libcrc32, хотя зависимости и нет..
------- Comment #7 From 2013-03-11 16:44:33 -------
Да, добавил модуль crc32c, собрал initrd, система поднялась.
------- Comment #8 From 2013-03-11 16:52:13 -------
(В ответ на комментарий №6)
> судя по http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=602254 исправление
> следует ожидать, скорее в make-initrd, чем в ядре, в ядре отсутствие этой
> зависимости считается фичей, а не багой и crc32c должен всегда добавляться при
> добавлении в initrd libcrc32, хотя зависимости и нет..

Честно говоря, непонятно, зачем делать несколько модулей а-ля crc32c, если всё
равно всегда будет загружаться crc32c. Или оба модуля (crc32c и crc32c-intel)
будут присутствовать в initrd для совместимости загрузки со всякими железными
конфигурациями?
------- Comment #9 From 2013-03-11 16:53:47 -------
Меня вот ещё что мучает: нет ли ещё таких же подводных камней? Надо бы
проверить...
------- Comment #10 From 2013-03-18 15:31:38 -------
Я добавил механизм для добавления таких неявных зависимостей в make-initrd:

http://git.altlinux.org/people/legion/packages/make-initrd.git?p=make-initrd.git;a=commitdiff;h=4fc73f75fa02d9c28ecbd633250b767cc2704b84

Прошу проверить и подтвердить.

Возможно в будущем я сделаю его более общим и не нужно будет делать обработчики
для конкретных случаев. Мысли такие есть, но пока нужно спасать пользователей
:)
------- Comment #11 From 2013-03-19 16:30:25 -------
(В ответ на комментарий №10)
> Я добавил механизм для добавления таких неявных зависимостей в make-initrd:
> 
> http://git.altlinux.org/people/legion/packages/make-initrd.git?p=make-initrd.git;a=commitdiff;h=4fc73f75fa02d9c28ecbd633250b767cc2704b84
> 
> Прошу проверить и подтвердить.
Даже в случае, когда должен использоваться crc32c, в initrd добавлятеся
crc32c-intel и, естественно, не грузится.
------- Comment #12 From 2013-03-21 15:00:59 -------
make-initrd 0.8.4