Рейтинг:0

Проблемы с диском: irq_stat 0x20000000, ошибка хост-шины

флаг bd

При копировании больших файлов (50+ ГБ) с диска NVMe на жесткий диск SATA 7200 об/мин я вижу следующую ошибку в журналах полностью исправленной Ubuntu 20.04:

08 августа 00:45:59 ядро ​​хоста: ata6.00: исключение Emask 0x20 SAct 0x0 SErr 0x0 действие 0x6 заморожено
08 августа 00:45:59 ядро ​​хоста: ata6.00: irq_stat 0x20000000, ошибка шины хоста
08 августа, 00:45:59 ядро ​​хоста: ata6.00: ошибка команды: WRITE DMA EXT
08 августа 00:45:59 ядро ​​хоста: ata6.00: cmd 35/00:08:30:a2:e0/00:00:e8:00:00/e0 тег 23 dma 4096 out
                                    res 50/00:00:00:00:00/00:00:00:00:00/00 Emask 0x20 (ошибка хост-шины)
08 августа 00:45:59 ядро ​​хоста: ata6.00: статус: {DRDY}
08 августа 00:45:59 ядро ​​хоста: ata6: ссылка на жесткий сброс
08 августа, 00:46:00 ядро ​​хоста: ata6: соединение SATA 6,0 Гбит/с (SStatus 133 SControl 300)
08 августа 00:46:00 ядро ​​хоста: ata6.00: настроено для UDMA/133
08 августа 00:46:00 ядро ​​хоста: ata6: EH завершено

ата6.00 это диск, на который выполняется запись.
Проблема прерывистая. Иногда не появляется по 24 часа, иногда пару раз в час. Часто диск восстанавливается, но иногда файловая система просто повреждается, ее необходимо размонтировать, восстановить (если возможно) и перемонтировать.

Что я пробовал:

  1. Я пробовал 3 разных марки HDD. У всех одна и та же проблема.
  2. Я подозревал аппаратную проблему. Я заменил материнскую плату и кабели SATA. Ничего из этого не помогло.
  3. У меня есть другой сервер с идентичной конфигурацией.Проблема возникает не там. Одинаковая нагрузка.
  4. У меня есть еще один сервер с совершенно другой конфигурацией (Intel vs. AMD). Проблема возникает там. Одинаковая нагрузка.
  5. Я отключил NCQ через эхо 1 > /sys/block/sda/device/queue_depth. Не помогло.

У меня закончились идеи...
Все это компоненты уровня центра обработки данных. Учитывая шаги, которые я предпринял, я полагаю, что это не производственный дефект оборудования.
Может ли это быть связано с программным обеспечением/ОС/БИОС?
Любые идеи, что еще я должен попробовать?

Michael Hampton avatar
флаг cz
Что такое компоненты уровня центра обработки данных? Какой HBA вы используете? Что такое материнская плата? Что такое ОЗУ?
mike avatar
флаг bd
ХБА нет. Диски подключаются напрямую к портам SATA на MB. Материнская плата Supermicro MBD-X11SPM-F-O. Оперативная память Samsung DDR4-3200, 8 ГБ, ECC RDIMM, 1Rx8, 288pin.
Michael Hampton avatar
флаг cz
Это по-прежнему похоже на проблему с контроллером или кабелем, но вы можете запустить `smartctl -a` на дисках, чтобы увидеть, есть ли на них записанные ошибки.
mike avatar
флаг bd
Он показывает ошибки, но они загадочны для меня. Не знаю, куда идти оттуда. https://gist.github.com/ceecko/c74c2aafc7d0b7fa1f9ad9a71e7d4717. Я подозревал, что проблема с контроллером или кабелем, но, поскольку оба были заменены, я думаю, что шансы на то, что оба неисправны, невелики...
Michael Hampton avatar
флаг cz
Вы сказали, что у вас несколько дисков, но суть показывает результаты только для одного. Где остальные?
mike avatar
флаг bd
Я только что обновил суть со всеми дисками, включая диск nvme, который используется в качестве источника для копирования.
Michael Hampton avatar
флаг cz
Только _один_ из трех дисков показывает эти ошибки. Попробуйте заменить этот диск.
mike avatar
флаг bd
Хотя, похоже, это не диск. `/dev/sdc` подключается через ata6 и используется как загрузочный диск. Этот диск вышел из строя, хотя в смарт-логе ничего нет. На тот момент диск с ошибками был смонтирован, но не использовался. Как вы думаете, мог ли `/dev/sda` вызвать такой сбой `/dev/sdc`? Как упоминалось ранее, эти диски являются третьим типом дисков, которые я пробовал. Думаю, было бы отличным совпадением иметь 3-ю партию дисков с такими же проблемами.
Рейтинг:1
флаг jo

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

В более новых ядрах, таких как ваше, температуру диска можно указать в sysfs по этому пути:

/sys/класс/hwmon/*

Обязательно убедитесь, что температура привода модуль загружается с modprobe темп..

Вы можете рассмотреть возможность мониторинга файлов здесь и снова начать копирование большого файла, документация ядра здесь указывает, как следует интерпретировать эти файлы.

Они включают полезные значения, такие как рабочая минимальная/максимальная температура, некоторые драйверы также могут предлагать индикаторы аварийных сигналов, которые зависят от микросхемы и срабатывают при неисправности.

Рейтинг:0
флаг bd

Кажется, это решается обновлением до Ubuntu 21.04. Хотя понятия не имею, почему. Теперь сервер работает стабильно, проблем с ATA нет.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.