HTC fstab updates

Encryption Notice

Beginning with nightly 20140501 (or milestone 7, if you prefer the stable channel), the location where encryption information is stored is being moved on the following devices:

  • evita – HTC One XL
  • fireball – HTC Droid Incredible 4G LTE
  • jewel – HTC EVO 4G LTE
  • ville – HTC One S

If you utilize Android’s built-in data encryption (i.e. Settings > Security > Encrypt phone), read and follow these instructions before installing a new recovery and any nightly equal to or newer than 20140501 (or milestone 7). If you do not utilize data encryption, you can safely skip to the next section, “Recovery Update”.

Technical info for the curious: the “extra” mmcblk partition is the new home for encryption information, rather than the footer of /data.

In order to preserve your data, follow this procedure:

  1. Install a recent build of TWRP with the “legacy” encryption location
    twrp-2.7.0.7-device-oldenc.img recoveries are available at android.cmphys.com
  2. Upon entering TWRP, enter your passcode to allow reading from /data
  3. Make a backup of your /data partition
  4. Reboot to Android
  5. Delete /sdcard/TWRP/.twrps    Many thanks to Clark008 for debugging this
  6. Flash TWRP 2.7.0.8 or newer (available at android.cmphys.com and AFH)
  7. Restart to recovery, but this time do not enter your passcode when entering TWRP (cancel)
  8. Restore your /data backup (this will wipe it beforehand) – it is now decrypted
  9. You should be able to boot into Android without a passcode now. Only re-encrypt your phone if using a build of CyanogenMod equal to or newer than 20140501.

Recovery Update

Beginning with nightly 20140501 (or milestone 7, if you prefer the stable channel), several HTC devices are being transitioned to a new fstab layout. This will not affect your data. This change requires kernel support in recovery for CyanogenMod packages to install.

Affected devices include:

  • evita – HTC One XL
  • fireball – HTC Droid Incredible 4G LTE
  • jewel – HTC EVO 4G LTE
  • m4 – HTC One Mini
  • m7 – HTC One [GSM]
  • m7spr – HTC One [Sprint]
  • m7vzw – HTC One [Verizon]
  • ville – HTC One S

jewel and ville users: This is not the /data/media transition. That change is still being ruled out because there is simply no migration path that preserves data. With that said, if you are running an unofficial build of CyanogenMod that also incorporates this fstab change, TWRP recoveries are available from android.cmphys.com.

All of these recoveries are backwards compatible.

  • ClockworkMod recoveries with version greater than or equal to 6.0.4.8 support this fstab change. HTC One AT&T (m7att), HTC One T-Mobile (m7tmo), and HTC One non-US GSM (m7ul) can safely use the recovery for the generic “HTC One” (m7). Note: version 6.0.4.8 for m4 may have been built before by-name support was added to the kernel.
  • TWRP recoveries with version greater than or equal to 2.7.0.8 support this fstab change.* If you have a favorite recovery maintainer, encourage them to incorporate “block: by-name” support into their recovery kernels!
    • (*) Official 2.7.1.0 for m4, m7, m7spr/m7wls, and m7vzw/m7wlv mistakenly did not include the necessary fstab support, so 2.7.1.1 was released for these devices, addressing the issue.
    • More recent unofficial builds of TWRP can be found at android.cmphys.com. You’ll find source code for all these devices linked there as well.

Troubleshooting

If booting into TWRP 2.7.0.8 causes the TeamWin logo to repeatedly flash without ever reaching the home screen:

  1. Reboot your device to Android: either hold power until the device turns off or use adb reboot
  2. Delete the settings file /sdcard/TWRP/.twrps
  3. Reboot back to recovery

This problem is fixed in TWRP 2.7.1.0 and later.

Mirrors for recoveries

All TWRP recoveries mentioned above have been mirrored to Android File Host

Content of this page is based on informations from wiki.cyanogenmod.org, under CC BY-SA 3.0 licence.