Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to Nexus style data layout and allow apps, dalvik-cache and media from external sdcard #21

Open
wants to merge 10 commits into
base: cm-12.1
Choose a base branch
from

Commits on Oct 2, 2015

  1. pyramid:audio: Set build flags

    ivanich authored and eugenesan committed Oct 2, 2015
    Configuration menu
    Copy the full SHA
    0fa077a View commit details
    Browse the repository at this point in the history
  2. Revert "pyramid: Drop audio_policy"

    This reverts commit c05c271.
    ivanich authored and eugenesan committed Oct 2, 2015
    Configuration menu
    Copy the full SHA
    18d71ef View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    43995e5 View commit details
    Browse the repository at this point in the history
  4. pyramid: Use BFQ

    ivanich authored and eugenesan committed Oct 2, 2015
    Configuration menu
    Copy the full SHA
    3e3b7bf View commit details
    Browse the repository at this point in the history
  5. pyramid: Provide global HTC symbols via libc

    Parts of this commit originated in:
      Add HTC Logging functions to support newer HTC props.
      Richard Ross
      I70d0a6878dddf0f41d96735febda82c93496d8ec
    ivanich authored and eugenesan committed Oct 2, 2015
    Configuration menu
    Copy the full SHA
    ea6b234 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    8485455 View commit details
    Browse the repository at this point in the history
  7. pyramid: Don't set I/O scheduler in this way

    * Can be set in props via sys.io.scheduler
    ivanich authored and eugenesan committed Oct 2, 2015
    Configuration menu
    Copy the full SHA
    3bd45ec View commit details
    Browse the repository at this point in the history
  8. Switch to nexus style mode completely v1

    Use Nexus style data layout, allow data components on external sdcard and some optimizations and cleanups
    
    Use internal data as in Nexus devices (sdcard0 is emulated) and external sdcard now called sdcard1.
    
    Optional second partition of external sdcard (data1) can be used to store selected data components such as:
    app, data, media and dalvik-cache. To do so, one must create a folder with a name of the component/s on data1.
    
    We register sdcard1 as secondary storage allowing built-in asec mechanism to be used to move apps to it.
    
    Also:
    * Add misc recovery related settings and coresponding changes to TWRP in order to support above.
    * Modify recovery to backup of emulated internal sdcard and apps in asac container.
    * Remove duplicated default init.rc code
    * Optimize storage, use cache as secondary swap and reuse devlog as cache
    
    To summarize, this patch allows user to encrypt device including sdcard0,
    place selected data components on external sdcard and hopefuly provides better performance.
    
    Change-Id: Ib52086347eb1f8fc9fd11031428f2c49bdda9afb
    eugenesan committed Oct 2, 2015
    Configuration menu
    Copy the full SHA
    5b9b4a9 View commit details
    Browse the repository at this point in the history
  9. Switch to nexus style mode completely v2

    This is a 2nd iteration of the patch in which we go completely Nexus.
    We eliminate external sdcard completely and use it as /data that can be fully encrypted.
    In addition we perform series of storage layout changes, cleanups and optimizations.
    
    Now to the details:
    * Use original "userdata" parititon as /system (60% more space for GAPPS and DEX data).
    * Reduce size of primary zram swap by half (Add more RAM).
    * Use original "system" as secondary swap (Provide backup swap for smaller zram swap).
    * We create pre-odexed build which should allow the following:
      - Avoid usage of userdata for DEX data of system apps and data duplication
      - Avoid encryption of system DEX data (which is public)
      - Allow much faster access from /system partition
      - Allow much faster boot with encrypted data (when data is encrypted,
        dalvik-cache is also and need to be re-created on each boot for asking user's password!)
      - Enable ART-small mode which pre-compiles (into dalvik-cache) only bare minimum of clasees
    * Add misc recovery related settings and coresponding changes to TWRP in order to support above.
    * Modify recovery related settings (this device tree can be used for building TWRP image)
    * Remove duplicated default init.rc code
    * General cleanups
    
    Change-Id: I60b8303fce99a83c162ca11bb1304a551c48404a
    eugenesan committed Oct 2, 2015
    Configuration menu
    Copy the full SHA
    fd693a0 View commit details
    Browse the repository at this point in the history

Commits on Oct 3, 2015

  1. Switch to nexus style mode completely v3

    This is a 3rd iteration of the patch in which we go completely Nexus.
    We eliminate external sdcard completely and use it as /data that can be fully encrypted.
    In addition we perform series of storage layout changes, cleanups and optimizations.
    
    Now to the details:
    * Use original "userdata" parititon as /system (60% more space for GApps and ODEX data).
    * Use original system partiton as /cache.
      This also allow much faster boot with encrypted data (dalvik-cache is available on boot for asking user's password).
    * Reduce size of primary zram swap to 96MB since profiling showed this to be sufficient (20% more RAM).
    * Use original "cache" partition as secondary swap (to provide backup swap for smaller zram swap).
    * We create pre-odexed build optimized for "small" devices which should allow the following:
      - Avoid usage of userdata for DEX data of system apps and data duplication
      - Avoid encryption of ODEX data of system apps
      - Allow much faster access from /system partition
      - Enable ART-small mode which pre-compiles ODEX data for system apps and relocaes to dalvik-cache
        only bare minimum of clasees
    * Add misc recovery related settings and coresponding changes to TWRP in order to support above (this device tree
      can be used for building TWRP image)
    * Remove duplicated default init.rc code
    * General cleanups
    
    Change-Id: Ieb2b58569fcc20bb2d77def3f205fd009386d7bc
    eugenesan committed Oct 3, 2015
    Configuration menu
    Copy the full SHA
    b7fdd49 View commit details
    Browse the repository at this point in the history