cryptfs: also unmount /data/data before encrypting

galaxysmtd mounts /data/data on top on /data when unencrypted for
performance reason, so when encrypting, we need to unmount that
first before we can unmount /data.

On other devices, umount on a non-mounted folder will silently
succeed.

Signed-off-by: Humberto Borba <humberos@gmail.com>
Change-Id: I07a73534fb3e253b702a4be6f976594644795e36
Validate asec names.

Make sure asec names only contain alphanumeric, underscores,
dots, or dashes. Don't allow double dots.

Bug: 12504045

(cherry picked from commit 669626096513cf741646cf18a9e8ba246d359596)

Change-Id: Ia9d04f373aa95878b2e81584c4167dc2d4aa0c78
am 0de7c611: Validate asec names.

* commit '0de7c61102611ccd5df1ca48cb733bf037512c6b':
  Validate asec names.
am f4770dcf: am 0de7c611: Validate asec names.

* commit 'f4770dcf6ffe2baba16cbb290aba16f735c51962':
  Validate asec names.
am fd2dcf90: am f4770dcf: am 0de7c611: Validate asec names.

* commit 'fd2dcf905abd3dc76738fd864e3979bd6e5ce183':
  Validate asec names.
am 3e03bf8a: am fd2dcf90: am f4770dcf: am 0de7c611: Validate asec names.

* commit '3e03bf8a7ab9dcee8897f275c75adfcdb20e0fdc':
  Validate asec names.
am 35ab6119: am 3e03bf8a: am fd2dcf90: am f4770dcf: am 0de7c611: Validate asec names.

* commit '35ab611925aea29fc4088b5c3de7c8c77d956b8b':
  Validate asec names.
am 7f6932df: am 35ab6119: am 3e03bf8a: am fd2dcf90: am f4770dcf: am 0de7c611: Validate asec names.

* commit '7f6932df89756f796c3a1f04f748db39a0564561':
  Validate asec names.
am 2f0a1d66: am 7f6932df: am 35ab6119: am 3e03bf8a: am fd2dcf90: am f4770dcf: am 0de7c611: Validate asec names.

* commit '2f0a1d66585fb44f59d913d3417422486ef10225':
  Validate asec names.
am 7cf05b15: am 2f0a1d66: am 7f6932df: am 35ab6119: am 3e03bf8a: am fd2dcf90: am f4770dcf: am 0de7c611: Validate asec names.

* commit '7cf05b15b76b91aa07182e86a730d7552b23130c':
  Validate asec names.
Merge "cryptfs: also unmount /data/data before encrypting" into android-4.4
[2/3] Vold: NTFS support

omni: https://gerrit.omnirom.org/#/c/5170/
android: https://gerrit.omnirom.org/#/c/5172/

Change-Id: I6757d78c98837e02975c37ca20d6e6b9e36ced69
vold: support more than 1 UMS share

Used for devices with both mountable internal and external sdcards.

This is a forward-port and clean up of the 10.2 code (which contains
a lot of deadcode.)

Original authors:

    Alex Zepeda <alex@inferiorhumanorgans.com>
    Genokolar <genokolar@gmail.com>
    Josh Stone <cuviper@gmail.com>
    mik_os <kiril.mik.os@gmail.com>
    Oran Avraham <oranav@gmail.com>
    Pawit Pornkitprasan <p.pawit@gmail.com>
    Tony Layher <layhertony@gmail.com>

Change-Id: I13b5c0b58e3d420bcdf894b67f2ef7eab88eb7f0
vold: add ro.vold.umsdirtyratio property

This allows control of what /proc/sys/vm/dirty_ratio is used when USB mounting.
Some platforms like the HTC Desire (bravo) get a _HUGE_ performance boost when
writing to the sdcard when USB mounting if this is set to 20 (which is the default)
on the HTC Desire.

This addresses this issue: http://code.google.com/p/cyanogenmod/issues/detail?id=2949

Basicly it makes it possible to undo or control the effect of this commit:
https://github.com/CyanogenMod/android_system_vold/commit/a28056b38275003895ff5d9576681aca01544822

Change-Id: Icc518132d939d84ca101c83eea26f88e089034da
Merge "vold: support more than 1 UMS share" into android-4.4
Merge tag 'android-4.4.3_r1.1' into HEAD

Android 4.4.3 release 1.1

Conflicts:
	VolumeManager.h

Change-Id: I934597a6ab6c44bbfa72667a2042ad8db466698f
Merge remote-tracking branch 'omni/android-4.4' into du44