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/CommandListener.cpp
|
66270a21df1058434e4d63691221f11ff5387a0f |
|
24-Jun-2015 |
Jeff Sharkey <jsharkey@android.com> |
Let's reinvent storage, yet again! Now that we're treating storage as a runtime permission, we need to grant read/write access without killing the app. This is really tricky, since we had been using GIDs for access control, and they're set in stone once Zygote drops privileges. The only thing left that can change dynamically is the filesystem itself, so let's do that. This means changing the FUSE daemon to present itself as three different views: /mnt/runtime_default/foo - view for apps with no access /mnt/runtime_read/foo - view for apps with read access /mnt/runtime_write/foo - view for apps with write access There is still a single location for all the backing files, and filesystem permissions are derived the same way for each view, but the file modes are masked off differently for each mountpoint. During Zygote fork, it wires up the appropriate storage access into an isolated mount namespace based on the current app permissions. When the app is granted permissions dynamically at runtime, the system asks vold to jump into the existing mount namespace and bind mount the newly granted access model into place. Bug: 21858077 Change-Id: Iade538e4bc7af979fe20095f74416e8a0f165a4a
/system/vold/CommandListener.cpp
|
bc40cc8f07f69e0e26fc41516e2a83f0a8becbe0 |
|
18-Jun-2015 |
Jeff Sharkey <jsharkey@android.com> |
Add method to forget private partition keys. Report both the disk and the partition GUID for private volumes to userspace, and offer to forget the encryption key for a given partition GUID. Bug: 21782268 Change-Id: Ie77a3a58e47bf3563cdb3e4b0edfab1de4d0e6b4
/system/vold/CommandListener.cpp
|
bd3038df74ace540d46c530a11e3145f922e1b42 |
|
10-Jun-2015 |
Jeff Sharkey <jsharkey@android.com> |
Start tracking added users with serial numbers. vold will eventually use the serial numbers to clean up stale user directories when mounting private storage devices. Bug: 20275572 Change-Id: Ia29cb5da23e969f3087bb5caa5dc8f4e88f07613
/system/vold/CommandListener.cpp
|
d0640f6358041f7e2657167560b357078db73526 |
|
22-May-2015 |
Jeff Sharkey <jsharkey@android.com> |
Add f2fs support for private volumes. When formatting volumes, pass along fsType string which can be "auto" to let the volume select the best choice. For now, private volumes assume that MMC devices (like SD cards) are best off using f2fs when both kernel support and tools are present, otherwise fall back to ext4. Use blkid when mounting to pick the right set of tools. Move filesystem utility methods into namespaces and place in separate directory to be more organized. Bug: 20275581 Change-Id: Id5f82d8672dda2e9f68c35b075f28232b0b55ed4
/system/vold/CommandListener.cpp
|
d0b4295ccc07d0cd715ade415c8c0d7d6945880e |
|
03-Jun-2015 |
Paul Lawrence <paullawrence@google.com> |
Move crypt commands to a different listener in vold In order to prevent this bug from happening, we must allow vold cryptfs commands to complete while a long running mount is underway. While waiting for vold to be changed to a binder interface, we will simply create two listeners, one for cryptfs and one for everything else. Bug: 19197175 Change-Id: If74142aa81abd58f718a9de6c9e387f6ea442754
/system/vold/CommandListener.cpp
|
731a7a242df6cc3441ac82b4f9521546fac5ac2d |
|
29-Apr-2015 |
Paul Lawrence <paullawrence@google.com> |
DO NOT MERGE Securely encrypt the master key (cherry-picked from commit 707fd6c7cccc31c0ab0ec1a6ac8b6077c632fc35) Move all key management into vold Reuse vold's existing key management through the crypto footer to manage the device wide keys. Use ro.crypto.type flag to determine crypto type, which prevents any issues when running in block encrypted mode, as well as speeding up boot in block or no encryption. This is one of four changes to enable this functionality: https://android-review.googlesource.com/#/c/148586/ https://android-review.googlesource.com/#/c/148604/ https://android-review.googlesource.com/#/c/148606/ https://android-review.googlesource.com/#/c/148607/ Bug: 18151196 Change-Id: I3c68691717a61b5e1df76423ca0c02baff0dab98
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
1bfb375f77c093a8e16bef4ddeab2681ca126d56 |
|
30-Apr-2015 |
Jeff Sharkey <jsharkey@android.com> |
Update primary symlinks after mounting. Since otherwise we might have a stale path. Bug: 19993667 Change-Id: I099e3dc0c5aa9ab6820cded4f2ae7fd6bf18ea40
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
c8e04c5a8285de07d2c84bfbda8eda2c14a9457d |
|
21-Apr-2015 |
Jeff Sharkey <jsharkey@android.com> |
Wider volume mutation lock, move force adoptable. We eventually should move back to per-disk locks, but use a giant lock to keep development rolling forward. Also move force adoptable flag to framework since, since encrypted devices don't have persisted properties loaded early during boot. Bug: 19993667 Change-Id: Ifa3016ef41b038f8f71fc30bc81596cfd21dcd2a
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
9f18fe7807a4e4089778243dbbd08d154ec15540 |
|
02-Apr-2015 |
Jeff Sharkey <jsharkey@android.com> |
Remove unused code. Bug: 19993667 Change-Id: I1f6519655c5a366eca25e2329e1bf95d81b3bf8c
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
05335c344d73411439774dfa548c633020e158e1 |
|
05-Mar-2015 |
Paul Lawrence <paullawrence@google.com> |
Adding e4crypt support Redirect all crypto calls to e4crypt equivalents if file level encryption detected. Note this change implements only the ones needed for minimal functionality. Requires matching change: https://googleplex-android-review.git.corp.google.com/#/c/642778/ Change-Id: I622d1a91704de4b3ab655486e6d38cd6718e6016
/system/vold/CommandListener.cpp
|
38394c7d2d6d5bd8c7467155587a78b912e2b7ab |
|
07-Feb-2015 |
Paul Lawrence <paullawrence@google.com> |
am 223fd1ca: Revert "Make encryption configurable" * commit '223fd1cad8d627dc36e11da8cdd342c1a810d226': Revert "Make encryption configurable"
|
223fd1cad8d627dc36e11da8cdd342c1a810d226 |
|
06-Feb-2015 |
Paul Lawrence <paullawrence@google.com> |
Revert "Make encryption configurable" This reverts commit 6a69cfc411c086f15d59b7dc105763af16620414. The original fix seems to have led to boot failures in QA. Rather than risk shipping, revert the change. Bug 18764230 reopened. Requires change https://googleplex-android-review.git.corp.google.com/#/c/629950/ Bug: 19278390 Bug: 19199624 Change-Id: Ia858c4db0abb917f9364ec8048f59ca4fb48e233
/system/vold/CommandListener.cpp
|
4a36ca003873991c99fbd2b41c87c9409c053d71 |
|
26-Jan-2015 |
Paul Lawrence <paullawrence@google.com> |
am 6a69cfc4: Make encryption configurable * commit '6a69cfc411c086f15d59b7dc105763af16620414': Make encryption configurable
|
6a69cfc411c086f15d59b7dc105763af16620414 |
|
21-Jan-2015 |
Paul Lawrence <paullawrence@google.com> |
Make encryption configurable Add maybeenabledefaultencryption function, that encrypts based on the encryption flag and appropriate environment variable Bug: 18764230 Change-Id: Id9a1967d09a7ae63a51240c0a5f3c41505af0e9a
/system/vold/CommandListener.cpp
|
09cf7354a9c07505c8b2af43bfaa86252833b014 |
|
06-Jan-2015 |
Yabin Cui <yabinc@google.com> |
am f3b2637e: Merge "Use getmntent when accessing /proc/mounts." * commit 'f3b2637e0611ac7953c18ce39a47b7c408a70160': Use getmntent when accessing /proc/mounts.
|
d1104f75a736210a95ba890473d78e8dfc8b8915 |
|
02-Jan-2015 |
Yabin Cui <yabinc@google.com> |
Use getmntent when accessing /proc/mounts. Bug: 18887435 Change-Id: Ibcb446fac954d9c42ebdfc4b684e6f3503337ab4
/system/vold/CommandListener.cpp
|
6c78e7d7724a431dbdb2b0a5bb8cd2b07424cbe5 |
|
18-Dec-2014 |
Tim Murray <timmurray@google.com> |
resolved conflicts for merge of 4be36106 to lmp-mr1-dev-plus-aosp Change-Id: If504710a618d8c3adf85297d5fd2909558ed57a3
|
8439dc9fd569794b1a31f67cf43d9212de33eecc |
|
15-Dec-2014 |
Tim Murray <timmurray@google.com> |
Make vold compile with -Werror -Wall. -Wno-missing-field-initializers is used as well, but that is an overzealous warning from initializing structs with {0} and not a real warning. bug 18736778 and 16868177 Change-Id: Iffde89cd7200d9a11193e1614f1819f9fcace30a
/system/vold/CommandListener.cpp
|
b25302e1b0232ac2f9d6ffa441f2ab1ff23a2de3 |
|
11-Nov-2014 |
Paul Lawrence <paullawrence@google.com> |
Do not log passwords returned through vdc Requires framework change: https://googleplex-android-review.git.corp.google.com/#/c/585511/ Bug: 18260068 Change-Id: I95d3bb39404ede7128b8f5d61ce2423a5f09a9b8
/system/vold/CommandListener.cpp
|
85c01f95c7a3c009e79867fe36181cc0793a0440 |
|
13-Oct-2014 |
Rubin Xu <rubinxu@google.com> |
Make persistent field in cryptofs support longer values. Store long field values in multiple underlying fixed-length entries and concatenate them together when reading back. Bug: 17556485 Change-Id: I2f8033d18c208993fa1b010712be0dad5d8b646b
/system/vold/CommandListener.cpp
|
43ed123d3fc1a3edf3660cd0e2528e971abc399e |
|
22-Aug-2014 |
Jeff Sharkey <jsharkey@android.com> |
ASEC resize tweaking, allow read-write mounting. Resize is no-op when sector count is unchanged; the caller can't anticipate how vold does its sector calculations. After resizing, we need to mount the container read-write, so allow the caller to request "ro" or "rw" mode. Handle ENOTSUP when trying to fallocate() on some filesystems Bug: 16514385 Change-Id: I0d3a378280d4c36d14f8108ff428102283d583fa
/system/vold/CommandListener.cpp
|
422bdb7e49b39475328f05d765b00f0ef96820b8 |
|
29-Jul-2014 |
JP Abgrall <jpa@google.com> |
fstrim: prep for supporting a deep trim ioctl This adds an "fstrim dodtrim" command which will attempt to use the FIDTRIM ioctl() if FIDTRIM is defined in the uapi/linux/fs.h. If not, it will fail with EINVAL. If no FIDTRIM is defined, it does not affect the "fstrim dotrim". Change-Id: Icbfd621abb592b170db06f749e5eedfd1175f723
/system/vold/CommandListener.cpp
|
40b64a684124809132e04e3c499aa1e101fe808f |
|
25-Jul-2014 |
JP Abgrall <jpa@google.com> |
vold: support "volume list [broadcast]" command Sometimes when an sdcard is already mounted, some info like uuid and label are not re-broadcast to new listeners. The extra argument to list allows late listeners to catch up by asking volume list to broadcast that info again. Bug: 16253597 Bug: 16306775 Change-Id: Ie7d0c1132c22d307a5b2a0e50075a3716138d00b Signed-off-by: Benson Huang <benson.huang@mediatek.com> (cherry picked from commit 85f4700f44170b772697e627b3075dcb9137e1b7)
/system/vold/CommandListener.cpp
|
fcd34a0ddd45db83b7bc71ff47cba9b789089fdd |
|
22-May-2014 |
Daniel Rosenberg <drosen@google.com> |
Added support for ext4 ASEC resizing. ASECs formatted as ext4 can now be resized using vdc asec resize. Refactored some common code. Requires resize2fs. Change-Id: Ie78bb6015114a7bc4af42b16d1f299322ffc1e2a Signed-off-by: Daniel Rosenberg <drosen@google.com>
/system/vold/CommandListener.cpp
|
45f10533f8cb2e2ec8dc9803739870cbfafffebd |
|
04-Apr-2014 |
Paul Lawrence <paullawrence@google.com> |
Revert "Revert "Encrypt phone even if pattern or no keyguard"" Don't block based on keyguard type, and pass type to encryption function. Requires: https://googleplex-android-review.git.corp.google.com/#/c/444201/ or encryption will no longer work. This reverts commit efec3f2927c45979db2b78e7a6228d08aafb5e42. Change-Id: I431589a56eb11118027e0a5a84f55e973b1084aa
/system/vold/CommandListener.cpp
|
efec3f2927c45979db2b78e7a6228d08aafb5e42 |
|
03-Apr-2014 |
Paul Lawrence <paullawrence@google.com> |
Revert "Encrypt phone even if pattern or no keyguard" This reverts commit 5cc86c57416eccb70dcc949d68587f08726f96fa. Without two more commits, this will break encryption. I'll re-commit when the other two pass code review. Change-Id: I71720d065c16cf0f7f534e74ffe883f1e113c477
/system/vold/CommandListener.cpp
|
5cc86c57416eccb70dcc949d68587f08726f96fa |
|
02-Apr-2014 |
Paul Lawrence <paullawrence@google.com> |
Encrypt phone even if pattern or no keyguard Add option to enablecrypto to take type, allowing us to set type when encrypting. Bug: 13749169 Change-Id: If22fcfa93f1ebd1a5bd3b0077bb3bd8ae71fe819
/system/vold/CommandListener.cpp
|
399317ede45340eebc035ba204b6201b6d62dd66 |
|
10-Mar-2014 |
Paul Lawrence <paullawrence@google.com> |
Store password in vold If we are not to double prompt, we need to pass the password from CryptKeeper to KeyStore. Since the entire framework is taken down and restarted, we must store the password in a secure system daemon. There seems no better way than holding it in vold. Change-Id: Ia60f2f051fc3f87c4b6468465f17b655f43f97de
/system/vold/CommandListener.cpp
|
f8e9569507a641ece6713cb4be072d1d9cfd2dcd |
|
12-Mar-2014 |
Mohamad Ayyash <mkayyash@google.com> |
Merge "vold: Add a new mountall command."
|
df7382e477ed0e3d27dc7cb1ca029aa52b476c7c |
|
12-Mar-2014 |
JP Abgrall <jpa@google.com> |
am a29997ae: am 470f0b3f: Merge "Avoid segv by checking argc in "storage user <mountpoint>"" * commit 'a29997ae260d3d7cf41c40d9c7ba42b761b12d30': Avoid segv by checking argc in "storage user <mountpoint>"
|
7929aa73d0c1fa75e8e0fcd4272361ad0ea9b0e6 |
|
10-Mar-2014 |
Mohamad Ayyash <mkayyash@google.com> |
vold: Add a new mountall command. This enables running "vdc mountall" in filesystem recovery tests where a partition is first unmounted then corrupted, and then finally verified that it's properly recovered and remounted successfully (i.e. running e2fsck..etc.). Change-Id: I9385180afaef70f9cc6b2920d2a3c6ff13203b4e
/system/vold/CommandListener.cpp
|
edf7adf21e1c210e5954b1128efb61b62f6da274 |
|
12-Mar-2014 |
JP Abgrall <jpa@google.com> |
Avoid segv by checking argc in "storage user <mountpoint>" Change-Id: Iffd67746e2e273c4c3f87741e5f13aa511ccb557 Signed-off-by: JP Abgrall <jpa@google.com>
/system/vold/CommandListener.cpp
|
684dbdf316a02cf6a7694018f7c3a4bcd65142cc |
|
07-Feb-2014 |
Paul Lawrence <paullawrence@google.com> |
Infrastructure to securely allow only one prompt at boot when encrypted Add a call to vold that says if we decrypted the data partition. Reset the flag so that it only returns true the first time. Bug: 12990752 Change-Id: Ib00be87137c00fb8ad29205c85a3ea187764b702
/system/vold/CommandListener.cpp
|
13486033575e6e4affccbb3dd201515d79f6f44b |
|
03-Feb-2014 |
Paul Lawrence <paullawrence@google.com> |
Enable auto-encrypt drive at startup Modify enablecrypto command to make the password optional. When it is not there, default encrypt the device. Remove a warning by making at least some parts of this file const-correct. Bug: 11985952 Change-Id: Ie27da4c4072386d9d6519d97ff46c6dc4ed188dc
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
5eecc449cc75771cc0c6eb0ad936117d16704b83 |
|
12-Feb-2014 |
Mark Salyzyn <salyzyn@google.com> |
vold: suppress unused argument warning messages (cherry picked from commit 3e971277db0d87652af5622c989233e7159ab909) Change-Id: Ic1ab533f756fbd44b1f2e5ae12e2f5736ace7740
/system/vold/CommandListener.cpp
|
3e971277db0d87652af5622c989233e7159ab909 |
|
21-Jan-2014 |
Mark Salyzyn <salyzyn@google.com> |
vold: suppress unused argument warning messages Change-Id: Ic1ab533f756fbd44b1f2e5ae12e2f5736ace7740
/system/vold/CommandListener.cpp
|
502dc74153397e56d5410f8a8250b5581643b9ef |
|
01-Nov-2013 |
JP Abgrall <jpa@google.com> |
vold: cryptfs: Retry encryption after killing processes using /data Currently, if a non-framework process or service is using /data, unmounting will fail as nothing will kill it. Instead of rebooting on unmount failure, we now kill all processes using /data, then try one more time. Bug: 11291208 Change-Id: I6c5276c78aa55965914ace96e1db74dc80fca3c1
/system/vold/CommandListener.cpp
|
530a6c1787aed2b7e2ad6b2753351643743034f6 |
|
21-Sep-2013 |
Jeff Sharkey <jsharkey@android.com> |
am 71ebe154: Add mkdirs() command. * commit '71ebe154a5fbbb4b394a439ff0b6b9c84fbd04f5': Add mkdirs() command.
|
71ebe154a5fbbb4b394a439ff0b6b9c84fbd04f5 |
|
18-Sep-2013 |
Jeff Sharkey <jsharkey@android.com> |
Add mkdirs() command. Apps without sdcard_r or sdcard_rw need to have someone create package-specific directories on their behalf. If apps have trouble creating on their own, they now delegate through system to have vold create the paths. Requires that the requested path is actually managed by vold. Bug: 10577808 Change-Id: I6835fc8f52240f9de07f89742a426a153e3ca32a
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
9caab76c6b5aefdeeb1715a3695491ca793b8c18 |
|
12-Jun-2013 |
Ken Sumrall <ksumrall@android.com> |
vold: Add an optional wipe paramter to the volume format command The new wipe option to the vold format command will invoke BLKDISCARD on the partition before invoking newfs_msdos. This will be used whenever a full wipe of the device is wanted, as this is more secure than just doing newfs_msdos. Bug: 9392982 Change-Id: Ie106f1b9cc70abc61206006d1821641c27c7ccae
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
b87937cdea689594a293979b30b13054e7455dee |
|
20-Mar-2013 |
Ken Sumrall <ksumrall@android.com> |
Vold: Add the fstrim subsystem to vold The fstrim subsystem implements the dotrim command, which goes through all the writable filesystems on the device, and invokes the FITRIM ioctl() on them. This marks all the unused blocks on the underlying flash device as unused, so the device performs better. Change-Id: I5fc8c2f60e0bc823f162d0f89580fb288ecb2160
/system/vold/CommandListener.cpp
|
16a32502bf98b4b0fc15a82a36242fada29baf5b |
|
28-Nov-2012 |
Dianne Hackborn <hackbod@google.com> |
am 3fd60b42: Fix issue #7503920: Log spew from vold * commit '3fd60b428202a0f5f324fccc67c0c0402b9131ba': Fix issue #7503920: Log spew from vold
|
3fd60b428202a0f5f324fccc67c0c0402b9131ba |
|
28-Nov-2012 |
Dianne Hackborn <hackbod@google.com> |
Fix issue #7503920: Log spew from vold Change-Id: Ibfa5b979014f433085b94aab0d3d81bf9269d4b5
/system/vold/CommandListener.cpp
|
29e55ef83def8eaf6aa01201c6344a8037b2f780 |
|
30-Oct-2012 |
Elliott Hughes <enh@google.com> |
am edf4e179: Merge "Fix vold\'s use of readdir_r(3)." * commit 'edf4e17940c6d3887e9009b23ffca5be8116fbe9': Fix vold's use of readdir_r(3).
|
8c480f73eed963eeca9b7df3e4c4543c6e43b0d7 |
|
27-Oct-2012 |
Elliott Hughes <enh@google.com> |
Fix vold's use of readdir_r(3). Change-Id: I805a1799755429dd1f6f3bdc2e6a02f483587b35
/system/vold/CommandListener.cpp
|
6947904a76b69a1db20a3ddd30c0bcd281922fde |
|
26-Sep-2012 |
Jeff Sharkey <jsharkey@android.com> |
Handle multi-user mountObb() requests. Mount OBB containers using shared app GID, so that an app can read the mount point across users. Bug: 7212801 Change-Id: Ia1be52df9854c259b20728111f3a2c9facf4beaa
/system/vold/CommandListener.cpp
|
7b0bc8571465666d6cba79bda60b72a97f852c05 |
|
28-Apr-2012 |
Kenny Root <kroot@google.com> |
Fix truncation of ASEC ids Change-Id: I1e6bfcc6b0a5be47e6fd19922fc81669f61b5dba
/system/vold/CommandListener.cpp
|
344ca10856f3d3087a3288ce8f91ad83665d93fb |
|
04-Apr-2012 |
Kenny Root <kroot@google.com> |
Add in ext4 support for ASEC containers Now forward locked applications will be in ASEC containers both internal to the system and externally. This change adds support for putting applications in ext4-based ASECs. Change-Id: I8d6765b72dd2606e429c067b47a2dbcaa8bef37d
/system/vold/CommandListener.cpp
|
149aa3eb65a8cb878781206b1476aae110e0e1fd |
|
16-Feb-2012 |
Robert Greenwalt <rgreenwalt@google.com> |
Use the new command numbering scheme. Support multiple commands on a single socket via command numbers. NativeDaemonConnector has been changed, so we need to use it here too. bug:5864209 Change-Id: Ie06e966d50057d122a958377731c0385ea367b69
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
0b8b59719357fb80c330442787f7d5b1e332263b |
|
01-Sep-2011 |
Ken Sumrall <ksumrall@android.com> |
Add the ability to revert a crypto mapping when unmounting a volume Add the force_and_revert option to the unmount command which will force the unmount, and revert a crypto mapping. This is used during factory reset so that when the internal sdcard volume is formatted, it formats the raw device, not the encrypted mapping. Change-Id: I36b6ff9bb54863b121de635472a303bf4a2334a9
/system/vold/CommandListener.cpp
|
736910ca99a40b9add4353bf619e778c40938948 |
|
27-Jun-2011 |
Dianne Hackborn <hackbod@google.com> |
Add new vold call to get the path to an asec fs. Change-Id: Ife15628ed6e2493c9e85a2ade6d59a194fdddde5
/system/vold/CommandListener.cpp
|
a976656ff90291b9437a4d37b48e82abcd48195e |
|
07-Jun-2011 |
Mike Lockwood <lockwood@android.com> |
Remove obsolete code for monitoring USB status Change-Id: I8ac8900b3135f03b7717540b825ff6df76f31c0b Signed-off-by: Mike Lockwood <lockwood@android.com>
/system/vold/CommandListener.cpp
|
7f7dbaa2784c10fd2989fb303e5edfb8136d53dc |
|
02-Feb-2011 |
Ken Sumrall <ksumrall@android.com> |
Improve detection of incomplete encryption Bug 3384231 is punted to MR1, but the code to set the flag is already in the tree, so this CL does 3 things: 1. Comments out the lines that set the flag 2. Removes the change to the checkpw that was added in the last change. 3. Implements a new command to check the flag (which no one is calling yet and the flag won't be set anyhow). When MR1 comes, it will be a simple matter to enable the flag setting code and start testing it. The fear is a false positive detection of incomplete encryption could cause people to be prompted to wipe their data when MR1 comes out and the flag is checked. Not setting this for first release, and testing this more before MR1, will give us confidence that the code will not detect false positives of encryption failure. Change-Id: I6dfba11646e291fe5867e8375b71a53c815f3968
/system/vold/CommandListener.cpp
|
70a4b3fd7a84a84bbe6e9d6d4ca3ee2098259fd9 |
|
28-Jan-2011 |
Jason parks <jparks@google.com> |
Change cryptfs changepw to only require a new password. The master key is now stored unhashed in memory. This is needed because certain operation like remote reseting of passwords the old password is not avaliable. The changepw interface has been changed to only take the new password as the only argument. When this is called we reencrypt the master key with the new password and old salt. Bug: 3382129 Change-Id: I9a596b89013194605d6d7790067691aa0dc75e72
/system/vold/CommandListener.cpp
|
0167cb15935592deea9abbd6a8bbe904e27bd101 |
|
21-Jan-2011 |
Jason parks <jparks@google.com> |
Always return success if the command was run. The caller will check the result code for success. This prevents a exception from being thrown when the result code needs to be propagated to the caller. Change-Id: I471e8d6eb6f339c6f4e40f47adf60d20f6a70974
/system/vold/CommandListener.cpp
|
57b63e61cb41e377708a4fdf18ecc80eb1b2b521 |
|
18-Jan-2011 |
Ken Sumrall <ksumrall@android.com> |
Minor tweaks to logging for the cryptfs changepw command. Change-Id: I87ff9788a56de6d461002407bf6c3cd4c6f900ee
/system/vold/CommandListener.cpp
|
8ddbe40a8a8708dac7c472fa8c098c8f7b24534c |
|
18-Jan-2011 |
Ken Sumrall <ksumrall@android.com> |
Updates to cryptfs framework. Update the enable inplace API to allow the UI to show a progress bar. Add new command changepw (whichis currently not working) Internal restructuring of code to support these two features. Some minor cleanup of the code as well. Change-Id: I11461fc9ce66965bea6cd0b6bb2ff48bcf607b97
/system/vold/CommandListener.cpp
|
6864b7ec94a57b73c300457955d86dc604aeddf5 |
|
15-Jan-2011 |
Ken Sumrall <ksumrall@android.com> |
Change the cryptfs command to separate out checking the password and restarting In order to make the animations and the UI look right, we need to change the cryptfs checkpw command to return a status if the password was correct or not, and not have it automatically restart if it's correct. There is a new command restart that will restart the framework with the encrypted filesystem. Change-Id: Ia8ae00d7ed8667699aa58d05ad8ba953cca9316e
/system/vold/CommandListener.cpp
|
8f869aa1bc685b505c58e97b4e11a9c7491a16f9 |
|
03-Dec-2010 |
Ken Sumrall <ksumrall@android.com> |
Support for encrypting /data on Stingray. There are still a few hacks and performance issues related to shutting down the framework in this code, but it is functional and tested. Without the UI changes, it requires cryptic adb shell commands to enable, which I shall not utter here. Change-Id: I0b8f90afd707e17fbdb0373d156236946633cf8b
/system/vold/CommandListener.cpp
|
37dcda68d334f70e1f7f69a9817def65fe3ee717 |
|
16-Nov-2010 |
Olivier Bailly <olivier@google.com> |
Add missing include headers for compilation on Intel target for Google TV. Change-Id: I9f71b5e871671d1d64ad37f78a8944653409b8e1
/system/vold/CommandListener.cpp
|
508c0e1605b795bbb51cb47d955b89f3df26ca94 |
|
12-Jul-2010 |
Kenny Root <kroot@google.com> |
Additional Obb functionality * Rename all functions dealing with OBB files to mention Obb * Add 'path' and 'list' functionality to OBB commands * Store hashed filename in loop's lo_crypt_name and keep lo_file_name for the real source filename. That way we can recover it later with an ioctl call. Change-Id: I29e468265988bfb931d981532d86d7be7b3adfc8
/system/vold/CommandListener.cpp
|
fb7c4d5a8a1031cf0e493ff182dcf458e5fe8c77 |
|
01-Jul-2010 |
Kenny Root <kroot@google.com> |
Add image mounting commands for OBB files Allow the mounting of OBB filesystem images if they're encrypted with twofish and in FAT filesystem format. Change-Id: I54804e598f46b1f3a784ffe517ebd9d7626de7aa
/system/vold/CommandListener.cpp
|
97ac40e4e6f3ed0bd5d6878d7d8d4a54fcaecb76 |
|
24-Mar-2010 |
San Mehat <san@google.com> |
vold: Switch from LOG -> SLOG Change-Id: I48ee8bd90b47f5845f069cdf4d1b8ba6ecdb1b39 Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
96597e8b840ef671fe5279f8bd64fb09a8b38d4c |
|
17-Mar-2010 |
San Mehat <san@google.com> |
vold: Add mounted filesystems to dump cmd Change-Id: If025e7ee10a79ff089920a6d0c1a52358b2d2c22 Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
57df7bf33968d65c23f3d0dc9f30a8ce2625b1d0 |
|
14-Mar-2010 |
San Mehat <san@google.com> |
vold: Fix argument validation for volume commands Change-Id: I74aa63ff9f9bc32bd871e6c53ab50b6baf79e650 Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
d9a4e358614a0c5f60cc76c0636ee4bb02004a32 |
|
12-Mar-2010 |
San Mehat <san@google.com> |
vold: Bugfixes & cleanups - Fix issue where container-names > 64 bytes were getting truncated in the kernel. lo_name is only 64 bytes in length, so we now hash the container id via md5 - Add 'dump' command to dump loop and devicemapper status - Add 'debug' command to enable more detailed logging at runtime - Log vold IPC arguments (minus encryption keys) - Fix premature return from Loop::lookupActive() and friends Change-Id: I0e833261a445ce9dc1a8187e5501d27daba1ca76 Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
2350c44ff39b4cb2940893964a05f778fc80a436 |
|
02-Mar-2010 |
San Mehat <san@google.com> |
vold: Add support for xwarp Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
3bb6020e461e8872e8df0775cba6eb32e06b93ec |
|
20-Feb-2010 |
San Mehat <san@google.com> |
vold: Stage the mounting of media to hide the ASEC imagefile directory In order to protect the '/android_secure' directory on VFAT removable media from being mucked with by 3rd party applications on the device, we hide the directory with a read-only, zero-sized tmpfs mounted on-top. A reference to the hidden directory is kept by a bind-mount which is mounted at a location which only root can access. Staging consists of: 1. Mount checked media at a secure location (/mnt/secure/staging) 2. Ensure /android_secure exists on the media, (creating if it doesnt) 3. Bind-mount /mnt/secure/staging/android_secure -> /mnt/secure/asec (where only root can access it) 4. Mount an RDONLY zero-sized tmpfs over /mnt/secure/staging/android_secure 5. Atomically move /mnt/secure/staging to the publicly accessable storage directory (/mnt/sdcard) Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
4ba8948dc16463053e21cda5744f519a555080d0 |
|
18-Feb-2010 |
San Mehat <san@google.com> |
vold: Add 'force' option to anything that can cause an unmount Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
b9aed74b146beb7499ebc5775e8ae179d16900ef |
|
05-Feb-2010 |
San Mehat <san@google.com> |
vold: Fix a few bugs - share command was taking wrong arguments - shared command was returning two termination codes - Force FAT32 cluster size to 4k when formatting Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
2b22552f9a3b077f9d0a3624ac6f9b8b332f8a7a |
|
03-Feb-2010 |
San Mehat <san@google.com> |
vold: Fix share status argument off by one Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
eba65e9d438a05f1c5dfd0f8d31bc463a5d08eee |
|
29-Jan-2010 |
San Mehat <san@google.com> |
vold: Bloat reduction Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
048b0801fcd6fcfbb8fa812284c751181e4821b8 |
|
23-Jan-2010 |
San Mehat <san@google.com> |
vold: Add support for renaming secure containers Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
5817821cf10b5f7d13eb693ffbc3f80f13bc681b |
|
18-Jan-2010 |
San Mehat <san@google.com> |
vold: Add command to unmount secure containers Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
dfe79492a4f5280e9de2db6fa749a7781c59f2a6 |
|
11-Jan-2010 |
San Mehat <san@google.com> |
vold2: Fix a mb -> sector conversion refactor bug Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
c66770f4c0497430a78e982cabe65b31828055c6 |
|
11-Jan-2010 |
San Mehat <san@google.com> |
vold: Rename the C in ASEC to Container Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
8b8f71b1d760411279f3b07a5c97709f052c689e |
|
11-Jan-2010 |
San Mehat <san@google.com> |
vold: Internally use sector counts for asec lengths Signed-off-by: San Mehat <san@google.com>
/system/vold/CommandListener.cpp
|
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/CommandListener.cpp
|
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/CommandListener.cpp
|
49e2bce5b74129c26a35e25d4693cbfe98c4688e |
|
13-Oct-2009 |
San Mehat <san@android.com> |
vold2: Wire up more of the mount function Signed-off-by: San Mehat <san@android.com>
/system/vold/CommandListener.cpp
|
f1b736bc5605e92e917ab27f5abf3ba839be2270 |
|
11-Oct-2009 |
San Mehat <san@android.com> |
system: vold2: Initial skeleton for vold2. Let there be light. Signed-off-by: San Mehat <san@android.com>
/system/vold/CommandListener.cpp
|