platform_system_vold/model
Martijn Coenen 5ec8658abc Introduce postMount() VolumeBase helper.
When we're mounting a private volume, we create stacked emulated volumes
on top of it. Due to the ordering there, we would broadcast the emulated
volumes being created *before* the "mounted" status update. This in turn
could cause us to try and mount these emulated volumes before the
underlying private volume is really mounted. This is problematic in
particular on devices that support a filesystem keyring, where we need
to do some additional setup before the devices can be used.

While we could modify StorageManagerService to delay the mount, a safer
fix at this stage of the release is to just fix the ordering of these
events. To achieve that, add a simple postMount() helper, that is called
after a succesful mount. This allows us to setup the volume properly
before trying to mount any stacked volumes.

Bug: 151079464
Test: atest AdoptableHostTest
Change-Id: I2cc4113d4d71d89aa629bb9c0fa9be441355c079
2020-05-04 15:09:32 +02:00
..
Disk.cpp Merge changes from topics "metadata_wrapped_key_aosp", "volume_metadata" am: 36fd1ebfae am: 6891eb7e2d am: c14f46d114 2020-02-19 22:19:26 +00:00
Disk.h Add disk for StubVolume 2020-02-12 07:42:40 +00:00
EmulatedVolume.cpp Bind mount install and android writable DATA and OBB dirs 2020-04-20 15:06:58 +01:00
EmulatedVolume.h Bind mount Android/data and Android/obb individually. 2020-03-20 13:24:41 +01:00
ObbVolume.cpp Add GetBlockDevSize, GetBlockDevSectors helpers 2018-09-24 14:25:24 +02:00
ObbVolume.h clang-format many files. 2018-09-18 15:41:22 -07:00
PrivateVolume.cpp Introduce postMount() VolumeBase helper. 2020-05-04 15:09:32 +02:00
PrivateVolume.h Introduce postMount() VolumeBase helper. 2020-05-04 15:09:32 +02:00
PublicVolume.cpp Allow external_storage or media_rw gid access /mnt/media_rw 2020-01-24 22:21:55 +00:00
PublicVolume.h Conditionally use sdcardfs. 2020-01-07 09:03:35 +01:00
StubVolume.cpp Add disk for StubVolume 2020-02-12 07:42:40 +00:00
StubVolume.h Add disk for StubVolume 2020-02-12 07:42:40 +00:00
VolumeBase.cpp Introduce postMount() VolumeBase helper. 2020-05-04 15:09:32 +02:00
VolumeBase.h Introduce postMount() VolumeBase helper. 2020-05-04 15:09:32 +02:00
VolumeEncryption.cpp On newer devices, use dm-default-key to encrypt SD cards 2020-02-18 13:01:00 -08:00
VolumeEncryption.h On newer devices, use dm-default-key to encrypt SD cards 2020-02-18 13:01:00 -08:00