Allow mounting of multiple volumes via mass storage (framework part)
Cherry-pick from CM9. The volumes to mount is taken from storage_list.xml (allowMassStorage) rather than ro.additionalmounts in CM7. Hand ported from the following patches: commit 02332098 Author: Tony Layher <layhertony@gmail.com> Date: Sun Jan 2 12:46:38 2011 -0500 forward port of 93bb9592 to allow mounting and sharing of mulitple volumes to MountService. Change-Id: I9fa3994e6e7b85360b451f57c1cdd4df921bc035 (the second part of the above patch was not ported) commit 678fadf5 Author: Josh Stone <cuviper@gmail.com> Date: Sun Nov 7 13:38:58 2010 -0800 MountService: Remount all volumes after USB disconnect If USB was removed while UMS was enabled, the MountService was only remounting the primary share. Any other shares, like the HTC Inc's emmc, were left in limbo. This patch now iterates over *all* shared volumes to remount after disconnect. Change-Id: Ie6fd49ad80ba6fa0e4e194a386549cac786b4bbe Signed-off-by:Josh Stone <cuviper@gmail.com> commit b1da9ed0 Author: Josh Stone <cuviper@gmail.com> Date: Sat Jan 22 12:03:53 2011 -0800 MountService: Only notify PackageManager for true ASEC changes MountService can be dealing with multiple mounts (emmc, sdcard), but only the EXTERNAL_STORAGE has any ASEC mounts on it. Since the PMS updateExternalMediaStatus doesn't specify the path, we need to make sure it's only called for the real ASEC mount. Otherwise we get into nasty race conditions when multiple mounts are coming and going, like during UMS transitions, and sdcard-installed apps tend to break. Change-Id: I85c6a601e84afd30b44270b0892686c2d864ce8d commit c8c58f3d Author: Josh Stone <cuviper@gmail.com> Date: Sun Mar 6 12:34:50 2011 -0800 MountService: Unmount secondary volumes more carefully Use the same message handler for unmounting both the ASEC external- storage path and any secondary paths like emmc. This seems to help with additional race conditions encountered on Inc. Change-Id: Icca71756fa6721bd85da1f35b8b8c7fc7caa1eb1 commit 47495ab8 Author: atinm <atinm.dev@gmail.com> Date: Sun Apr 10 14:50:41 2011 -0400 Allow multiple shareable SD Cards by using getShareableVolumes() to get all the volumes that are shareable and allowing sharing/unsharing for all of them rather than just the hardcoded getExternalStorage calls. Unmount immediately if PM is not updating and not an ASEC mount. Change from Josh Stone. Change-Id: Iaf1a7a4484deac373e1c1d7bf16d5f22ca49fd64 Only allow package manager for sdcard (packages aren't on external card). Change-Id: I0d148ea52dc1285905a9dd061d1ceedcfb761b52 Take out extra logging. Change-Id: I6beb007700ef4be04c3eb273bbf2069c87b30011 Change-Id: Ibc11b9affdf22a438a4d25cf14435fb16b3ad6d6
Loading
Please register or sign in to comment