Magisk/native/jni
topjohnwu a73e7e9f99 Introduce new module mount implementation
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.
2020-04-18 02:00:48 -07:00
..
core Introduce new module mount implementation 2020-04-18 02:00:48 -07:00
external Update BusyBox to build on latest NDK 2020-04-11 04:05:58 -07:00
include Introduce new module mount implementation 2020-04-18 02:00:48 -07:00
init Preparation for dynamic tmpfs path 2020-04-12 05:34:56 -07:00
magiskboot Make version reporting consistent 2020-03-23 01:17:13 -07:00
magiskhide Make version reporting consistent 2020-03-23 01:17:13 -07:00
magiskpolicy Make version reporting consistent 2020-03-23 01:17:13 -07:00
resetprop Make version reporting consistent 2020-03-23 01:17:13 -07:00
su Make version reporting consistent 2020-03-23 01:17:13 -07:00
systemproperties Update Makefiles 2020-04-06 22:45:08 -07:00
utils Update dir traversal code 2020-04-12 13:38:57 -07:00
.gitignore Add entrypoint to build test 2019-04-01 02:46:09 -04:00
Android.mk Introduce new module mount implementation 2020-04-18 02:00:48 -07:00
Application.mk Fix build on Windows 2020-01-26 12:27:07 +08:00