Глюки IDE DVD через jmicron
Купил новый комп. Доволен как фиг знает кто.
Вот за что я люблю линукс, так за то, что ничего не надо переставлять из системы. Воткнул винт и всё.
Нарадоваться не мог – всё летает. Вот только раз в 2 минуты комп что-то подзависал на секунду. А раз в час выдавал авторан, что вставлен Audio CD ([хотя привод пустой).
Полез разбираться. В /var/log/messages было вот такое.
Jun 22 05:19:50 tuupic kernel: ide: failed opcode was: unknown
Jun 22 05:19:50 tuupic kernel: hdb: drive not ready for command
Jun 22 05:19:50 tuupic kernel: hdb: status error: status=0×58 { DriveReady SeekComplete DataRequest
}
Jun 22 05:19:50 tuupic kernel: ide: failed opcode was: unknown
Jun 22 05:19:50 tuupic kernel: hdb: drive not ready for command
Jun 22 05:19:50 tuupic kernel: hdb: status error: status=0×58 { DriveReady SeekComplete DataRequest
}
Jun 22 05:19:50 tuupic kernel: ide: failed opcode was: unknown
Jun 22 05:19:50 tuupic kernel: hdb: drive not ready for command
Jun 22 05:21:04 tuupic kernel: hdb: cdrom_pc_intr: The drive appears confused (ireason = 0×01). Tryi
ng to recover by ending request.
Jun 22 05:22:50 tuupic kernel: cdrom_pc_intr, write: dev hdb: type=d, flags=1088
dmesg | tail тоже выдавал кучу ошибок.
Погуглил на тему этих ошибок. На англоязычном мандривовском форуме нашёл ответ.
Связано это с контроллером jmicron, через который производители реализуют IDE на своих материнках на intel чипсетах. Так как intel убрал из своих южных мостов поддержку IDE ещё с чипсета i965 (южный мост ICH8).
Вообщем, лечится так. Удаляется файлик /lib/modules/2.6.24.5-desktop-2mnb/kernel/drivers/ide/pci/jmicron.ko.gz. После этого надо сделать новый initrd (приблизительно так: mkinitrd /boot/initrd-2.6.24.5-desktop-2mnb.img 2.6.24.5-desktop-2mnb).
Этим мы убрали глючный модуль. Но ведь, так у нас вообще привод работать не будет. Чтобы IDE всё-таки заработал, делаем echo “pata_jmicron” >> /etc/modprobe.preload (как вариант, можно добавить в rc.local строку modprobe pata_jmicron)
Ребутимся. Всё – теперь IDE DVD привод работает нормально.
Причины глюка для меня остаются пока загадкой. Сборка ядра мандривы это такая кривая (кстати в ALT Linux тоже встречается), или это ошибка в самом коде ядра. Но эспериментировать с пересборкой ядра мне откровенно лень. Работает, да и ладно.
p.s. остаётся открытым вопрос, “а будут ли после этого работать SATA порты с этого контроллера”. Но для меня это вопрос риторический, так как 4-х SATA портов с южного моста ICH9 мне хватает за глаза.
p.p.s. Позже, как обживусь, буду разгонять. Но пока только проц, так как nvclock пока не умеет работать с видеокартами 9-й серии


