Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Помогите с разбором лога загрузки Linux
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > Linux
shreck
Добрый день.

Есть плата на базе 375MHz TI AM1808 ARM926 микропроцессора со 128МB ОЗУ и 128MB флеша.
На плате крутится Linux 2.6.xx, установленный производителем платы. Система загружается и работает. По крайней мере после конфигурации сети без проблем устанавливается telnet сессия. Других действий я пока еще не производил.

Анализируя лог загрузки системы, увидел что имеют место быть ошибки, связанные с работой флеш памяти (насколько я понял). Т.к. я в Linux'e чайник, прошу помочь с анализом этих данных. В прищепке полный лог загрузки.

1. Строки 10-13 лога (пока просто отмечаем это место).
Код
Bad block table not found for chip 0
Bad block table not found for chip 0
Bad block table written to 0x000007fe0000, version 0x01
Bad block table written to 0x000007fc0000, version 0x01

2. Строка 14
Код
*** Warning - bad CRC or NAND, using default environment
К чему относится это предупреждение и чем это грозит.

3. Строки 126-135
Код
Bad block table not found for chip 0
Bad block table not found for chip 0
Scanning device for bad blocks
Bad eraseblock 56 at 0x000000700000
Bad eraseblock 107 at 0x000000d60000
Bad eraseblock 356 at 0x000002c80000
Bad eraseblock 574 at 0x0000047c0000
Bad eraseblock 577 at 0x000004820000
Bad block table written to 0x000007fe0000, version 0x01
Bad block table written to 0x000007fc0000, version 0x01
И снова, как в п.1, таблица плохих блоков не найдена. После сканирования таблица должна быть записана во флеш, но следующие загрузки опять начинаются с "Bad block table not found for chip 0".
Что это за "Bad eraseblock" и какие действия приводят к этому.

3. Строки 206-237
Код
Empty flash at 0x0000fffc ends at 0x00010000
Empty flash at 0x0002fffc ends at 0x00030000
Empty flash at 0x0004fffc ends at 0x00050000
...
Empty flash at 0x003efffc ends at 0x003f0000
Empty flash at 0x0040fffc ends at 0x00410000
Empty flash at 0x008458e4 ends at 0x00846000
О чем это говорит? Это плохо/хорошо/или как?

4. Строки 248-288
Код
uncorrectable error :
uncorrectable error :
end_request: I/O error, dev mtdblock2, sector 0
Buffer I/O error on device mtdblock2, logical block 0
uncorrectable error :
uncorrectable error :
end_request: I/O error, dev mtdblock2, sector 8
Buffer I/O error on device mtdblock2, logical block 1
...
Remounting root file system...
Что еще за неисправимая ошибка?


Можно ли на все это забить или надо исправлять? Как жить дальше sm.gif
AlexandrY
Цитата(shreck @ Aug 8 2012, 08:01) *
Можно ли на все это забить или надо исправлять? Как жить дальше sm.gif


Это означает, что на NAND есть изначально плохие блоки.
Для дешевых NAND это нормально.
Хотя ничего хорошего не предвещает. Рано или поздно какие-то файлы будут убиты или система будет постепенно тормозиться.
Надо посмотреть также как выполнен драйвер.
Может в нем упрощенный метод коррекции ошибок применен.
И убедиться, что с каждым стартом не появляются новые плохие блоки.
shreck
Цитата(AlexandrY @ Aug 8 2012, 14:15) *
...
Надо посмотреть также как выполнен драйвер.
Может в нем упрощенный метод коррекции ошибок применен.
...

О каком именно драйвере идет речь. Я вот смотрю папку fs в исходниках ядра. Там 1579 файлов и 75 папок. Для меня за разумное время разобратья в этом просто не судьба. Может быть есть место поконкретнее куда смотреть. И по каким признакам можно определить, что метод коррекции ошибок упрощенный.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.