[Yaffs] Busy inodes and memry leak

Timofey V. Bondarenko timm@ipi.ac.ru
Thu, 14 Oct 2004 17:05:44 +0400


Hello.

Help me please.

I've pulled yaffs into uclinux 2.6.8 kernel.

It works, but there is 2 strange thing:

1st:
mount -t yaffs /dev/mtdblock1 /mnt
yaffs: dev is 32505857 name is "mtdblock1"
ls /mnt		#or make another access
umount /mnt
VFS: Busy inodes after umount. Self-destruct in 5 seconds.  Have a nice 
day...

The last line bother me, though nothing bad happened, i can 
mount/use/umount the flash several times.

2nd problem is more serious.
I loose memory when i'm working on mounted yaffs.
After each run of a command such as 'cp' or 'cmp'
the /proc/meminfo shows the 'MemFree' is decremented and
'Cached' is incremented by a roughly filesize of copyed/compared file.
It happened even when i do 'cp the-same-file /dev/null' several times.

The memory is never freed, even after umount.
Finally, i can't run a new processes due to insufficient memory.

Note, the uclinux is a no-MMU platform, so there is no virtual memory.

I'm not sure at all is it a yaffs' bug.
I'm just don't know where to dig and how is fs cahe controlled.

May anyone point me a direction?


Regards.
	Timofei.