• topjohnwu's avatar
    Introduce new module mount implementation · a73e7e9f
    topjohnwu authored
    Rewrite the whole module mounting logic from scratch.
    Even the algorithm is different compared to the old one.
    
    This new design focuses on a few key points:
    - Modular: Custom nodes can be injected into the mount tree.
      It's the main reason for starting the rewrite (needed for Android 11)
    - Efficient: Compared to the existing implementation, this is the most
      efficient (both in terms of computation and memory usage) design I
      currently can come up with.
    - Accurate: The old mounting logic relies on handling specifically every
      edge case I can think of. During this rewrite I actually found some
      cases that the old design does not handle properly. This new design is
      architected in a way (node types and its rankings) that it should
      handle edge cases all by itself when constructing mount trees.
    a73e7e9f
Name
Last commit
Last update
app Loading commit data...
docs Loading commit data...
gradle/wrapper Loading commit data...
native Loading commit data...
scripts Loading commit data...
shared Loading commit data...
signing Loading commit data...
stub Loading commit data...
tools Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gitmodules Loading commit data...
LICENSE Loading commit data...
README.MD Loading commit data...
build.gradle Loading commit data...
build.py Loading commit data...
config.prop.sample Loading commit data...
gradle.properties Loading commit data...
gradlew Loading commit data...
gradlew.bat Loading commit data...
settings.gradle Loading commit data...