> Hello everyone, > > Question #1: I was told that UBIFS is better than Yaffs2, is that true? What are pros and cons? > Question #2: It was said that Android 2.1 cannot use Yaffs2, is that true? If so, why? > > BR > Russell > > > _______________________________________________ > yaffs mailing list > yaffs@lists.aleph1.co.uk > http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs > I recently ported ubifs to a balloon3 development system and wish to report some findings. The kernel is 2.6.34 with nand write verify disabled due to subpage write problems exposed by ubifs, using yaffs checkout 2009-09-10 and using default ubifs lzo compression. 1) The first test was decompressing a 41MB tgz unconfigured rootfs from a pen drive into a nand partition. This was done using tar -xzf ../sda1/embdebianrootstrap.tgz from the empty mounted nand partition. yaffs2: 5:20 ubifs: 1:38 2) dpkg --configure -a after chrooting into the new rootfs partition yaffs2: 6:25 ubifs: 5:01 3) booting from bootldr prompt into the newly created rootfs cleanly unmounted. This including kernel reading-decomprerssing-initialisation time of about 5 secs. yaffs2: 0:28 ubifs: 0:23 4) rebooting into cleanly unmounted rootfs yaffs2: 0:28 ubifs: 0:23 5) rebooting into power yanked rootfs (no writes) yaffs2: 0:36 ubifs: 0:24 6) single write to small file then reboot via power yank yaffs2: 0:36 ubifs: 0:24 Under ubifs, df reported 69MB of filesystem space used representing 126MB of du reported data. The increased boot/read speed might be accounted for by the fewer nand reads (software ecc) needed due to data compression. This leaves the tgz decompression figures to be explained as the difference is remarkable. Copying the tgz to /dev/null took 44 seconds of reading from a usb 1 mounted memory stick reducing the residual timings to yaffs2: 4:36 vs ubifs: 0:54. These figures take no account of newer yaffs2 speed improvements, no account of the degraded power security of cached writes and no account of reliability issues surrounding not verifying nand writes. Verifying nand writes is ok under ubifs but the header offsets must be page (not sub-page) aligned until sub-page verifies are fixed in mtd. Using page aligned headers which requires that userland ubifs utils must have knowledge of the underlying nand architecture - ugh. My impression of running our applications on ubifs is that the write speed and boot speed (especially without a clean unmount) is faster but without the numbers to back it up this is only an impression. Installing packages using dpkg (which makes many writes/moves) also seems much faster. Overall reliability is far too early to judge. If someone can tell me how to do a git checkout without using long unmemorable nubers I could redo this with a more modern yaffs2. Nick Bane