Hi, I'm trying to get an yaffs filesystem working on a Davinci (DM365 - ARM
based) system.
I patched my git kernel with your master git repository (using the patch-
ker.sh, without any issue) and compiled with the following config
declarations:
CONFIG_YAFFS_FS=y
CONFIG_YAFFS_YAFFS1=y
# CONFIG_YAFFS_9BYTE_TAGS is not set
# CONFIG_YAFFS_DOES_ECC is not set
CONFIG_YAFFS_YAFFS2=y
CONFIG_YAFFS_AUTO_YAFFS2=y
# CONFIG_YAFFS_DISABLE_TAGS_ECC is not set
# CONFIG_YAFFS_ALWAYS_CHECK_CHUNK_ERASED is not set
# CONFIG_YAFFS_EMPTY_LOST_AND_FOUND is not set
# CONFIG_YAFFS_DISABLE_BLOCK_REFRESHING is not set
# CONFIG_YAFFS_DISABLE_BACKGROUND is not set
# CONFIG_YAFFS_XATTR is not set
The effect is that after an unmount + remount the file written on the
filesystem were lost, just like that:
root@imega:/mnt# flash_eraseall /dev/mtd3
Erasing 128 Kibyte @ 200000 -- 100 % complete.
root@imega:/mnt# mount -t yaffs2 /dev/mtdblock3 target/
yaffs: dev is 32505859 name is "mtdblock3" rw
yaffs: passed flags ""
root@imega:/mnt# df -h
Filesystem Size Used Available Use% Mounted on
/dev/mtdblock3 2.0M 768.0K 1.3M 38% /mnt/target
root@imega:/mnt# ls -l abigfile
-rwxr-xr-x 1 root root 670941 Sep 25 08:26 abigfile
root@imega:/mnt# cp abigfile target/
root@imega:/mnt# md5sum abigfile target/abigfile
15a45dba24bbdbb649c523d3b8aabc22 abigfile
15a45dba24bbdbb649c523d3b8aabc22 target/abigfile
root@imega:/mnt# touch target/emptyfile
root@imega:/mnt# df -h
Filesystem Size Used Available Use% Mounted on
/dev/mtdblock3 2.0M 1.4M 616.0K 70% /mnt/target
After a reboot it behave like that:
root@imega:~# mount -t yaffs2 /dev/mtdblock3 /mnt/target/
yaffs: dev is 32505859 name is "mtdblock3" rw
yaffs: passed flags ""
root@imega:~# ls /mnt/target/
lost+found
root@imega:~# df -h
/dev/mtdblock3 2.0M 944.0K 1.1M 46% /mnt/target
root@imega:~# ls /mnt/target/lost\+found/
obj257
root@imega:/mnt/target/lost+found# ls -l obj257
---------- 1 root root 670941 Sep 25 08:32 obj257
I've not a log, but after unmount+remount without rebooting it behave
pretty much the same.
Can anyone tell me how to debug this? There's some critical path I can look
for?
I started the thread on davinci mailing list, but Steve suggest me to ask
here:
http://linux.davincidsp.com/pipermail/davinci-linux-open-source/2011-
March/022485.html
Please keep me in CC as I'm not subscribed here.
Thanks a lot.
--
Andrea Gasparini
---- ImaVis S.r.l. ----
web:
www.imavis.com