Pass bind mount storage data decision from java to zygote
Before we used store dirty data in system property to record if FUSE for a user is mounted, and zygote uses it to determine if storage mount is needed. It introduces performance issues and not reliable. This CL does the following changes: - System server determines if storage dirs mount are needed, and store the record inside system server. - It passes the verdict to zygote so zygote just need to follow the input. - When emulated storage is mounted / unmounted, it will record if FUSE for that user is ready to use, and will be used for determining if storage dirs mount are needed when a new process starts. - After emulated storage is mounted, it will create an async thread to remount all storage dirs for existing app processes. As we have a record of pids that storage dirs are not mounted yet, we can use it directly without scanning the whole /proc in vold. Bug: 149548518 Test: After flag is enabled, AdoptableHostTest still pass. Change-Id: Ic99d027d42b2b9a1c7fd03070b36c44882c6e7c5
Loading
Please register or sign in to comment