Ядро не видит диски SATA подключенные к RAID контроллеру. Используется такая материнская плата: http://www.supermicro.com/products/motherboard/Xeon800/E7520/X6DHP-3G2.cfm Использовались самые разные настройки в биос. Результат - не работает. Данный адаптер очень широко используется в материнских платах Интела, Супермикро, ИБМ. Совместными раскопками с vsu@ обнаружили, что данная проблема имеет место во многих дистрибутивах. В некоторых решена. Некоторые ссылки по теме: https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/82382 http://kernel.org/pub/linux/kernel/people/jejb/ Steps to Reproduce: 1.Установить дистрибутив на материнскую плату X6DHP-3G2 где диски SATA подключены через RAID контроллер 2. 3.
Created attachment 2510 [details] вывод dmesg
Created attachment 2511 [details] вывод lspci
На самом деле здесь несколько проблем: 1) Приложенный в attachment 2511 [details] вывод lspci содержит PCI ID 9005:041f, отсутствующий в списке поддерживаемых устройств драйвера aic94xx. Тут проблема в том, что контроллер имеет режим HostRAID (реализация RAID там на самом деле программная), для которого, как обычно, есть только бинарный драйвер от производителя; GPL-драйвер поддерживает только функциональность SAS-контроллера без RAID. Таким образом, чтобы использовать aic94xx, необходимо в настройках BIOS отключить режим RAID для этого контроллера, при этом меняется PCI ID устройства. 2) Драйвер aic94xx, добавленный в 2.6.18-std-smp-alt7, был взят из ядра RHEL5 (kernel-2.6.18-8.1.6.el5); эта версия драйвера действительно не поддерживает SATA-устройства - можно использовать только SAS. Поддержка SATA в aic94xx появилась только в ядре 2.6.23, перенос её в 2.6.18 вряд ли возможен из-за зависимости от множества изменений в libata. 3) Для новой версиия aic94xx требуется внешний файл firmware (/lib/firmware/aic94xx-seq.fw), который в настоящее время отсутствует в пакетах. Причём брать свежую версию с сайта Adaptec нельзя - во-первых, её лицензия запрещает дальнейшее распространение, во-вторых, есть сведения, что с драйвером aic94xx эта версия не работает (https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/82382 - там же есть и пригодный для использования файл firmware). К версии драйвера, добавленной в ядро 2.6.18-std-smp-alt7, это не относится - в этом варианте драйвера код firmware встроен непосредственно в модуль (в процессе чистки перед включением драйвера в ядро этот кусок был оттуда выброшен и заменён на использование внешнего файла firmware). Однако драйвер aic94xx из имеющихся в Сизифе сборок 2.6.24 не будет работать без aic94xx-seq.fw. 4) Вариант "использовать драйвер от производителя" в данном случае не проходит, поскольку на сайте Adaptec http://www.adaptec.com/en-US/downloads/linux_source/linux_source_code?productId=SAS-44300&dn=Adaptec+Serial+Attached+SCSI+44300 самая свежая версия датирована маем 2007 года, и с ядром 2.6.18 уже не собирается из-за изменений в API (да и лицензия опять-таки запрещает распространение этой версии). Причём для дистрибутива RHEL 5.0, где ядро основано на 2.6.18, драйвер всё-таки предлагается (версия там новее), но только в виде собранных бинарных модулей для ядер с установочного диска; вариант, пригодный для пересборки под конкретное ядро, не опубликован. 5) Наконец, судя по dmesg из attachment 2510 [details], на этой конкретной машине имеются какие-то проблемы с прерываниями (сообщения "irq 169: nobody cared"), которые также могут приводить к неработоспособности aic94xx даже при использовании поддерживаемых этой версией устройств; эту проблему следует решать отдельно.
(In reply to comment #3) Сергей, спасибо большое за развернутый ответ. > На самом деле здесь несколько проблем: > > 1) Приложенный в attachment 2511 [details] [edit] вывод lspci содержит PCI ID 9005:041f, > отсутствующий в списке поддерживаемых устройств драйвера aic94xx. Тут проблема в > том, что контроллер имеет режим HostRAID (реализация RAID там на самом деле > программная), для которого, как обычно, есть только бинарный драйвер от > производителя; GPL-драйвер поддерживает только функциональность SAS-контроллера > без RAID. Таким образом, чтобы использовать aic94xx, необходимо в настройках > BIOS отключить режим RAID для этого контроллера, при этом меняется PCI ID > устройства. Прикладываю вывод с отключенным RAID. Модуль загружается автоматом. Если это чем-то поможет. > 2) Драйвер aic94xx, добавленный в 2.6.18-std-smp-alt7, был взят из ядра RHEL5 > (kernel-2.6.18-8.1.6.el5); эта версия драйвера действительно не поддерживает > SATA-устройства - можно использовать только SAS. Поддержка SATA в aic94xx > появилась только в ядре 2.6.23, перенос её в 2.6.18 вряд ли возможен из-за > зависимости от множества изменений в libata. Грустно. Еще один плюс перехода на новое ядро. > 3) Для новой версиия aic94xx требуется внешний файл firmware > (/lib/firmware/aic94xx-seq.fw), который в настоящее время отсутствует в пакетах. > Причём брать свежую версию с сайта Adaptec нельзя - во-первых, её лицензия > запрещает дальнейшее распространение, во-вторых, есть сведения, что с драйвером > aic94xx эта версия не работает > (https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/82382 - там > же есть и пригодный для использования файл firmware). К версии драйвера, > добавленной в ядро 2.6.18-std-smp-alt7, это не относится - в этом варианте > драйвера код firmware встроен непосредственно в модуль (в процессе чистки перед > включением драйвера в ядро этот кусок был оттуда выброшен и заменён на > использование внешнего файла firmware). Однако драйвер aic94xx из имеющихся в > Сизифе сборок 2.6.24 не будет работать без aic94xx-seq.fw. Тут все ясно: нужно добавлять. > 4) Вариант "использовать драйвер от производителя" в данном случае не проходит, > поскольку на сайте Adaptec > > http://www.adaptec.com/en-US/downloads/linux_source/linux_source_code?productId=SAS-44300&dn=Adaptec+Serial+Attached+SCSI+44300 > > самая свежая версия датирована маем 2007 года, и с ядром 2.6.18 уже не > собирается из-за изменений в API (да и лицензия опять-таки запрещает > распространение этой версии). Причём для дистрибутива RHEL 5.0, где ядро > основано на 2.6.18, драйвер всё-таки предлагается (версия там новее), но только > в виде собранных бинарных модулей для ядер с установочного диска; вариант, > пригодный для пересборки под конкретное ядро, не опубликован. Если будет работать aic94xx + aic94xx-seq.fw то и не надо. > 5) Наконец, судя по dmesg из attachment 2510 [details] [edit], на этой конкретной машине имеются > какие-то проблемы с прерываниями (сообщения "irq 169: nobody cared"), которые > также могут приводить к неработоспособности aic94xx даже при использовании > поддерживаемых этой версией устройств; эту проблему следует решать отдельно. С этим разбираюсь. Возможно из-за этого не работает и RHEL 5.0 + adp94xx Спасибо еще раз за ответ.
(In reply to comment #4) > > 5) Наконец, судя по dmesg из attachment 2510 [details] [edit] [edit], на этой конкретной машине > имеются > > какие-то проблемы с прерываниями (сообщения "irq 169: nobody cared"), которые > > также могут приводить к неработоспособности aic94xx даже при использовании > > поддерживаемых этой версией устройств; эту проблему следует решать отдельно. > С этим разбираюсь. Возможно из-за этого не работает и RHEL 5.0 + adp94xx В первую очередь обратите внимание на обновления BIOS и настройки BIOS в районе ACPI; если это не помогает, можно пробовать опции ядра acpi=noirq, pci=noacpi; если всё совсем плохо - noapic (хотя на серверной плате это скорее как раз менее проверенный вариант).
Думаю оно уже зафиксилось