[mdk-re] Разработчикам дистрибутива и пользователям Promise Ultra100

Ivan Kudryashov =?iso-8859-1?q?jony_=CE=C1_chat=2Eru?=
Вт Июл 24 22:16:01 MSD 2001


Здравствуйте!

  Обнаружил странный эффект. Сообщаю сюда, благо контроллер
проблемный, спрашивали про него много (я в том числе), так что
может пригодиться.

История такова: у меня второй винт, Segate, ATA100, 20 гиг, с
двумя разделами: первый - своп для рабочей винды, второй - VFAT
для архива и таскания файлов между домом и работой. Винт живёт в
mobile rack, на работе, что под виндами, что под Linux работает
абсолютно нормально.

Распределение винтов на домашней машине: 3.2 Quantum с виндой -
на первом канале материнского IDE (hda), CDROM LG, 52, на втором,
8 гиг Fujitsu  на первом канале Ultra100(hde), упомянутый рабочий
винт был на втором канале того же Ultra100 (hdh), причём в гордом
одиночестве. В соответствии с конфигурацией рабочей машины второй
винт поставлен как slave (был). Да, домашний комп: BX, Celeron
800 (не разогнанный), 256 метров, GeForce2 MX с 32 метрами.

Интрига в следующем. Добрые люди мне выкачали Sisyphus и положили
на "носильный" винт. Принеся его домой, я с удивлением обнаружил,
что некоторые файлы не читаются. При копировании их на боевой
раздел может произойти одно из двух: либо файл просто не
скопируется (при копировании в определённом месте происходит
ошибка чтения), либо файл скопируется, но неправильно (ошибок не
будет, но физически запишутся не те данные, которые должны, в
результате, как не трудно понять - неверный magic number при
попытке установить rpm). Естественные предположения - кривой
rack, винт, шлейф, контроллер, были проверены в порядке
возникновения, безрезультатно. Контроллер исправен, ибо та же
конфигурация нормально работает под виндами - тестировал
несколько часов подряд всеми доступными средствами. Винт
нормально работает под виндами дома и на работе, и под Linux на
работе. Пробовал варьировать параметры hdparm винта -
безрезультатно. Характерно то, что ошибки
повторяются при повторении чтения/копирования в том же сеансе
работы, причём на том же самом месте, но после перезагрузки
возникают в других местах и на других файлах. Эффект странный,
учитывая, что копировался объём, значительно превышающий кэш.
Чаще всего ошибки происходят с большими файлами. Поменял три
шлейфа - разницы никакой.

От отчаяния решил поставить тот же винт вторым на первый канал
контроллера - всё заработало
правильно! Решил, что на втором канале контроллера - какая-то
пакость, которая под виндами не проявляется, но из чистого
любопытства (и вспомнив былую возню с CDROM под RE и под OS/2
warp) переставил винт обратно на второй канал, но сделал его не
slave, а single/master (hdg). Ошибки пропали. Уточняю - шлейф тот
же, что и раньше, включены все опции hdparm по максимуму, включая
ATA100, винт в rack'е.

Естественный вывод: по крайней мере для этой пары
"контроллер-винт" под Spring винт глючит (причём очень, надо
сказать, пакостно), если он установлен как slave и является при
этом единственном на втором канале (может быть и на первом то же
самое, но проверять неохота). 

В общем, такая песня. Имейте в виду, кто столкнётся, а то я пару
дней угробил на это. 

Разработчики, может, это лечится как-то?

--------------------------------
С уважением,
Ivan Kudryashov <jony на chat.ru>




Подробная информация о списке рассылки community