Re: FreeBSD, SCSI: medium error

abrek

Есть тачка: FreeBSD 4.8-RELEASE-p4, в ней контроллер:


ahc0: <Adaptec aic7899 Ultra160 SCSI adapter> port 0x2400-0x24ff mem 0xfebe0000-0xfebe0fff irq 7 at device 7.0 on pci1
aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
ahc1: <Adaptec aic7899 Ultra160 SCSI adapter> port 0x2000-0x20ff mem 0xfebf0000-0xfebf0fff irq 9 at device 7.1 on pci1
aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/253 SCBs


на нём был диск, такой же, как вот этот:


da1: <IBM IC35L018UCD210-0 S5BS> Fixed Direct Access SCSI-3 device
da1: 160.000MB/s transfers (80.000MHz, offset 63, 16bit Tagged Queueing Enabled
da1: 17501MB (35843670 512 byte sectors: 255H 63S/T 2231C)


только назывался da0
Он выдавал иногда вот такое:


Oct 18 19:42:49 nifnif /kernel: (da0:ahc1:0:0:0): WRITE(10). CDB: 2a 0 0 53 7b 7f 0 0 20 0
Oct 18 19:42:49 nifnif /kernel: (da0:ahc1:0:0:0): Deferred Error: MEDIUM ERROR info:53209f asc:3,0
Oct 18 19:42:49 nifnif /kernel: (da0:ahc1:0:0:0): Peripheral device write fault sks:80,1e


Я решил, что диск глючит, и заменил его. Сейчас вставил в другую машину, программа badblocks прочитала его весь без ошибок.
Сейчас тестирую в read-write режиме, ошибок пока нет.
Вопрос: чем ещё могут объясняться такие сообщения?

Filan

А ремапить автоматом он умеет?

abrek

кто, диск?
а есть сомнения?
разве какие-то из не очень древних не умеют?

Filan

А почему бы тогда этому сообщению в такие моменты и не появляться?
Пробовал в сырцах искать?

sergey_m

Во-первых нужно проверить его с помощью camcontrol defects. Потом прогнать dd if=/dev/rda0 of=/dev/null bs=32k. После чего посмотреть defects еще раз.
Если есть возможность записать винт полностью, то сделать это, и посмотреть defects.
Просмотреть настройки modepage 0x01, убедиться что read/write recovery включено.
Вставить винчестер туда же где он работал раньше. Если аналогичные сбои будут проявляться периодически и будут лечиться ребутом, то это одно из трех:
1) Шлейф Ultra160 канала не затерминирован активным терминатором, или с ним плохой контакт. Встроенного в винт терминатора обычно не хватает для
Ultra160. Либо шлейф распушился и уже не соответсвует нормам. В этом случае можно просто опустить пропускную способность до U2W или даже до UW,
все равно для двух винтов этого с головой хватит.
2) Недостаточно мощности БП корпуса. Такие диски как твой жрут много, у тебя их два и еще какое-то оборудование в компе есть.
3) Диски перегреваются.

abrek

Про camcontrol я уже прочитал, но он не работает почему-то:

# camcontrol defects da1 -f block
camcontrol: Error returned from read defect data command


Диск я уже убрал в шкаф, посмотрим, будут ли ошибки с тем, который я поставил на замену.
Это стоечный сервер с SCA backplane, он как собран был на фирме, так его никто больше не трогал AFAIK, были ли ошибки раньше - не знаю.

sergey_m

На block у меня тоже все винты ошибку выдают.
Кстати, еще стопудовый метод проверки - это проехаться по винту BIOSом контроллера. Контроллер, который у тебя это может. Только это долгий даунтайм сервера.
Оставить комментарий
Имя или ник:
Комментарий: