History log of /system/vold/ResponseCode.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c86ab6f538bec63638c168d6c843fe7cf73add3b 26-Jun-2015 Jeff Sharkey <jsharkey@android.com> Trim both internal and adopted private storage.

Refactor fstrim code to be encapsulated in unique task object, and
give it option of benchmarking when finished. Trimming now includes
both storage from fstab and adopted private volumes. Cleaner timing
stats are logged for each unique volume.

Add wakelock during ongoing async move tasks. Push disk sysfs path
to framework so it can parse any SD card registers as desired.

Bug: 21831325
Change-Id: I76577685f5cae4929c251ad314ffdaeb5eb1c8bf
/system/vold/ResponseCode.h
5a6bfca1638760b87cf64c5ffb48ff3557cc0563 15-May-2015 Jeff Sharkey <jsharkey@android.com> Initial pass at storage benchmarks.

Now that we're offering to store private app data on adopted storage
devices, the performance of those devices is much more important to
overall user experience.

To help set user expectations, this change offers to execute a
real-world benchmark on a storage device, returning a metric that can
be used to compare internal and external storage. The benchmark is
generated from the strace-instrumented storage access patterns of
typical apps.

A typical device completes the benchmark in under two seconds on
internal storage, a UHS-3 SD card is even faster (!), but a very slow
Class 4 SD card takes about 30 seconds to complete, giving us a clear
signal.

The measured benchmark numbers are logged along with information
about the storage device, such as manufacturer, model, etc. Card
serial numbers are scrubbed from output.

Bug: 21172095
Change-Id: I9b2713dafdfdfcf5d97bf1bc21841f39409a7e54
/system/vold/ResponseCode.h
1d6fbcc389ecb9f418076e8ab5f4c93a5d911de9 25-Apr-2015 Jeff Sharkey <jsharkey@android.com> Migrate primary external storage.

When requested, kick off a thread that will migrate storage contents
between two locations. This is performed in several steps that
also interact with the framework:

1. Take old and new volumes offline during migration
2. Wipe new location clean (10% of progress)
3. Copy files from old to new (60% of progress)
4. Inform framework that move was successful so it can persist
5. Wipe old location clean (15% of progress)

Derives a hacky progress estimate by using a rough proxy of free
disk space changes while a cp/rm is taking place.

Add new internal path for direct access to volumes to bypass any
FUSE emulation overhead, and send it to framework. Remove mutex
around various exec calls since setexeccon() is already per-thread.

Bug: 19993667
Change-Id: Ibcb4f6fe0126d05b2365f316f53e71dc3e79a2b8
/system/vold/ResponseCode.h
613b26f8e3f71429945924837e3713dc73ce45d6 19-Apr-2015 Jeff Sharkey <jsharkey@android.com> Notify when disk scan finished.

Bug: 19993667
Change-Id: I20dc183a35c11b5b4ba6139e690929b9c279b830
/system/vold/ResponseCode.h
f1b996df6f8283aac6953b22bd9e2496d8c30c86 18-Apr-2015 Jeff Sharkey <jsharkey@android.com> Volumes know parent disks; unsupported disks.

This is cleaner and more direct than the reverse of having the disk
publish child volume membership. Rename state constants to match
public API. Add state representing bad removal. Make it clear that
volume flags are related to mounting.

Send new unsupported disk event when we finish scanning an entire
disk and have no meaningful volumes.

Bug: 19993667
Change-Id: I08a91452ff561171a484d1da5745293ec893aec0
/system/vold/ResponseCode.h
3161fb3702830b586b2e36fa9ca4519f59f951b4 13-Apr-2015 Jeff Sharkey <jsharkey@android.com> Emulated volumes above private volumes.

When a private volume is mounted, create an emulated volume above it
hosted at the /media path on that device. That emulated volume is
automatically torn down when unmounting the private volume.

Add "removed" state for volume, which signals to framework that
media has left the building, send when the volume is destroyed.

Bug: 19993667
Change-Id: I1f82b51de578ac5cfcc5d7b9a6fb44f6f25c775c
/system/vold/ResponseCode.h
36801cccf27152c9eca5aab6ba3527221525110f 14-Mar-2015 Jeff Sharkey <jsharkey@android.com> Progress towards dynamic storage support.

Wire up new Disk and VolumeBase objects and events to start replacing
older DirectVolume code. Use filesystem UUID as visible PublicVolume
name to be more deterministic.

When starting, create DiskSource instances based on fstab, and watch
for kernel devices to appear. Turn matching devices into Disk
objects, scan for partitions, and create any relevant VolumeBase
objects. Broadcast all of these events towards userspace so the
framework can decide what to mount.

Keep track of the primary VolumeBase, and update the new per-user
/storage/self/primary symlink for all started users.

Provide a reset command that framework uses to start from a known
state when runtime is restarted. When vold is unexpectedly killed,
try recovering by unmounting everything under /mnt and /storage
before moving forward.

Remove UMS sharing support for now, since no current devices support
it; MTP is the recommended solution going forward because it offers
better multi-user support.

Switch killProcessesWithOpenFiles() to directly take signal. Fix
one SOCK_CLOEXEC bug, but SELinux says there are more lurking.

Bug: 19993667
Change-Id: I2dad1303aa4667ec14c52f774e2a28b3c1c1ff6d
/system/vold/ResponseCode.h
f4faa575c9fc20a8a8e133d6098865b5ce3a7ed2 29-Jan-2014 Paul Lawrence <paullawrence@google.com> Support default, pattern, pin and password encryption types

Store encryption type in crypto footer, and provide functions to
manipulate it. Add mount_default_encrypted command to vdc to allow
mounting of default encrypted volumes at boot time.

Bug: 8769627
Change-Id: Ie41848f258e128b48b579e09789abfa24c95e2b2
/system/vold/ResponseCode.h
0368cd4355466e4c9d6f502fed8a830cad36e25e 18-Oct-2013 Jeff Sharkey <jsharkey@android.com> am f4a8c0b9: am 10939ac7: Merge "Extract UUID and label from inserted volumes." into klp-dev

* commit 'f4a8c0b9f646cd9fa51fe3746bc8a00bb987124b':
Extract UUID and label from inserted volumes.
0de365fc0af30ae48c2037e1057f2a813029a618 17-Oct-2013 Jeff Sharkey <jsharkey@android.com> Extract UUID and label from inserted volumes.

Uses "blkid" tool to extract metadata from an inserted volume, and
reports it up to the framework. This needs to happen in vold, since
only the FUSE-wrapped volume is visible to userspace.

Remove autorun sanitization, since FUSE takes care of this now.

Bug: 11175082
Change-Id: Ie69b38011ad6011bfb50e40d4f35a29e02150c19
/system/vold/ResponseCode.h
20bab9ffdcfd2b22c2d1ba897df98750ef195e7d 17-Sep-2013 Nick Kralevich <nnk@google.com> vold: Remove obsolete xwarp support.

This code appears to be unused. Delete it.

This is essentially a revert of 2350c44ff39b4cb2940893964a05f778fc80a436.

Change-Id: I20a525bb49f6ee8fec8c1ec22e01ad47d0c72960
/system/vold/ResponseCode.h
160b4d68ece15947057e31edde4e5608a010c695 22-Apr-2013 Ken Sumrall <ksumrall@android.com> vold: Add support for unencrypted persistent info

In order to display the correct language, timezone, airplane
mode and other settings on the decrypt screen, a copy of those
settings needs to be stored unencrypted so the framework can
query them. This adds support to vold to store up to 32
property like key/value pairs that are not encrypted.

Change-Id: Id5c936d2c57d46ed5cff9325d92ba1e8d2ec8972
/system/vold/ResponseCode.h
3ad9072a5d6f6bda32123b367545649364e3c11d 05-Oct-2011 Ken Sumrall <ksumrall@android.com> Add the new verifypw command to vold/cryptfs

This vold command returns 0 if the given password matches the password
used to decrypt the device on boot. It returns 1 if they don't match,
and it returns -1 on an internal error, and -2 if the device is not encrypted.

Also check the uid of the sender of the command and only allow the root and
system users to issue cryptfs commands.

Change-Id: I5e5ae3b72a2d7814ae68c2d49aa9deb90fb1dac5
/system/vold/ResponseCode.h
88ac2c06539485942bf414efda2d39647fa1a415 23-Mar-2010 San Mehat <san@google.com> vold: asec path cmd now returns OpFailedStorageNotFound if id doesn't exist

Change-Id: Icbe3de7c28505f7496c8f8edea126c7b616de475
Signed-off-by: San Mehat <san@google.com>
/system/vold/ResponseCode.h
2350c44ff39b4cb2940893964a05f778fc80a436 02-Mar-2010 San Mehat <san@google.com> vold: Add support for xwarp

Signed-off-by: San Mehat <san@google.com>
/system/vold/ResponseCode.h
8f2875b29780312f4edda3d831cc8a99e1648dd5 18-Feb-2010 San Mehat <san@google.com> vold: Clean up asec command response and add support for 'StorageBusy'

Signed-off-by: San Mehat <san@google.com>
/system/vold/ResponseCode.h
586536c60b773e3517531ad8a6cb0de6722c67fc 17-Feb-2010 San Mehat <san@google.com> vold: Refactor Processkiller and add command to return users of a mount point

Signed-off-by: San Mehat <san@google.com>
/system/vold/ResponseCode.h
eba65e9d438a05f1c5dfd0f8d31bc463a5d08eee 29-Jan-2010 San Mehat <san@google.com> vold: Bloat reduction
Signed-off-by: San Mehat <san@google.com>
/system/vold/ResponseCode.h
a19b250bd273455933ca3502cf2c2e0a803aff77 06-Jan-2010 San Mehat <san@google.com> vold2: Initial support for Android Secure External Caches

Signed-off-by: San Mehat <san@google.com>
/system/vold/ResponseCode.h
a2677e4ad01f250b0765f04adf0acfa6627efc98 13-Dec-2009 San Mehat <san@google.com> vold2: Get mounting/unmounting/formatting/sharing working

Signed-off-by: San Mehat <san@google.com>
/system/vold/ResponseCode.h