i use it in yaffs2 mode,and run yaffs_bg_gc() as a background thread has a lower priority than threads that operate files.in the yaffs_gc_block(),i locked before yaffs_generic_obj_del() and unlocked after it finished. the effect is same as you said using without soft del.but if using soft del,some yaffs_obj will be reused after soft del and before recycled. and this may cause some problem that dev->gc_cleanup_list[] record this obj and deleted it background. ---- Regards, Ezio.