Commit graph

3953 commits

Author SHA1 Message Date
Alistair Delva
ff1fc9bc41 Expand virtio_block check to other virtual devices
The Android Emulator isn't the only virtual device the virtio-block
detection code is useful for, and those platforms might not set any
discriminating properties to indicate that they are virtual.

Rework the virtio-block major detection to use /proc/devices instead
of hardcoding the assumption that any virtual platform can have
virtio-block at any experimental major; the new code permits only the
exact experimental major assigned to virtio-block.

The new code runs everywhere, but it will only run once and could be
expanded later to detect dynamic or experimental majors.

Bug: 156286088
Change-Id: Ieae805d08fddd0124a397636f04d99194a9ef7e5
2020-05-15 17:00:44 -07:00
Automerger Merge Worker
989b3438c7 Merge "Merge "Mount storage Android/data and Android/obb as tmpfs in app namespace" into rvc-dev am: dbc0da396a am: a217c25939" into rvc-d1-dev-plus-aosp 2020-05-13 14:47:45 +00:00
TreeHugger Robot
3e7128aed4 Merge "Mount storage Android/data and Android/obb as tmpfs in app namespace" into rvc-dev am: dbc0da396a am: a217c25939
Change-Id: I12c4c1965afbcf5022dbba62fbb7e716e4bcb923
2020-05-13 14:47:39 +00:00
TreeHugger Robot
a78f5bb571 Merge "Mount storage Android/data and Android/obb as tmpfs in app namespace" into rvc-dev am: dbc0da396a am: 08b5b882d6
Change-Id: I1643a4d1a5f9c29d36de9b5514fea0b40e6c4137
2020-05-13 14:47:34 +00:00
TreeHugger Robot
a217c25939 Merge "Mount storage Android/data and Android/obb as tmpfs in app namespace" into rvc-dev am: dbc0da396a
Change-Id: I0efd4541ccb6ce75bcb887c03f516b7b6ce41acc
2020-05-13 14:27:28 +00:00
TreeHugger Robot
08b5b882d6 Merge "Mount storage Android/data and Android/obb as tmpfs in app namespace" into rvc-dev am: dbc0da396a
Change-Id: Ib19a8ab5fc09b138b2dae8b1db2003127d277f10
2020-05-13 14:27:17 +00:00
TreeHugger Robot
dbc0da396a Merge "Mount storage Android/data and Android/obb as tmpfs in app namespace" into rvc-dev 2020-05-13 14:17:04 +00:00
Satoshi Niwa
b04d7fa4c0 Revert "ARC++ swap for AppFuseUtil" am: 58d4044082 am: c0cc8d0322
Change-Id: If5e9e03c77bd08588cfbd2dd6a7b4bdebb163895
2020-05-13 14:16:57 +00:00
Satoshi Niwa
ae08e4a790 Revert "ARC++ swap for AppFuseUtil" am: 58d4044082 am: 198657d332
Change-Id: I000153739d24da0f5d3f467c7b45eed342a29a84
2020-05-13 14:16:48 +00:00
Satoshi Niwa
c0cc8d0322 Revert "ARC++ swap for AppFuseUtil" am: 58d4044082
Change-Id: I82771efbb0ab25327fca3ffac9f77c3e126bf989
2020-05-13 14:01:23 +00:00
Satoshi Niwa
198657d332 Revert "ARC++ swap for AppFuseUtil" am: 58d4044082
Change-Id: I46e6d976324d956b1ad173ba8ed97de760999451
2020-05-13 14:00:54 +00:00
Satoshi Niwa
58d4044082 Revert "ARC++ swap for AppFuseUtil"
This reverts commit ab7c958cc5.

Reason for revert: ARC is migrating to ARCVM on R, which doesn't use AppFuse any more.

Bug: 110379912
Test: m
Change-Id: Icc827c59530274421e4c94789d96fd3d287e591e
2020-05-12 14:43:42 +00:00
Treehugger Robot
d35c5afedc Merge "Revert "ARC++ swap for AppFuseUtil"" am: b6e2c14ed1 am: 4cf8ddeed2 am: bcbd085191
Change-Id: Ibf0fe3a3d1295c5f32edc235b0047807ea8a086a
2020-05-12 13:14:27 +00:00
Treehugger Robot
bcbd085191 Merge "Revert "ARC++ swap for AppFuseUtil"" am: b6e2c14ed1 am: 4cf8ddeed2
Change-Id: I8d91ba35477d526ff886ed32c7c1357134dfca4d
2020-05-12 13:00:16 +00:00
Treehugger Robot
4cf8ddeed2 Merge "Revert "ARC++ swap for AppFuseUtil"" am: b6e2c14ed1
Change-Id: I3545346238ddaaec8c1a947f00aaeadd12dfd63b
2020-05-12 12:46:32 +00:00
Treehugger Robot
b6e2c14ed1 Merge "Revert "ARC++ swap for AppFuseUtil"" 2020-05-12 12:30:16 +00:00
Satoshi Niwa
601e7bd4e2 Revert "ARC++ swap for AppFuseUtil"
This reverts commit dcbd4fcad2.

Reason for revert: ARC is migrating to ARCVM on R, which doesn't use AppFuse any more.

Change-Id: Ifd0bf92a79c0ff25d782bea44dd593f9502f1959
2020-05-08 04:50:34 +00:00
Ricky Wai
e96b34fe82 Mount storage Android/data and Android/obb as tmpfs in app namespace
So Android/data and Android/obb won't be accessing fuse anymore,
and apps should not see other packages as well as it's sandboxed
the tmpfs.

Bug: 155462341
Test: atest AppDataIsolationTests pass after feature flag is on
Change-Id: I5658440772e669c1235d318f708a3d336523754f
2020-05-07 16:01:33 +01:00
Treehugger Robot
045bb64f83 Merge "Acknowledge the 'nofail' fs_mgr flag and skip the expected failure." am: e8acc83d25 am: 3a149b6735 am: 93dcfef249
Change-Id: I452ba7025001f1e2e6bb741679c37a81a86e251e
2020-05-06 17:54:35 +00:00
Treehugger Robot
93dcfef249 Merge "Acknowledge the 'nofail' fs_mgr flag and skip the expected failure." am: e8acc83d25 am: 3a149b6735
Change-Id: Icb1ef75616ebc3bfe3f1e71a93ca25b42cb348ae
2020-05-06 17:39:50 +00:00
Treehugger Robot
3a149b6735 Merge "Acknowledge the 'nofail' fs_mgr flag and skip the expected failure." am: e8acc83d25
Change-Id: I1fb2dbb0de98e3e2deadce25183aa37f2bc7c4ba
2020-05-06 17:22:38 +00:00
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