Hi Vyacheslav, > I suppose that current implementation is not bad. And it is possible > to give what you want by simple management of superblock's > update timeout. Because and now superblock is updated on mount/umount > and with frequency is defined by some timeout. What would happen in case of an unclean shutdown and a very large superblock update intervall (several hours)? As far as I understood, this is where Andreas' patch would come into play? > Ok. But I can't see anything bad for my approach. Because primary reserved > area will be 8MB. So, if super root (and all other info) is 4KB, for example, then > we can do 2048 write operations without any erase operations. The problem with this approach is, that there is a minimal write unit which size is dependant on the FTL - explained in the linaro wiki: > The smallest write unit is significantly larger than a page. > Reading or writing less than one of these units causes a full unit to be accessed. > Trying to do streaming write in smaller units causes the medium to do multiple > read-modify-write cycles on the same write unit, which in turn causes multiple > garbage collection cycles for writing a single allocation group from start to end. So updating 4kb pages in a linear fashion would cause read-modify-write cycles on most devices, with blocks as large as the mapping unit (for SD cards this often means a full erase block of several MBs). The chapter "FAT optimization" lists several of those caveats, I found it a very intersting and worthwhile reading. Regards, Clemens -- To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html