YAFFS: Module len 101376 truncated

Взгляд изнутри

Модератор: Модераторы разделов

Ответить
IMB
Сообщения: 2559
ОС: Debian

YAFFS: Module len 101376 truncated

Сообщение IMB »

Доброго дня!
Есть плата с ARM-процессором, во время разработки работа ведётся с использованием файловой системы на NFS. Сейчас необходимо сделать устройство автономным, для чего разместил файловую систему на NAND-флеш. Система нормально стартует, но у некоторых компонентах наблюдаются проблемы, в частности...
Проверка модуля на NFS

user

# ls -l csl.ko -rw-r--r-- 1 1000 1000 101485 Jun 21 2011 csl.ko # md5sum csl.ko 86e68b2b4aa6a399ce463f3e01a25878 csl.ko # modprobe csl CSL: Module install successful, device major num = 253 CSL: Module version 0.10.00, built on Jun 20 2011 16:53:21 # modprobe -r csl


Копирование модуля на NAND-флеш

user

# mount -t yaffs2 /dev/mtdblock4 /mnt/yaffs: dev is 32505860 name is "mtdblock4" yaffs: passed flags "" yaffs: Attempting MTD mount on 31.4, "mtdblock4" yaffs: auto selecting yaffs1 yaffs: block 2302 is marked bad block 2303 is bad yaffs: block 2303 is marked bad block 2304 is bad yaffs_read_super: isCheckpointed 0 # cp csl.ko /mnt/root # ls -l /mnt/root/csl.ko -rw-r--r-- 1 root root 101485 Jan 1 08:02 /mnt/root/csl.ko # md5sum /mnt/root/csl.ko 86e68b2b4aa6a399ce463f3e01a25878 /mnt/root/csl.ko # umount /mntsave exit: isCheckpointed 0 save exit: isCheckpointed 0 # mount -t yaffs2 /dev/mtdblock4 /mnt/yaffs: dev is 32505860 name is "mtdblock4" yaffs: passed flags "" yaffs: Attempting MTD mount on 31.4, "mtdblock4" yaffs: auto selecting yaffs1 yaffs: block 2302 is marked bad block 2303 is bad yaffs: block 2303 is marked bad block 2304 is bad yaffs_read_super: isCheckpointed 0 # ls -l /mnt/root/csl.ko -rw-r--r-- 1 root root 101376 Jan 1 08:02 /mnt/root/csl.ko # md5sum /mnt/root/csl.ko f7c55fde4c44b90136bf4d664fa34acd /mnt/root/csl.ko # insmod /mnt/root/csl.ko Module len 101376 truncated insmod: can't insert '/mnt/root/csl.ko': invalid module format


Сперва я решил, что проблема в нескольких bad block-ах, но куда бы я не записывал модуль, везде поведение идентично - модуль битый.
Что странно, подобная проблема наблюдается только с этим модулем и ещё одним текстовым конфигом, который обрезается.
На данный момент я выкрутился тем, что запаковал все модули tar-ом и распаковываю их перед загрузкой, но, на мой взгляд, это костыль.
Первый раз встречаюсь с такой ситуацией и даже не могу её объяснить.
Подскажите?
Спасибо.
Спасибо сказали:
Ответить