[HD2 Android Q&A, Help & Troubleshooting and Genera] HypoTurtle:
Disclaimer, apply the following at your own risk, I plan to test most if not all of what I post but can't guarantee that you will not cause damage or lose data, and if you do I take no responsibility, that being said it is a simple adaption to current installations.

This is in no way (currently) a replacement for ext4 (or NAND), and shouldn't be seen as a replacement for NativeSD (I'm just piggybacking of their installation zips) compatibility across the board just isn't good enough yet.

Mark 1 - Nilfs2

Nilfs2 should be good as a replacement for lower class cards and may show a speed improvement on class 2/4 cards. If your installing on a fresh card and have the means to use nilfs2 then please try before/after using ext4 and report back your findings. Any requests for things currently using ext4 will be looked at to make them compatible with nilfs2 if possible.

[B]Partition creation[/B]

Currently only via a Linux OS, will try and trick a recovery to create a nilfs2 instead of ext but no promises

[I]Method 1. Terminal[/I][CODE]sudo apt-get install nilfs-tools
sudo mkfs -t nilfs2 /dev/sdc2

Changing sdc2 to the partition thats to be formatted, look in gparted to be sure your formatting the correct one

Method 2. Disk Utility

You can use Disk Utility from within a LinuxOS

Method 3. Gparted live

Partition creation should be possible using a gparted live usb or cd

Method 4. On device

Copy mkfs.nilfs2 binary to /system/xbin

duplicate fstab renaming to mtab

sudo mkfs.nilfs2 /dev/block/mmcblk0p2

ROM Modifications

Currently, starting with a NativeSD zip as a base only need to alter the install.sh and modify a few lines within the init (within /kernel/bootsd/initrd.gz)

INSTALL.SH

mount -t ext4 /dev/block/mmcblk0p2 /ext4p

change to

mount -t nilfs2 /dev/block/mmcblk0p2 /ext4p

INIT

mkdir -p /NativeSD
mount -t ext4 -o rw,noatime,nodiratime,barrier=0 /dev/block/mmcblk0p2 /NativeSD

change to

mkdir -p /NativeSD
mkdir -p /nilfs
mount -t nilfs2 /dev/block/mmcblk0p2 /nilfs
mount -t nilfs2 -o rw,noatime,nodiratime,barrier=0 /dev/block/mmcblk0p2 /NativeSD

ROM Installation

Installation confirmed working via CWM, and modified 4ext (recoverymod) (will need to test others)

After Install modifications

Download Nilfs2.zip from #2 , using a root browser or adb copy the system folder to / (thus adding the folders /files to /system). Then need to change permissions of /system/xbin/nilfs_cleanerd , /system/etc/nilfs_cleanerd.conf and /system/etc/init.d/04nilfs to 755 (permissions required will probably change at some point)

Backup

Backup of NILFS2 partition can be done by CWM but only if android is also in NAND as it needs to backup the whole system.

REQUEST: Help from any one who has experience with NiLFS2, and ideally people who have gotten the cleaner to run properly, I'm sure it ran correctly several times, but can't as yet recreate how I got it to work. Let me know if you think you can help [/COLOR][/B]

User Experience

Xylograph's user experience and benchmark NAND / EXT4 / NiLFS2

AnTuTu and Androbench benchmarks[/CODE]

F2FS

[SIZE="2"][B]Partition creation[/B]
[I][B]Linux only[/B][/I]
Download [URL="http://sourceforge.net/projects/f2fs-tools/"]f2fs tools[/URL] and extract,
cd into folder and run the following[CODE]autoreconf --install
sudo chmod +x configure
sudo ./configure
sudo make
sudo make install

Now you can format:

sudo umount /dev/sdd1
sudo mkfs.f2fs /dev/sdd1

[/SIZE][/CODE]

To do list

Tidy up the Aroma installer to say nilfs2 instead of ext

Modify a recovery (needed still???)

Modify installer to allow NAND/ext4/nilfs2 installation

Optimize init.d script

Optimize init mounts

Possible beneficial references from across the web

NiLFS website

Not sure if ext4 would have the same problem as ext2

Btrfs

Kernel updates??

Credits / Thanks

Unhelpful for the nilfs2 binaries

Xylograph and securecrt for NativeSD Installation method

ROM devs. (Updated as ROM diffs. added)

Xylograph for AOKP, PA, CyanX

Smokin901 for MIUI

Tytung for Nexus-HD2

Rick1995 for BareBones CM7

Kernel devs.

Securert

Tytung