kovalchuk_i_v 0 11 февраля, 2009 Опубликовано 11 февраля, 2009 · Жалоба Сегодня заметил, что после интенсивной работы с файловой системой появилась несколько десятков битых блоков. Использую NAND512W3A0AN6, ФС yaffs, ОС uClinux. Подскажите, люди добрые, куда копать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
amw 0 11 февраля, 2009 Опубликовано 11 февраля, 2009 · Жалоба Сегодня заметил, что после интенсивной работы с файловой системой появилась несколько десятков битых блоков. Использую NAND512W3A0AN6, ФС yaffs, ОС uClinux. Подскажите, люди добрые, куда копать. 1. Размонтируйте перед выключением. 2. В JFFS2 имеется некий "интелектуальный" алгоритм перепроверки блока перед тем как его пометить бэд. Как в yaffs - не знаю, но наверное нет. 3. Копайте в сторону уменьшения интенсивности работы с файловой системой на стирание/запись. Пара-тройка десятков бэдблоков на NAND512W3A за примерно 1000 стираний это нормально. Встречались чипы, на которых бэды появлялись с 2-3 цикла перезаписи. Их количество должно перстать расти где-то на 50 бэдблоке. Статистика крупносерийная. Хотя встречались и чипы, выдерживающие более 2млн циклов без появления новых. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovalchuk_i_v 0 12 февраля, 2009 Опубликовано 12 февраля, 2009 · Жалоба Проблема проявлась через несколько часов работы. Закончилась тем, что основная масса блоков помечается как bad (подозреваю, что не пометились только блоки которые не пытались перезаписывать). После стирания всей флеш - ФС снова нормально работает (пока еще). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
amw 0 12 февраля, 2009 Опубликовано 12 февраля, 2009 · Жалоба Проблема проявлась через несколько часов работы. Закончилась тем, что основная масса блоков помечается как bad (подозреваю, что не пометились только блоки которые не пытались перезаписывать). После стирания всей флеш - ФС снова нормально работает (пока еще). Ну тогда похоже глюки yaffs. Помеченный как BAD блок можно стереть, и он будет выглядеть "как новенький". У Samsung не стираются блоки, помеченные производителем. У ST не помню. Попробуйте посмотреть spare область помесенного yaffs блока. Что там есть и как оно кореспондируется с мануалом. Если не ошибаюсь, сектор 512 байт у этой флеши, значит что записано в spare[5]. Возможно в yaffs (я с этой фс не работал) есть что-то наподобие структуры struct spare { char X; int ECC; char Y; } И тут вопрос с выравниванием. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться