Commit graph

3932 commits

Author SHA1 Message Date
Treehugger Robot
e8acc83d25 Merge "Acknowledge the 'nofail' fs_mgr flag and skip the expected failure." 2020-05-06 17:02:43 +00:00
P.Adarsh Reddy
167c2a658a Acknowledge the 'nofail' fs_mgr flag and skip the expected failure.
fs_mgr supports 'nofail' flag, which is used if we do not want to
error-out incase the mounting/setup fails for a partition tagged with
nofail flag in fstab.

Recently added code in vold misses this handling, i.e. it aborts even
for a nofail partition upon encountering an expected failure.

Test: Add a non-existing logical partition fstab entry with 'nofail'
      flag. Init's first stage mount acks this and doesn't crash.
      Vold aborts (as it doesn't handle it), and device doesn't boot.
      With this change, device boots up.

Change-Id: I2b1904a9c648c31bcc05b2e7e77480db236ff66e
2020-05-06 16:45:23 +00:00
Martijn Coenen
0a7a594e77 Introduce postMount() VolumeBase helper. am: 5ec8658abc am: 82fddb072e
Change-Id: I0053b5c76b2a69d96a27c374820e5a4f575b2915
2020-05-06 09:45:34 +00:00
Martijn Coenen
2669d5085b Introduce postMount() VolumeBase helper. am: 5ec8658abc am: 2e05806850
Change-Id: I3e6ccf13cbb55bba7ae569ea5f54836ff173b167
2020-05-06 09:44:41 +00:00
Martijn Coenen
82fddb072e Introduce postMount() VolumeBase helper. am: 5ec8658abc
Change-Id: Ia2bd24b550bc9b9d3c942f4bbbd08322cb26141f
2020-05-06 09:30:46 +00:00
Martijn Coenen
2e05806850 Introduce postMount() VolumeBase helper. am: 5ec8658abc
Change-Id: Id8ce7dbaabafef41121dbdf9f6169f1377ae1174
2020-05-06 09:29:56 +00:00
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
Treehugger Robot
b9390a00aa Merge "vold: fix missing has.adoptable" am: 9e2053e185 am: d4e75c211d am: 01b59992b1
Change-Id: I912bf88877f892450eb0389c1c2679180c0b5181
2020-04-23 23:04:42 +00:00
Treehugger Robot
01b59992b1 Merge "vold: fix missing has.adoptable" am: 9e2053e185 am: d4e75c211d
Change-Id: I7734099f9c1cd88c9577542684402efb8f095107
2020-04-23 22:52:12 +00:00
Treehugger Robot
d4e75c211d Merge "vold: fix missing has.adoptable" am: 9e2053e185
Change-Id: I3f87b104678fb57c627165fcd5faea846e25d343
2020-04-23 22:36:56 +00:00
Treehugger Robot
9e2053e185 Merge "vold: fix missing has.adoptable" 2020-04-23 22:15:38 +00:00
Yurii Zubrytskyi
6e3874688f [incfs] Use new IncFs_ReleaseControlFds() instead of duping am: fc7b6697b4 am: 20d7fc9160
Change-Id: Idb74a724da0b82ea6d8a32f50adffed54c62c763
2020-04-23 22:10:48 +00:00
Yurii Zubrytskyi
51f8a4565c [incfs] Use new IncFs_ReleaseControlFds() instead of duping am: fc7b6697b4 am: 12ffb988c2
Change-Id: I38befec68c23961e91199cda680b06ef077058a9
2020-04-23 22:10:25 +00:00
Yurii Zubrytskyi
12ffb988c2 [incfs] Use new IncFs_ReleaseControlFds() instead of duping am: fc7b6697b4
Change-Id: Ieff848e641fe40d7a199e460f327ef8aba041dae
2020-04-23 21:56:23 +00:00
Yurii Zubrytskyi
20d7fc9160 [incfs] Use new IncFs_ReleaseControlFds() instead of duping am: fc7b6697b4
Change-Id: I808d898afe636a206518db413ff1abf3cc6d0e6d
2020-04-23 21:56:14 +00:00
Jaegeuk Kim
4ea573aca7 vold: fix missing has.adoptable
This patch fixes missing entry in the below commit.

Fixes: c52f6724ed ("vold: clean up configuration set")
Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
Change-Id: Ia39a427d4747b29a7af42633f34daab63204bbf9
2020-04-23 13:43:12 -07:00
Yurii Zubrytskyi
fc7b6697b4 [incfs] Use new IncFs_ReleaseControlFds() instead of duping
Vold needs to pass / accept IncFs control via Binder, so it
neeeds to get and put its internal FDs in and out. Using the new
release() function it works without extra fd duping

Bug: 153704006
Test: builds & boots
Change-Id: I64bc5b1ca9f2c69e34c3a860ed3edbe58bd9ea29
2020-04-22 23:26:32 -07:00
Treehugger Robot
8fbc7edbcb [automerger skipped] Merge "Introduce ro.crypto.uses_fs_ioc_add_encryption_key property" am: 83c78a2bb1 am: ebcd59d19b -s ours am: bcbddda15a -s ours
am skip reason: Change-Id I562df49deffdccdb2cfd657130fc05b24d40a6a6 with SHA-1 78f806198f is in history

Change-Id: I8cdb012f5976e3c964e16dff9da9541831442734
2020-04-21 16:34:03 +00:00
Treehugger Robot
bcbddda15a [automerger skipped] Merge "Introduce ro.crypto.uses_fs_ioc_add_encryption_key property" am: 83c78a2bb1 am: ebcd59d19b -s ours
am skip reason: Change-Id I562df49deffdccdb2cfd657130fc05b24d40a6a6 with SHA-1 78f806198f is in history

Change-Id: Ib183a53d8b49427ddf243d22db5df1f4b2b9815e
2020-04-21 16:20:32 +00:00
Treehugger Robot
ebcd59d19b Merge "Introduce ro.crypto.uses_fs_ioc_add_encryption_key property" am: 83c78a2bb1
Change-Id: Icfcf0222bd97d52d6fed2eeef3c3fca335d8b93e
2020-04-21 16:07:15 +00:00
Treehugger Robot
83c78a2bb1 Merge "Introduce ro.crypto.uses_fs_ioc_add_encryption_key property" 2020-04-21 15:51:20 +00:00
Nikita Ioffe
279349d468 Merge "Introduce ro.crypto.uses_fs_ioc_add_encryption_key property" into rvc-dev am: 4e1e7ef09a am: c1dce0695b
Change-Id: I79b552aff86e7482aac3d2c819061c2dc1187a2c
2020-04-21 14:56:52 +00:00
Nikita Ioffe
da2323ef52 Merge "Introduce ro.crypto.uses_fs_ioc_add_encryption_key property" into rvc-dev am: 4e1e7ef09a am: a2596ddf5e
Change-Id: I28234153e1d3e470e8fc11de6ec890f5b9927987
2020-04-21 14:56:30 +00:00
Nikita Ioffe
c1dce0695b Merge "Introduce ro.crypto.uses_fs_ioc_add_encryption_key property" into rvc-dev am: 4e1e7ef09a
Change-Id: I6c88e5725a1e8ed3300bfeda5bed26b0c8875e72
2020-04-21 14:44:48 +00:00
Nikita Ioffe
a2596ddf5e Merge "Introduce ro.crypto.uses_fs_ioc_add_encryption_key property" into rvc-dev am: 4e1e7ef09a
Change-Id: I1d4f16c45ac8082ae5c6aa7216a4636a32e0c0b7
2020-04-21 14:44:12 +00:00
Nikita Ioffe
eea8bd39a2 Introduce ro.crypto.uses_fs_ioc_add_encryption_key property
Bug: 154327249
Test: adb shell getprop ro.crypto.uses_fs_ioc_add_encryption_key
Test: adb bugreport && checked content contains new property
Change-Id: I562df49deffdccdb2cfd657130fc05b24d40a6a6
Merged-In: I562df49deffdccdb2cfd657130fc05b24d40a6a6
(cherry picked from commit 78f806198f)
2020-04-21 15:28:41 +01:00
Nikita Ioffe
4e1e7ef09a Merge "Introduce ro.crypto.uses_fs_ioc_add_encryption_key property" into rvc-dev 2020-04-21 14:27:18 +00:00
Martijn Coenen
b30e8e54b7 Merge "Don't do private app-dir permissions/quota on public volumes." into rvc-dev am: 15070b1833 am: 9c306323e2
Change-Id: Id5783521ac78c56a16092c7110d61cc2018889ea
2020-04-21 12:57:05 +00:00
Martijn Coenen
d4ee2faafc Merge "Don't do private app-dir permissions/quota on public volumes." into rvc-dev am: 15070b1833 am: fcabee6875
Change-Id: I5d0aefd5507b69b1fc9cc3d85f894a0137aed24e
2020-04-21 12:55:54 +00:00
Martijn Coenen
9c306323e2 Merge "Don't do private app-dir permissions/quota on public volumes." into rvc-dev am: 15070b1833
Change-Id: Ibc6535772cd77c1f68c380e0993f79fdacca55e1
2020-04-21 12:42:22 +00:00
Martijn Coenen
fcabee6875 Merge "Don't do private app-dir permissions/quota on public volumes." into rvc-dev am: 15070b1833
Change-Id: I5b5d4b3f8b8b3ed94264eb79261097b1b93f53a2
2020-04-21 12:41:54 +00:00
Martijn Coenen
15070b1833 Merge "Don't do private app-dir permissions/quota on public volumes." into rvc-dev 2020-04-21 12:22:58 +00:00
TreeHugger Robot
7972277fc9 Merge "Bind mount install and android writable DATA and OBB dirs" into rvc-dev am: 086c96ef6d am: 92cd800665
Change-Id: I1e6a6466b1ec651aa74dfc0f54891386f3f0e6f9
2020-04-21 11:40:53 +00:00
TreeHugger Robot
99b8ec6c90 Merge "Bind mount install and android writable DATA and OBB dirs" into rvc-dev am: 086c96ef6d am: 95d66bc103
Change-Id: I6591dfe84b51e07b7920448ade66c99eee0746d1
2020-04-21 11:27:34 +00:00
TreeHugger Robot
92cd800665 Merge "Bind mount install and android writable DATA and OBB dirs" into rvc-dev am: 086c96ef6d
Change-Id: I288fc55dffe20f273be3e74e4fe4d69b29d13da0
2020-04-21 11:25:16 +00:00
TreeHugger Robot
95d66bc103 Merge "Bind mount install and android writable DATA and OBB dirs" into rvc-dev am: 086c96ef6d
Change-Id: I227d66a376dad24ca40612849fa8259ba4dd0aae
2020-04-21 11:24:14 +00:00
TreeHugger Robot
086c96ef6d Merge "Bind mount install and android writable DATA and OBB dirs" into rvc-dev 2020-04-21 11:08:07 +00:00
Nikita Ioffe
78f806198f Introduce ro.crypto.uses_fs_ioc_add_encryption_key property
Bug: 154327249
Test: adb shell getprop ro.crypto.uses_fs_ioc_add_encryption_key
Test: adb bugreport && checked content contains new property
Change-Id: I562df49deffdccdb2cfd657130fc05b24d40a6a6
2020-04-20 22:21:49 +01:00
Ricky Wai
ef63921f81 Bind mount install and android writable DATA and OBB dirs
To improvement performance, and also making them able to list
the dirs.

This should also be fine under b/151055432, as the whole obb
directory is mounted, renameTo() from installer to apps should be
a move not copy.

Bug: 153422990
Bug: 153540919
Test: atest AdoptableHostTest
Change-Id: Ia18fd4393db14a0f11d6e5b947dd716515bdeeef
2020-04-20 15:06:58 +01:00
Martijn Coenen
bf205ab7d4 Don't do private app-dir permissions/quota on public volumes.
While looking at some emulator logs, I noticed that we fail to create
dirs like /Android/data/com.foo/cache on public volumes, because we try
to chmod it; public volumes go completely through FUSE, even for
Android/, and so these operations will fail, because the underlying
UID/GID is not setup correctly.

Really the only thing we really have to do on public volumes is create
the dirs, like we used to do.

Bug: 152618535
Test: manually verify cache dirs can be created successfully
Change-Id: I66e5d0873f1198123787943b17b468eadf0a853d
2020-04-20 15:20:09 +02:00
Martijn Coenen
edd48cd882 Rename casefold/projectid properties (for f2fs). am: e9239f757e am: 3426c36540
Change-Id: I2529bbc678856ad6245b84b533631df4b763965d
2020-04-17 15:01:56 +00:00
Martijn Coenen
0dca834157 Rename casefold/projectid properties (for f2fs). am: e9239f757e am: c41ac2f3d7
Change-Id: I46f8f30b392c121bdcd0b8d5e7eb70fadbe6b633
2020-04-17 15:01:20 +00:00
Martijn Coenen
c41ac2f3d7 Rename casefold/projectid properties (for f2fs). am: e9239f757e
Change-Id: Ib895adcd495dd3dc4e9d675d1990d04b173a1b14
2020-04-17 14:41:07 +00:00
Martijn Coenen
3426c36540 Rename casefold/projectid properties (for f2fs). am: e9239f757e
Change-Id: I6829424a1ecee05ef8784159789a3a9991d897be
2020-04-17 14:40:56 +00:00
Automerger Merge Worker
c51715a640 Merge "[automerger skipped] Rename casefold/projectid properties. am: aee6b6fccd -s ours am: d4de3bd143 -s ours" into rvc-d1-dev-plus-aosp 2020-04-17 08:24:29 +00:00
Martijn Coenen
d3cf750908 [automerger skipped] Rename casefold/projectid properties. am: aee6b6fccd -s ours am: d4de3bd143 -s ours
am skip reason: Change-Id Iaebff2a835288839a2faf0edbe0e47ceb96b4458 with SHA-1 97ff0845e2 is in history

Change-Id: Ieb4f5184e6428db1023a78bd2f492bc2827b8170
2020-04-17 08:24:22 +00:00
Martijn Coenen
d8c80b809d [automerger skipped] Rename casefold/projectid properties. am: aee6b6fccd am: f417e12e56 -s ours
am skip reason: Change-Id Iaebff2a835288839a2faf0edbe0e47ceb96b4458 with SHA-1 97ff0845e2 is in history

Change-Id: I3e1e7c803956c895d976368b64481f42dfcf3c5c
2020-04-17 08:24:13 +00:00
Martijn Coenen
f417e12e56 Rename casefold/projectid properties. am: aee6b6fccd
Change-Id: I43a490414c4bd816edb707ba350b4ee151133f8f
2020-04-17 08:10:36 +00:00
Martijn Coenen
d4de3bd143 [automerger skipped] Rename casefold/projectid properties. am: aee6b6fccd -s ours
am skip reason: Change-Id Iaebff2a835288839a2faf0edbe0e47ceb96b4458 with SHA-1 97ff0845e2 is in history

Change-Id: If48e613ce1fba64f6bf9bf8613ce93d76cf8b31f
2020-04-17 08:10:15 +00:00
Martijn Coenen
661e87186b Merge "Rename casefold/projectid properties." am: 9d0508a854 am: 5901d6f492 am: 729c26033e
Change-Id: Ib6e0fea59e67396bd6b3e88d18e20b88cf17aac8
2020-04-16 08:59:27 +00:00