Конфа машины: мать INTEL DG33FB, CPU Intel(R) Core(TM)2 Quad CPU @ 2.40 GHz, RAM 8 GB, сказевый контроллер Mylex AcceleRAID 170, FreeBSD 7. Система установлена на отдельном IDE диске, на рейде находилась только база данных PostgreSQL.
RAID 0+1 из пяти дисков (Enhanced Mirroring).
Долгое время я использовал FreeBSD (4.x, 5.x, 6.x жила на материнке Intel STL2), (7.0 на Intel DG33FB) с Mylex AcceleRAID 170.
mly0@pci0:6:1:0: class=0x010400 card=0x00521069 chip=0x00501069 rev=0x02 hdr=0x00
На архитектуре i386 все работало замечательно. Фирмваре контроллера самый последний из доступных.
Периодически FreeBSD накатывалась от версии к версии и никаких проблем не было. Диски только иногда сыпались, но они оперативно менялись и все это жило без всяких проблем.
Пришло время добавить в сервер памяти до 8 гигабайт, драйвер mly не умеет работать в режиме PAE и пришлось ставить FreeBSD 7.0 для amd64. FreeBSD ставилась с нуля, не апдейтом.
И вот тут началось, на загрузке сыплется:
Код: Выделить всё
kernel: SMP: AP CPU #1 Launched!
kernel: SMP: AP CPU #2 Launched!
kernel: SMP: AP CPU #3 Launched!
kernel: da0 at mly0 bus 1 target 0 lun 0
kernel: da0: <RAID 6 online > Fixed Direct Access SCSI-3 device
kernel: da0: 135.168MB/s transfers
kernel: da0: 87465MB (179128320 512 byte sectors: 255H 63S/T 11150C)
kernel: (da0:mly0:1:0:0): SYNCHRONIZE CACHE. CDB: 35 0 0 0 0 0 0 0 0 0
kernel: (da0:mly0:1:0:0): Sense Error Code 0x0
kernel: (da0:mly0:1:0:0): SYNCHRONIZE CACHE. CDB: 35 0 0 0 0 0 0 0 0 0
kernel: (da0:mly0:1:0:0): Sense Error Code 0x0
...
Попытка создать новый слайс на диске, а потом на нем создать файловые системы ни к чему не приводит.
Только что созданные файловые системы, не монтируются.
Попытка выполнить на них fsck, говорит что нет супер блока и мол все плохо.
Если же создать файловые системы из под i386, но потом начать их использовать под amd64, это приводит со временем к панике:
Код: Выделить всё
bad block 123456789, ino 176
dev = da0s1d, block = 4, fs = /mnt/da0/d
panic: ffs_blkfree: freeing free block
cpuid = 3
Uptime: 34 min...
Обратно на i386 ходу нету, так как сервер с 4 гигами памяти уже не справляется, пока все что раньше было на рейде, живет на SATA винте.
Что было уже сделано:
- Обновлен BIOS матери до последней версии - не помогает.
- Обновился до RELENG_7_1 (от 12 декабря 2008) - не помогает.
- Контроллер вставлялся в разные PCI-слоты на матери - не помогает.
- Вынимал память оставляя только 4 гига - не помогает.
- Менял геометрию в контроллере с 2G на 8G, пробовал оба варианта - не помогает.
- Пытался грузиться без ACPI - не грузится, падает панику, ругаясь как раз на Mylex, что не может занять 11-ое прерывание.
Ради теста забивал первые 8 гигов диска нулями:
Код: Выделить всё
dd if=/dev/zero of=/dev/da0 bs=1024k count=8192
Код: Выделить всё
kernel: (da0:mly0:1:0:0): SYNCHRONIZE CACHE. CDB: 35 0 0 0 0 0 0 0 0 0
kernel: (da0:mly0:1:0:0): Sense Error Code 0x0