darsh: (Default)
[personal profile] darsh
Вот не понимаю я. Есть третий пень под линуксом 2.4.33.4 с двумя IDE контроллерами на мамке: PIIX и HPT370. Первый выдаёт максимум UDMA2, второй - UDMA5. Сидел на втором контроллере диск, 80GB. Дооолго сидел. Честно UDMA5 держал и с соответствующей скоростью работал. Поставил я к нему год назад в пару 250GB диск - а он отказывается на этом контроллере dma держать. Вот с такими словами "dma_timer_expiry". И кодом 0x21. Дальше ide3 reset. И снова dma_timer_expiry. Так в итоге с выключенным DMA и поднимается.

Ну, столкнулся я тогда с этим в первый раз, пошерстил инет, ничего толкового не нашёл и решил, грешным делом, что диск виноват. Посадил на PIIX и забыл.

Месяца три назад первая 80-ка полетела. Поставили вместо неё другую. И тоже - стоит, как влитая, в dma зубами вцепилась и не отпускает.

А вчера доставили наконец 320-ку. Стал её ставить и напоролся на то, что новая 320-ка тоже не держит dma. С тем же диагнозом. Пришлось (после махинаций с ядром, hdparm, шлейфами, комбинациями диски-контроллеры, бубном и такой-то матерью) вешать и новый диск на PIIX.
Работать-то всё работает, да притормаживает слегка. Да и обидно современные диски таких объёмов в чёрном теле UDMA2 держать...

А главное - непонятно, кто виноват и что делать. То ли мамку менять - но как-то глупо из-за одного контроллера. То ли внешний контроллер покупать да в PCI (или лучше в AGP? Такие вообще бывают?) вставлять, и на него все диски вешать. То ли линукс виноват, что драйвера hpt у него кривые, больших дисков не поддерживают. А ставить 2.6 только для того, чтобы проверить, оно это или нет, - как-то неохота. И 2.4 отлично справляется. Да и то - скачал я 2.6, глянул в drivers/ide/pci/hpt266.c. Ну, почти тот же файл, что в 2.4, и версия та же...

Date: 05/12/2006 09:49 (UTC)
From: [identity profile] ahaxopet.livejournal.com
Вполне может быть, что в 2.4 драйвер HPT корявый. Попробуй таки 2.6.
Не надо его ставить, достаточно загрузить какой-нибудь свежий Knoppix - сразу все увидишь.

И кстати, ты не в тот файл смотрел. Твоим контроллером в 2.6 занимается drivers/ata/pata_hpt37x.c.

Date: 05/12/2006 10:06 (UTC)
From: [identity profile] darsh.livejournal.com
Я пока склоняюсь к идее обновления биоса этого hpt. Сам Abit бросил писать биос для этой мамки через полгода после производства. Раскопал дискуссию с проблемой, очень похожей на мою. Советуют прошить самопальный биос от некоего умельца TomG, который в абитовский биос добавил LBA-48. Сейчас копаю этот вопрос, о результатах доложу :-)

Date: 05/12/2006 11:14 (UTC)
From: [identity profile] darsh.livejournal.com
Собрался биос прошивать один такой... До чего прогресс дошёл - ни одной дискеты дома нет! Только CD-R и DVD-R по углам валяются... И дисководов-то всего два на весь парк из 5 компов. Разумеется, оба в десктопах.

Пойду покупать дискеты...

Date: 05/12/2006 11:23 (UTC)
From: [identity profile] ahaxopet.livejournal.com
У меня еще хуже - на 5 компов ни одного дисковода. Последний я выкинул года 4 назад.. :-)

А разве DOS нельзя с CD загрузить?

Date: 05/12/2006 11:26 (UTC)
From: [identity profile] darsh.livejournal.com
Можно, наверное. Только у меня в сервере CD нету. Только дисковод, диски, видяха и две сетевые карты. А от него, собственно, больше ничего и не требуется...

Date: 05/12/2006 21:23 (UTC)
From: [identity profile] darsh.livejournal.com
В итоге таки состряпал DOS bootable CD и грузился с него. Ибо оба дисковода оказались помершими...

А BIOS проблему не решил. Теперь, по совету нижеследующего оратора, драйвер от HighPoint ставлю. Посмотрим, что получится...

Date: 05/12/2006 14:28 (UTC)
From: [identity profile] msh.livejournal.com
Для начала - взять драйвер с сайта HighPoint

Date: 06/12/2006 14:26 (UTC)
From: [identity profile] darsh.livejournal.com
Взял, скомпилил. Он даже работает. Но только в виде модуля. Его в кернел как-нибудь вкомпилить можно?

Или, как вариант: что нужно сделать, чтобы модуль подхватывался при загрузке? Сейчас ковыряюсь с initrd, но, сдаётся мне, есть пути и полегче.

И ещё - я плохо понимаю, как сторонний модуль в систему прописать так, чтобы он при загрузке сам подгружался? Прописал в /etc/modules.conf строку вроде "alias hpt37x2 hpt37x2.o". Пытался ещё прописать туда же scsi_hostadapter, но тогда kudzu при загрузке подвисает.

И ещё (извини, что столько чайницких вопросов): insmod и insmod -f делал. А вот modprobe (который, по идее, тот же insmod вызывает) - подвисает. Делаю modprobe hpt37x2 - съедает и висит. Не выходит и не пишет ничего. Минут до 10 ждал, кажется. Это что-то подозрительное или же так и должно быть?

Date: 06/12/2006 16:08 (UTC)
From: [identity profile] darsh.livejournal.com
Отбой. Добил-таки. Основным решением, насколько понимаю, стало обновление modutils. Ну ещё и initrd и IDE-to-SCSI пункт в ядре. В общем, в какой-то момент (после установки новых modutils) ядро начало при загрузке подхватывать нужный драйвер, а он - диски. Даже грузится теперь с этого HPT...

Единственный минус - диски теперь стали как бы сказёвыми, и smartd с ними больше не работает.

Спасибо за помощь! :-)

Жесткий офф-топ.

Date: 15/12/2006 13:50 (UTC)
From: [identity profile] ex-philolag.livejournal.com
Сразу извиняюсь за офф-топ. Мне по работе нужно проконсультироваться с Вами (как жителем Лондона) на одну тему. Оставьте, пожалуйста, здесь ваш e-mail или номер icq. Или напишите сюда - blasterr@list.ru. Спасибо!

Profile

darsh: (Default)
Darsh

February 2017

M T W T F S S
  12345
6789101112
13 141516 171819
20212223242526
2728     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated 26/12/2025 11:36
Powered by Dreamwidth Studios