[Solved частично]Никак не совладаю с SATA драйвером при обновлении на 3.1 (проблема не в драйвере)

Здравствуйте.
Машинка на GigaByte GA-G33-DS3R
2 контроллера, lspci:

00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA AHCI Controller (rev 02)
02:00.0 SATA controller: JMicron Technology Corp. JMB362/JMB363 Serial ATA Controller (rev 02)

оба в биосе в AHCI выставлены уже давно
сейчас стоит ядро 3.0.4, для работы включены галки:

Serial ATA and Parallel ATA drivers  --->
	[*]   ATA ACPI Support
	<*>   AHCI SATA support

всё прекрасно работало ещё с 2.6.не помню уже, не первый год в общем, а вот выше обновится никак не могу - не подхватывается контроллер и всё. уже угуглился и перепробовал 100500 вариантов - не хочет и всё. может кто идею какую дельную подкинет? а может и не в драйверах вовсе дело?

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Pid: 1, comm: swapped not trained 3.1.1-gentoo

fstab:

UUID=16d090e0-f914-49b0-a6ba-809bc91fc524       /boot   ext3    noauto,noatime  1 2
UUID=905d64d0-afeb-4fd8-88d7-1db45d380770       /       ext3    noatime         0 1
UUID=b7f7b9c2-5894-4ec2-9dd8-75c17ce655ad       none    swap    sw              0 0

grub.conf

default 0
timeout 5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
	
title Gentoo Linux 3.0.4
root (hd0,0)
kernel /boot/kernel-3.0.4-2 real_root=UUID=905d64d0-afeb-4fd8-88d7-1db45d380770

title Gentoo Linux 3.1.1
root (hd0,0)
kernel /boot/kernel-3.1.1 real_root=UUID=905d64d0-afeb-4fd8-88d7-1db45d380770

upd: по наводке Mahmud, прописал root=/dev/sda3 и всё завелось, теперь вопрос - почему не подхватывает по UUID?

Вы не могли случайно забыть

Вы не могли случайно забыть включить в ядро поддержку EXT3_FS?

Я Gentoo & Funtoo

Lupo Alberto написал(а): Вы

Lupo Alberto написал(а):
Вы не могли случайно забыть включить в ядро поддержку EXT3_FS?

я конфиг тащу из старого ядра, всё включено

вот здесь вашу проблему

вот здесь кажется похожую проблему решили http://forums.gentoo.org/viewtopic-t-899592-start-0.html

Fixed. 

My problem was I never specified a "root=" device in my grub.conf. Apparently all the previous kernels could figure out the root device, but 3.1 apparently needs it specified. 

So in my case appending the "root=/dev/md3" to the kernel line of my grub.conf was all I needed to do: 


kernel /boot/vmlinuz root=/dev/md3


(Adjust as appropriate for your configuration.) 

This may explain why others are getting a kernel panic on update to the 3.1.0 kernel as well, even if they aren't using RAID. 

И, как говорила великая инквизиция, мы продолжаем жечь! Излечит любые амбиции священный костер инквизиции.

Благодарю, помогло, теперь

Благодарю, помогло, теперь вопрос - а почему он по UUID то не хочет подхватывать?

если вместо kernel

если вместо

kernel /boot/kernel-3.1.1 real_root=UUID=905d64d0-afeb-4fd8-88d7-1db45d380770

написать

kernel /boot/kernel-3.1.1 root=UUID=905d64d0-afeb-4fd8-88d7-1db45d380770

то система не загрузиться?

И, как говорила великая инквизиция, мы продолжаем жечь! Излечит любые амбиции священный костер инквизиции.

да

да

Чтоб подхватывал по UUID,

Чтоб подхватывал по UUID, нужен initrd, который, судя по первому посту, ты не используешь. ядро вообще ничего не знает про параметр real_root. Этот параметр использует initrd от genkernel. Ядро оперирует как раз параметром root. Иными словами раньше ядро само определяло, где у тебя корень, без указания root а сейчас не может.

Вот это-то и грустно. На 2.6

Вот это-то и грустно. На 2.6 и 3.0 ветках real_root и UUID
работало без initrd. Когда частенько винты переподключаются
к системе с разными контроллерами (у меня, например, X58 + Marvell
SATA-3 + доп. SATA-2 от Gigabyte), не всегда
sda остается sda и т.п.

Amirych написал(а): На 2.6 и

Amirych написал(а):
На 2.6 и 3.0 ветках real_root и UUID
работало без initrd.

Лично я сомневаюсь в истинности данного тезиса.

Цитата: Лично я сомневаюсь в

Цитата:
Лично я сомневаюсь в истинности данного тезиса.

Подтверждаю, на 3.0.6 сейчас у меня initrd нет, в параметрах ядра только real_root=UUID=ceba4cc9-733.. (root нету)
Работает. 3.1 не пробовал.

А если вообще убрать параметр

А если вообще убрать параметр real_root из комстрочки ядра?

real_root использовался

real_root использовался именно в связке с UUID:
как пример (из моего grub.conf):
kernel /boot/vmlinuz-3.0.4-gentoo real_root=UUID=040153fb-21c4-4d4e-8d6a-3e011917c13d

В этом-то и была главная фишка.

сейчас на 3.1 root с UUID не работает (real_root вообще никак)

тут просто вопрос в том, что,

тут просто вопрос в том, что, возможно, real_root был совсем не нужен. Т.е. ядро бы нашло рут и без root, и без real_root. Проверить смогу вечером.

мне в гугле попалось что то

мне в гугле попалось что то на тему того что человек накатил какой то 3.1.1.4 и всё снова заработало, а так с 3.0.6 у него аналогичные проблемы начались, так что может ещё и изменится ситуация

Да, 3.0.6 загружается вообще

Да, 3.0.6 загружается вообще без указания root или real_root - просто kernel /boot/vmlinuz-3.0.6

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".