OP updated with the twrp odin repack from yuga.
- based on TWRP 2850 for yuga
- changed TWRP splash curtain
- adddd F2FS binary from olivier
http://www.mediafire.com/download/38gxejrk6v3yrxe/TWRP285v4.img
WARNING! THIS WILL WIPE YOUR DATA PARTITION (INTERNAL SCDARD). MAKE SURE YOU HAVE A BACKUP BEFORE PROCEEDING!
Click to expand...
Click to collapse
Hope this helps, guide on how to convert /CACHE and /DATA to F2FS partitions. I've tried this before on my Nexus7 2012, and F2FS improves benchmark scores. Same behavior happened on my ZL, it improved benchmark from 21k to 26k!
Requirements:
1. ROM / Kernel that supports F2FS. I've tried this on CM12 build 03/12 and CM12 build 03/15, F2FS works ok. I believe this has been merged to CM since Mar builds.
2. mkfs.f2fs binary. Credits to Olivier for this. I grabbed his MultiROM TWRP for ODIN, unpack and grabbed the mkfs.f2fs binary. Unpack regular TWRP for ODIN and copied over the mkfs.f2fs binary, repack and flashed it on the FOTA partition.
3. Unlocked bootloader. Since we will be using custom ROM / kernel that supports F2FS, we need to have unlocked bootloader, or else it will result to softbrick. Hopefully when Sony releases Android5, hoping that their stock kernel supports F2FS so that no need to unlock bootloader.
Steps: (pics included for reference)
1. Make sure you are on modified TWRP with the mkfs.f2fs binary. If you dont want to unpack / repack, use the MultiROM TWRP.
2. Select Advanced > Terminal Command.
3. Start on /system/bin (optional).
4. Enter the command to format /cache to F2FS
mkfs.f2fs /dev/block/platform/msm_sdcc.1/by-name/cache
Click to expand...
Click to collapse
5. Enter the command to format /data to F2FS
mkfs.f2fs /dev/block/platform/msm_sdcc.1/by-name/userdata
Click to expand...
Click to collapse
6. Reboot recovery to refresh / reread the partitions. This step is very IMPORTANT!
7. If you have custom TWRP themes, it will revert back to plain TWRP, due to /data partition being formatted to F2FS.
8. Go to Wipe > Advanced Wipe.
9. Select Cache >Repair or Change Filesystem
10. It will show that /cache partition is now on f2fs filesystem.
11. Repeat step 9, select Data > repair or Change Filesystem. It will show /data partition is now on f2fs filesystem.
ADDED NOTE : I've also tried to format /system partition to F2FS, it formats it successful, but upon flashing the CM12 ROM, it reverts back to EXT4. I beleive this behavior happens because the system.img is in EXT4 format. This will be next project soon to complete ALL F2FS - /system /data / cache on F2FS partitions.
WARNING! THIS WILL WIPE YOUR DATA PARTITION (INTERNAL SCDARD). MAKE SURE YOU HAVE A BACKUP BEFORE PROCEEDING!
Click to expand...
Click to collapse
BIG THANKS to OLIVIER for the MultiROM TWRP and of course to CM12 for implementing F2FS.
How could I know that currently running kernel indeed runs F2FS?
ryanrudolf said:
Hope this helps, guide on how to convert /CACHE and /DATA to F2FS partitions. I've tried this before on my Nexus7 2012, and F2FS improves benchmark scores. Same behavior happened on my ZL, it improved benchmark from 21k to 26k!
Requirements:
1. ROM / Kernel that supports F2FS. I've tried this on CM12 build 03/12 and CM12 build 03/15, F2FS works ok. I believe this has been merged to CM since Mar builds.
2. mkfs.f2fs binary. Credits to Olivier for this. I grabbed his MultiROM TWRP for ODIN, unpack and grabbed the mkfs.f2fs binary. Unpack regular TWRP for ODIN and copied over the mkfs.f2fs binary, repack and flashed it on the FOTA partition.
3. Unlocked bootloader. Since we will be using custom ROM / kernel that supports F2FS, we need to have unlocked bootloader, or else it will result to softbrick. Hopefully when Sony releases Android5, hoping that their stock kernel supports F2FS so that no need to unlock bootloader.
Steps: (pics included for reference)
1. Make sure you are on modified TWRP with the mkfs.f2fs binary. If you dont want to unpack / repack, use the MultiROM TWRP.
2. Select Advanced > Terminal Command.
3. Start on /system/bin (optional).
4. Enter the command to format /cache to F2FS
5. Enter the command to format /data to F2FS
6. Reboot recovery to refresh / reread the partitions. This step is very IMPORTANT!
7. If you have custom TWRP themes, it will revert back to plain TWRP, due to /data partition being formatted to F2FS.
8. Go to Wipe > Advanced Wipe.
9. Select Cache >Repair or Change Filesystem
10. It will show that /cache partition is now on f2fs filesystem.
11. Repeat step 9, select Data > repair or Change Filesystem. It will show /data partition is now on f2fs filesystem.
ADDED NOTE : I've also tried to format /system partition to F2FS, it formats it successful, but upon flashing the CM12 ROM, it reverts back to EXT4. I beleive this behavior happens because the system.img is in EXT4 format. This will be next project soon to complete ALL F2FS - /system /data / cache on F2FS partitions.
BIG THANKS to OLIVIER for the MultiROM TWRP and of course to CM12 for implementing F2FS.
Click to expand...
Click to collapse
Sweet! I would love to see this on my Z2. It does wonders for my Nexus 10!
Would be nice if you attached mkfs.f2fs here in this thread.
phhuang said:
How could I know that currently running kernel indeed runs F2FS?
Click to expand...
Click to collapse
if you are running a fusion3 based device (z, zr, zl, tablet z, tablet z wifi) with a nightly or a recent build direct from source, it supports f2fs. i merged support for it directly into cm12 on the first of march.
thanks QSNC youre the man! still figuring out how to set /system to F2FS.
mkfs.f2fs binary
I attached mkfs.f2fs binary which is compiled from https://github.com/CyanogenMod/android_external_f2fs-tools
Thanks! Then I guess my Z1 could just pass it by now...
It says
Code:
/system/bin/mkfs.f2fs: line 1: syntax error: unexpected "("
-------------EDIT
I got it working using this, although I had to set the permissions to 755 after pushing via adb.
ADDED NOTE : I've also tried to format /system partition to F2FS, it formats it successful, but upon flashing the CM12 ROM, it reverts back to EXT4. I beleive this behavior happens because the system.img is in EXT4 format. This will be next project soon to complete ALL F2FS - /system /data / cache on F2FS partitions.
I think it is becuase of the block-based zip-filesfrom lollipop. The zip file flashes a filesystem directly instead of mounting /system and copying the system files to this patition.
i forgot to add, im using official TWRP 2.8.5.0 for Yuga (Xperia Z), i just repack it to use build.prop of ZL and included the mkfs.f2fs binary from MultiROM TWRP.
qsnc said:
if you are running a fusion3 based device (z, zr, zl, tablet z, tablet z wifi) with a nightly or a recent build direct from source, it supports f2fs. i merged support for it directly into cm12 on the first of march.
Click to expand...
Click to collapse
the merges u made, its only for fusion3 or its already also on CM12 z1, z2, z3 devices?
Good looks on this! Gonna be following this thread.
Can't you format using TWRP GUI?
After I tried it TWRP won't mount the new partitions. Not after reboot either. Z1 compact, TWRP 2.8.4.0 with mkfs.f2fs repack.
Edit: Seems like stock CM12 @ Z1c don't support f2fs yet. I've successfully formatted cache through terminal in TWRP, but when booting I get bootloop. And TWRP still won't mount it.
arunsai123 said:
I attached mkfs.f2fs binary which is compiled from https://github.com/CyanogenMod/android_external_f2fs-tools
Click to expand...
Click to collapse
Your compile is much bigger than any other mkfs.f2fs out there. (Most is 166kb uncompressed). Why is that?
Quick update -
I flashed my ZL with latest unofficial nightly build of Shufuking. It is based on CM12.1 / Android 5.1. F2FS still works, im running /cache and /data as F2FS.
Your guide is a bit complicated - actually, you can just flash a TWRP build of mine (http://olivier.hubdroid.com/yuga/twrp/) and switch to F2FS, without having to download a separate binary etc:
Go to Wipe > Advanced Wipe > select the desired partition > Repair or change filesystem > Change filesystem > f2fs
@Olivier
i tried your build fof odin, in this link http://olivier.hubdroid.com/odin/twrp/
but it won't boot. once i flash to fota and reboot, cyanogen recovery boots up. i tried every nightly build but it wont boot. i also tried the yuga builds for my odin same behavior. hope you csn create for odin, i'llbe happy to be tester for it.
OP updated with the twrp odin repack from yuga.
- based on TWRP 2850 for yuga
- changed TWRP splash curtain
- adddd F2FS binary from olivier
http://www.mediafire.com/download/38gxejrk6v3yrxe/TWRP285v4.img
ryanrudolf said:
@Olivier
i tried your build fof odin, in this link http://olivier.hubdroid.com/odin/twrp/
but it won't boot. once i flash to fota and reboot, cyanogen recovery boots up. i tried every nightly build but it wont boot. i also tried the yuga builds for my odin same behavior. hope you csn create for odin, i'llbe happy to be tester for it.
OP updated with the twrp odin repack from yuga.
- based on TWRP 2850 for yuga
- changed TWRP splash curtain
- adddd F2FS binary from olivier
http://www.mediafire.com/download/38gxejrk6v3yrxe/TWRP285v4.img
Click to expand...
Click to collapse
Logs. I need logs. If everything else fails, flash this hack too.
@Olivier
hack works! it now boots to TWRP 2860! i suppose if we flash new CM 12.1 nightly, we have to flash the hack again? thanks very much!
EDIT:
i reflashed original CM12.1 boot.img and same behavior happened, TWRP wont boot, it goes to cyanogen recovery. unpack / repack CM12.1 boot.img and replace the elf ram disk from your hack, it now works ok! am i correct the hack only replaces the elf ram disk?
Hey,
I have a Nexus 7 2012 32GB. It was previously running pretty slow but then I installed SlimKat with F2FS and it started running fine again and I'm very happy with it. Today and earlier this week, I tried installing Android 5.1.1 since I like the Lolipop UI but I was met with a major problem.. I tried the latest nightly of CyanogenMod 12.1, Dirty Unicorns 9.7 (and 9.8) and Blisspop and their problem is that after one boot, the /data partition got corrupted.. I tried repairing it but got ERR=255 and the only way to repair it was to change /data to ext4 and then format to f2fs back again. All four ROMs are confirmed to work with F2FS... I have reverted back to SlimKat 4.4.4 with a backup since it's the only ROM that doesn't corrupt my /data partition. The device doesn't boot when the data partition is damaged and the recovery sometimes crashes (I use TWRP 2.8.7.0). Is there a fix to this or will it be fixed in the future? I'd be happy to provide any logs needed. I use Opengapps pico altough I don't think that really matters. F2FS makes my device much faster but the corruption problem is too major for me..
Thanks,
Aurora
I was trying to convert my system, data and cache to F2FS but after the conversion I can't use Data anymore (apparently it cannot mount data and system anymore).
Could be a problem LinkedIn to the grarak modded 3.0.2 I'm using for Exodus 6?
Any feedback is welcome!
Up
Most probably as the official one from twrp supports f2fs natively.
I would recommend to go back to official twrp convert to f2fs properly from there and then flash the modified one, do this if you are brave enough, i havent tried this method but it should work. If all fails stay on ext4 till garak or twrp updates their twrp versions.
Thanks for you answer... I thought the same... I'll try as the new phone will come and let you know...
IlD4nX said:
I was trying to convert my system, data and cache to F2FS but after the conversion I can't use Data anymore (apparently it cannot mount data and system anymore).
Could be a problem LinkedIn to the grarak modded 3.0.2 I'm using for Exodus 6?
Any feedback is welcome!
Click to expand...
Click to collapse
I got the same error for my Redmi Note 3 ... tried 3.0.0.0, 3.0.2.2, but nothing. then a guy suggested this:
https://www.androidfilehost.com/?fid=24591000424943818
and it worked. Now I can't boot on f2fs, just trying to make it work on 6.0.1 Mokee rom
Hello, Everyone...... I unlocked the bootloader of my Moto G4 plus, installed a custom recovery (TWRP 3.1.0 Shreps) and tried to flash lineage OS latest build with Open Gapps pico, All i get is a bootloop. The same happens with Omnirom and other roms... So far only RR and Invicta OS booted up successfully.... rest others give me a bootloop... why? Did i miss something? Please Help me
Also the cache partition and data partition are formatted in f2fs....can anyone tell me the default formats of these two partitions? Maybe f2fs is creating an issue here?
Amogh Thambi said:
Hello, Everyone...... I unlocked the bootloader of my Moto G4 plus, installed a custom recovery (TWRP 3.1.0 Shreps) and tried to flash lineage OS latest build with Open Gapps pico, All i get is a bootloop. The same happens with Omnirom and other roms... So far only RR and Invicta OS booted up successfully.... rest others give me a bootloop... why? Did i miss something? Please Help me
Also the cache partition and data partition are formatted in f2fs....can anyone tell me the default formats of these two partitions? Maybe f2fs is creating an issue here?
Click to expand...
Click to collapse
Are you clean flashing ROM? (Wiping /system /data /cache /delvik-cache )
Anything else you are flashed with ROM and Gapps?
Try without GApps.
As I understand it, Invicta and RR have f2fs support for cache built in, whereas other ROMs may not have the support (there's a particular commit, if I recall).
The normal formats for cache and system are ext4 whereas data appears to be f2fs. You may wish to attempt formatting cache as ext4 and seeing if your device can boot.
Yes, It worked. Formatted cache to ext4 and it works. Thanks Bros. Facing issues with VOLTE in Lineage, Omni and AOSP extended. I placed my jio sim in sim 1 and enabled 'enhanced LTE' but still no luck with VOLTE.
Amogh Thambi said:
Yes, It worked. Formatted cache to ext4 and it works. Thanks Bros. Facing issues with VOLTE in Lineage, Omni and AOSP extended. I placed my jio sim in sim 1 and enabled 'enhanced LTE' but still no luck with VOLTE.
Click to expand...
Click to collapse
VoLTE doesn't works on LineageOS, you can try Unofficial Builds which may support VoLTE or you can try RR OS which supports VoLTE Natively