[Nexus 5 Android Development] danarama:
Opening posts updated:

6.43.4 (01.06.2014)

- f2fs: recreate /etc/fstab after ext4/f2fs conversion for proper use of system mount command

- f2fs: fix nandroid restore to f2fs partitions

- f2fs: support format extra storage to f2fs (vold patch needed)

- f2fs: support switching between f2fs/ext4 (needs f2fs in kernel modules), thanks [MENTION=2072381]KumaJay[/MENTION]a

- f2fs: reload volume table after f2fs/ext4 conversion (no reboot needed after conversion)

- f2fs: do not format whole /data when not expected on /data/media devices

- f2fs: allow /data f2fs/ext4 conversion for non data_media devices

- f2fs: compile with prebuilt AOSP kernel as provided by [MENTION=5499742]dennes544[/MENTION] - thanks!!!

- allow ext4 f2fs backup data migration in nandroid

- nandroid backup: fix 'media' exception

- use libtar as default for backup/restore

- Preserve recovery settings after a wipe

- fix save/restore settings menu label

- create /data/media directory after internal storage is wiped

- fix text print colour could persist after md5 check

F2FS:

What is it? - Flash-Friendly File System. designed by Samsung to be used spcifically on Flash media. Can increase Read / write speeds, increasing the overall performance of your phone.

Where to use it? - Since not many read / writes happen anywhere except /data, it's best to use it only on the /data partition (including /sdcard)

Do I need anything special? - Yes, you need an F2FS supported kernel

Can you recommend an AOSP Kernel? - Yes, use the AOSP/CAF kernels created by [MENTION=5499742]dennes544[/MENTION] here. If you need something a bit more custom, flash ElementalX afterwards

Any other kernels that work? - I can't say I have tested them all. So far, I haven't managed to get Faux to work. I have used a custom version of Franco however and that worked fine (see link in thread above). I'm not really here to recommend / catalogue kernels though

Any further advice? - It depends on the kernel if it supports other partitions to be formatted as f2fs. For example, some may not allow /system to be formatted as f2fs - but this is not much use anyway, o please stick to just /data and /sdcard

Do I need to keep swapping between F2FS Philz and Standard Philz? - No, it is all one kernel. No need to flash different ones.

How do I use this? - See below

Here are the steps:

- Ensure you have an F2FS kernel (put it on your sdcard now) or have the .img ready on your computer

- Take a full Nandroid backup

- backup your ENTIRE /sdcard to PC (adb pull is as good as the rest - and also a good test that you know what you're doing)

- Flash the updated recovery

- Go to "mounts and storage"

- Press "toggle f2fs ext4 migration"

- Press "format /data and /data/media (/sdcard)"

- Select f2fs and "Yes" - Your /data and /sdcard are now blank

- adb push your clockworkmod folder back to /sdcard (and f2fs kernel if you're using a zip) - You may need to mkdir /data/media/0 as 0 *may be missing

- Nandroid restore your /data partition

- Flash your F2FS kernel

- Copy sdcard data back, using MTP in Android is best

Notes:

Please note, the migration toggle is disabled again as soon as you leave that menu. The format options will format to whatever each partition is already formatted to whilst the toggle is disabled. So if you previously formatted to f2fs and then reboot recovery and format again, it will continue to format to f2fs until you enable migration and choose the opposite option (ext4).

Also, whilst migration is enabled, you willbe prompted which fs to format to; ext4 formats to ext4, f2fs to f2sf and default to whatever it is already formatted to.