Hi,
 
 When the directory is NOT empty, I try to remove dir by "rmdir" command. Normal should return fail, but YAFFS return true. The files under this directory  is lost, and the file space can not be free.
Seems "yaffs_UnlinkWorker" don't check if the directory is empty when obj->variantType is YAFFS_OBJECT_TYPE_DIRECTORY
 
# # mount -t yaffs2 /dev/block/mtdblock9 /debug
# # cd /debug
# # ls -l
drw-rw-rw- root     root              1970-01-01 05:31 lost+found
# # mkdir aaa
# # cp /data/flash_eraseall aaa
# # df .
.: 9216K total, 2780K used, 6436K available (block size 4096)
# # ls -l
drwxrwxrwx root     root              1970-01-01 05:32 aaa
drw-rw-rw- root     root              1970-01-01 05:31 lost+found
# # rm aaa
rm failed for aaa, Is a directory
# # ls -l aaa
-rwxrwxrwx root     root      1660816 1970-01-01 05:32 flash_eraseall
# # rmdir aaa
# # ls -l
drw-rw-rw- root     root              1970-01-01 05:31 lost+found
# # df .
.: 9216K total, 2780K used, 6436K available (block size 4096)
# #
# /data/busybox uname -a
Linux localhost 2.6.29-omap1 #1 Sun Aug 2 22:32:04 CDT 2009 armv7l unknown

 
Thanks
Li Yingchao