When "migrating" data failes due to insufficient space
at target location, the data copied so far is left in
target location, which in practice is now filled to the
brim.
If copy fails clean up the data copied so far since user
has the data in original location.
Bug: 26322200
Change-Id: Iab29a7f9e653e6857ee0e2723d151dfec81b14dd
Sometimes migrating data fails to mount the target
volume after operation is finished.
MoveTask is running in its own thread, copying data
between external card and internal memory.
After copying the data the method "bringOnline" is
run. This method destroys and creates the volumes.
When VolumeBase::create() is run it will notify
MountService, who upon receiving this notification
will send a mount command to mount the new primary
storage.
This command will sometimes run before
setState(State::kUnmounted); is called on the newly
created volume. This will cause the mount command to
fail.
VoldConnector: SND -> {10 volume mount emulated 3 -1}
vold : emulated flags change requires state unmounted or unmountable
vold : emulated user change requires state unmounted or unmountable
vold : emulated mount requires state unmounted or unmountable
Lock bringOnline so no volume commands will be processed
until volumes are (re-)created and have correct state.
Bug: 26322200
Change-Id: I4aba85c226d904c42ae9edcdfec21619218939d6
This had minimal impact on the results, since 95% of the writes were
performed through pwrite(), but it's important to fix this for future
benchmark suites.
Bug: 29759783
Change-Id: Ic628aab98b9f9def78508cc722899afdefed84ae
am: 8fd77a05cc
* commit '8fd77a05ccccc86be7da7b2f61e6580f0f20eb42':
Two phases to set the password for disk encryption
Change-Id: I6c6aba077de8a9cb51df7ef55213ea750027278e
am: ad4dcc2ff6
* commit 'ad4dcc2ff65363e3c93708f7f713bf73484c59c5':
Two phases to set the password for disk encryption
Change-Id: Ic4ba913e285ac3583f8c29227532c4c77094763e
am: a363036b44
* commit 'a363036b44f7f140aa9a943578f56abff5880a60':
Two phases to set the password for disk encryption
Change-Id: I37368c698abcf4b541f924cb18927f4645edcb3f
am: a363036b44
* commit 'a363036b44f7f140aa9a943578f56abff5880a60':
Two phases to set the password for disk encryption
Change-Id: Ia28823079d8c0bda220238339f28095b234a0ae5
Revert "Revert "Two phases to set the password for disk encryption""
This reverts commit d402389290.
In addition, fix the bug in the original commit.
Bug: 28154455
Bug: 28694324
Change-Id: I885f1d73e739416347c135d79979941c2bbdbe62
am: 269bdbcab1
* commit '269bdbcab18aa8c24a637937d885c045f408a12e':
e4crypt_is_native has been moved into system/extras.
Change-Id: I7f08893a1e21891d35578180cbb66a4db2d91c15
am: 44ddebaac0
* commit '44ddebaac0465a9a88b68ca04bbb69b576a0d067':
e4crypt_is_native has been moved into system/extras.
Change-Id: I02d14adeed72858771b5838e618b1fa8735ca7b1
am: cfa03d4a4c
* commit 'cfa03d4a4c53acf41dca2c41a2efd00de06043bb':
e4crypt_is_native has been moved into system/extras.
Change-Id: I345475c44fb2d8812a25c9f2195c748cddc55bfe
am: cfa03d4a4c
* commit 'cfa03d4a4c53acf41dca2c41a2efd00de06043bb':
e4crypt_is_native has been moved into system/extras.
Change-Id: Id199621d0e5544acadc4a4d4308a80c47b9ea3c8
am: 26642bf7bf
* commit '26642bf7bf8f645f3d10fe0d36149d5f8b3b92fb':
Revert "Two phases to set the password for disk encryption"
Change-Id: If0ecc2132c5012ccc9c28912170b2e91a451ac99
am: 2f8b7d354c
* commit '2f8b7d354c59b74cec719531728523bf19f88dce':
Revert "Two phases to set the password for disk encryption"
Change-Id: I89687b6a813caca0c214787d3e28d4e4106e7fe2
am: d402389290
* commit 'd402389290eeef86be7eb9241e20fdd125d44eb1':
Revert "Two phases to set the password for disk encryption"
Change-Id: I09735798116dd4e37dda60651dc085a09090a99d
am: d402389290
* commit 'd402389290eeef86be7eb9241e20fdd125d44eb1':
Revert "Two phases to set the password for disk encryption"
Change-Id: I53a3804fc7bff9c99840aeee36fc4b7ff8e46ac1
am: bc7cfa8fcc
* commit 'bc7cfa8fcce8b09d308a7e511c5a2d4de530676a':
Two phases to set the password for disk encryption
Change-Id: Ifcde4025a0ce196c8208f802a6a5dfb4a24e2a0d
am: 92c5eeb467
* commit '92c5eeb46779f0fa1c9e6db6b0d632d960cbb2e4':
Two phases to set the password for disk encryption
Change-Id: Ie10cfc91d59f38359560682ca5e4133dc8700c12
am: 92c5eeb467
* commit '92c5eeb46779f0fa1c9e6db6b0d632d960cbb2e4':
Two phases to set the password for disk encryption
Change-Id: I82c1cfa2874ac4709e42f5c2047c832cbcaccb91
In one phase, we make the new password work, and in the second we make
it the only one which works ("fixation"). This means that we can set
the password in Gatekeeper between these two phases, and a crash
doesn't break things. Unlocking a user automatically fixates the
presented credential.
Bug: 28154455
Change-Id: I54623c8652f0c9f72dd60388a7dc0ab2d48e81c7