Commit Graph

116 Commits

Author SHA1 Message Date
Bill Yi 0cc8da0947 Merge commit '9c1bc6bbc82e3e4f005e9fcacfca94b2dd82ca31' into HEAD 2015-02-19 14:33:24 -08:00
Yabin Cui e2d63af002 Move sprintf to snprintf.
Bug: 19340053
Change-Id: Id0d866e6195ed4752b4be6081eeb2aab8b1dbe9a
2015-02-17 19:27:51 -08:00
Paul Lawrence a173891532 am 317b4024: Revert "Make encryption configurable"
* commit '317b4024a2a46b8c57abfa08f2a649df13572bd3':
  Revert "Make encryption configurable"
2015-02-07 00:11:12 +00:00
Nick Kralevich 846c8e0d34 am 17b5b352: Merge "fs_mgr: error check umount calls / add retry logic"
* commit '17b5b3520094de679c9e43a872c02d15758c83b8':
  fs_mgr: error check umount calls / add retry logic
2015-02-06 20:34:57 +00:00
Paul Lawrence 317b4024a2 Revert "Make encryption configurable"
This reverts commit bda6272446.

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/629764/

Bug: 19278390
Bug: 19199624

Change-Id: I8b6ab585666f2b0f585ffb2a5f61ac2e3462e06e
2015-02-06 17:32:09 +00:00
Nick Kralevich 7294eb6cae fs_mgr: error check umount calls / add retry logic
Don't silently ignore umount errors. At a minimum, log them.

Add strerror(errno) to another umount call, to make sure we get
some actionable data.

check_fs: try 5 times umounting the filesystem. It appears that
the umount is failing, perhaps because some service is opening
the file on the device or other error. Try unmounting it multiple
times in case it's a transient problem and we can recover.

Bug: 19199624
Bug: 19156134
Change-Id: I7213eb52d55116fb2419a36494d26d5e159981a7
2015-02-05 20:50:22 -08:00
Paul Lawrence 36d0eaecd7 Make encryption configurable
Delay mounting encryptable but unencrypted volumes until we can
check the ro.vold.forceencrypt flag, then optionally encrypt.

Requires matching vold change from
    https://googleplex-android-review.git.corp.google.com/#/c/615309/

Bug: 18764230
Change-Id: If22008be8de6a4f3216b349f81ace49be1730314
2015-01-28 11:41:53 -08:00
Paul Lawrence 2f7ee6b7dd Provide a way to select force encryption from vendor partition
This allows a vendor to force encryption on devices via a vendor
partition flag:

ro.vold.forceencryption 1

Bug: 18764230
Change-Id: Id0049ce64e34e4f6f96e593aadd70c277ac131c8
2015-01-28 11:41:35 -08:00
Paul Lawrence 7e890a4d32 am bda62724: Make encryption configurable
* commit 'bda6272446454886339841a62daaa1b66c07ad60':
  Make encryption configurable
2015-01-26 16:22:49 +00:00
Elliott Hughes 0944e305ff am 4e0bdd10: Merge "fs_mgr: Support filesystem labels in fstab"
* commit '4e0bdd1034ffcf55f4ebcbd547cf4aad59c05f03':
  fs_mgr: Support filesystem labels in fstab
2015-01-23 18:20:50 +00:00
Christoffer Dall 8298234847 fs_mgr: Support filesystem labels in fstab
When mounting fstab entries it is practical to be able to specify
for example LABEL=data instead of a specific block device.

This is particularly important for the new Android Emulator code base,
which uses virtio block devices for the various partitions
(system,data,cache), because there is no defined ordering between the
way the filesystems are specified to the emulator and how they are
enumerated by the android kernel as /dev/vdX.

Change-Id: I7aef95f12e8f7b02ac2e33804ba7897fdcb9ad7f
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-01-23 17:47:39 +00:00
Elliott Hughes 1fdd4dc0bc am 4083ed7d: Merge "Revert "fs_mgr: Support filesystem labels in fstab""
* commit '4083ed7dff6e1dd8e20bec04f9451061951394f5':
  Revert "fs_mgr: Support filesystem labels in fstab"
2015-01-23 00:50:46 +00:00
JP Abgrall 253b9cfba5 am f9e23395: Merge "fs_mgr: Support filesystem labels in fstab"
* commit 'f9e2339553f70aebdd170e96ab9332b28c3851b4':
  fs_mgr: Support filesystem labels in fstab
2015-01-23 00:50:36 +00:00
Elliott Hughes 4083ed7dff Merge "Revert "fs_mgr: Support filesystem labels in fstab"" 2015-01-23 00:34:08 +00:00
Elliott Hughes 572226c25c Revert "fs_mgr: Support filesystem labels in fstab"
This reverts commit 69407ccb02.

Change-Id: I537a3b4257b7bc2a69f1f4d62b4e18e91f2dc713
2015-01-23 00:33:43 +00:00
JP Abgrall f9e2339553 Merge "fs_mgr: Support filesystem labels in fstab" 2015-01-22 23:59:05 +00:00
Paul Lawrence bda6272446 Make encryption configurable
Delay mounting encryptable but unencrypted volumes until we can
check the ro.vold.forceencrypt flag, then optionally encrypt.

Requires matching vold change from
    https://googleplex-android-review.git.corp.google.com/#/c/615309/

Bug: 18764230
Change-Id: If22008be8de6a4f3216b349f81ace49be1730314
2015-01-21 10:03:29 -08:00
Christoffer Dall 69407ccb02 fs_mgr: Support filesystem labels in fstab
When mounting fstab entries it is practical to be able to specify
for example LABEL=data instead of a specific block device.

This is particularly important for the new Android Emulator code base,
which uses virtio block devices for the various partitions
(system,data,cache), because there is no defined ordering between the
way the filesystems are specified to the emulator and how they are
enumerated by the android kernel as /dev/vdX.

Change-Id: I12c3db0ba6a515dc8e917e0349afd257888d3aef
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2015-01-17 21:05:39 +01:00
Leo Wang 8e9407506f am f2bd3fdd: Merge "Provide a way to select force encryption from vendor partition" into lmp-mr1-dev
* commit 'f2bd3fdd190fc1234913febfe254f8bcc4e675da':
  Provide a way to select force encryption from vendor partition
2015-01-09 02:01:31 +00:00
Paul Lawrence 703b87de5b Provide a way to select force encryption from vendor partition
This allows a vendor to force encryption on devices via a vendor
partition flag:

ro.vold.forceencryption 1

Bug: 18764230
Change-Id: Id0049ce64e34e4f6f96e593aadd70c277ac131c8
2015-01-07 11:44:51 -08:00
Elliott Hughes 9ccf0cbaf1 am a97c1075: Merge "Fix Nick\'s nits"
* commit 'a97c10755442e3800c0b1011d986d554ce2096db':
  Fix Nick's nits
2014-12-10 03:48:42 +00:00
Elliott Hughes 603c7d0d95 am 294e610f: Merge "Fix verity on system partitions larger than 2G"
* commit '294e610f886eeb839d16172bb5b98559a6a7434d':
  Fix verity on system partitions larger than 2G
2014-12-10 03:48:41 +00:00
Paul Lawrence 88a12fb381 Fix Nick's nits
(cherry-pick of 97e487311b1cb780dfd3b0994917c72047d6188f.)

Change-Id: Ide7925e7ad328f0343d444d63ff72f1a26206d4c
2014-12-09 19:38:23 -08:00
Sami Tolvanen 02c698d93f Fix verity on system partitions larger than 2G
If the system partition is larger than 2G, the device fails to read
verity metadata, because fseek accepts only a 32-bit signed offset.
Switch from fseek to lseek64 to allow seeking using a 64-bit offset,
which solves the problem. At the same time, move away from stdio in
the function.

(cherry-pick of 4cafe2ff89b49329e0e880900195d8e061bd3750.)

Bug: 17705619
Change-Id: I226320498dcb750ec6cde84411c7fe0774c9cab7
2014-12-09 19:34:08 -08:00
Elliott Hughes 32e9163b2a resolved conflicts for merge of b471f524 to lmp-mr1-dev-plus-aosp
Change-Id: I6efd0d4a0ece0b065d02796916355ad5ae8b4eea
2014-12-09 19:12:21 -08:00
Paul Lawrence ec900bba20 Revert "Revert "Enable verity on userdebug, and add disable-verity to adb""
This reverts commit 152d2d4234.

Fixed build error, and also fixed memory leak spotted from warning.

(cherry-pick of bbb36319119edde9377fb80015235893c30d2bc9.)

Bug: 17691572
Change-Id: I23b5ba537f7b557432041d4338b38b9be434e981
2014-12-09 17:02:17 -08:00
Sami Tolvanen 99184bab35 am 72f0d92c: DO NOT MERGE: Do not mount devices with invalid verity metadata
* commit '72f0d92c722447e0c87cfe765516a7352db3d51a':
  DO NOT MERGE: Do not mount devices with invalid verity metadata
2014-11-14 00:03:41 +00:00
Sami Tolvanen 2dfadac156 am 9573a13b: DO NOT MERGE: Switch fs_mgr to use SHA-256 instead of SHA-1
* commit '9573a13bbc015c555adff1e4e0fbef2a18963111':
  DO NOT MERGE: Switch fs_mgr to use SHA-256 instead of SHA-1
2014-11-14 00:03:40 +00:00
Sami Tolvanen 72f0d92c72 DO NOT MERGE: Do not mount devices with invalid verity metadata
The return value of read_verity_metadata is propagated to caller
even if the verity metadata is invalid, provided that it can be
read from the device. This results in devices with invalid verity
metadata signatures to be mounted normally, which is not desirable.
This change fixes the bug by changing the return value in case of
verification failure to FS_MGR_SETUP_VERITY_FAIL.

Bug: 15984840
Bug: 18120110
Change-Id: Ic29f37a23cb417c2538d60fb05de9dd310d50f4a
(cherry picked from commit c95e9da396)
2014-11-13 15:43:08 -08:00
Sami Tolvanen 9573a13bbc DO NOT MERGE: Switch fs_mgr to use SHA-256 instead of SHA-1
Verity metadata signatures will be switched to SHA-256. Switch
fs_mgr signature verification to use the correct algorithm.

Needs matching changes from
  https://googleplex-android-review.git.corp.google.com/#/c/579905/
  https://googleplex-android-review.git.corp.google.com/#/c/583213/
  https://googleplex-android-review.git.corp.google.com/#/c/583214/
  https://googleplex-android-review.git.corp.google.com/#/c/583233/

Bug: 15984840
Bug: 18120110
Bug: 17917515
Change-Id: I8f90519bffa105a0eb7abeaad3aea1ffceb851e2
(cherry picked from commit a3465e250c)
2014-11-13 15:42:50 -08:00
JP Abgrall e90304c8f1 fs_mgr: let fsck.f2fs actually attempt a fix
automerge: eb6036a

* commit 'eb6036ac6be82dcc6e110de22574972631c8f83e':
  fs_mgr: let fsck.f2fs actually attempt a fix
2014-11-12 00:19:54 +00:00
JP Abgrall eb6036ac6b fs_mgr: let fsck.f2fs actually attempt a fix
The newer fsck.f2fs (1.4.0++) has better fix support, so invoke it.

Requires http://ag/583949 f2fs-tools update.

Bug: 17640053
Bug: 18292088
Change-Id: I42370d92b232e0bdbf28cccf7035a15dbffeb268
Signed-off-by: JP Abgrall <jpa@google.com>
2014-11-08 01:20:24 +00:00
Sami Tolvanen 7a59c852c2 am 4cafe2ff: Fix verity on system partitions larger than 2G
* commit '4cafe2ff89b49329e0e880900195d8e061bd3750':
  Fix verity on system partitions larger than 2G
2014-10-31 16:10:58 +00:00
Sami Tolvanen 4cafe2ff89 Fix verity on system partitions larger than 2G
If the system partition is larger than 2G, the device fails to read
verity metadata, because fseek accepts only a 32-bit signed offset.
Switch from fseek to lseek64 to allow seeking using a 64-bit offset,
which solves the problem. At the same time, move away from stdio in
the function.

Bug: 17705619
Change-Id: I226320498dcb750ec6cde84411c7fe0774c9cab7
2014-10-29 11:06:47 -07:00
Paul Lawrence a1ab5a8ecf am 97e48731: Fix Nick\'s nits
* commit '97e487311b1cb780dfd3b0994917c72047d6188f':
  Fix Nick's nits
2014-10-10 18:44:53 +00:00
Paul Lawrence 6e9857da67 resolved conflicts for merge of bbb36319 to lmp-mr1-dev-plus-aosp
Change-Id: I6b62347c3acfda7c2c954e719547021009d20c01
2014-10-10 09:07:21 -07:00
Paul Lawrence c638c6647d resolved conflicts for merge of a49bfc0d to lmp-mr1-dev-plus-aosp
Change-Id: I9ff777a6309aab2b5b18323dd4ee7617cb1c3180
2014-10-09 15:17:23 -07:00
Paul Lawrence cc496dbcd7 resolved conflicts for merge of ae413a71 to lmp-mr1-dev-plus-aosp
Change-Id: Icdc9306b460c116441aad21bfcf3ab549224a141
2014-10-09 13:24:06 -07:00
Paul Lawrence 97e487311b Fix Nick's nits
Change-Id: Ide7925e7ad328f0343d444d63ff72f1a26206d4c
2014-10-09 09:37:00 -07:00
Paul Lawrence bbb3631911 Revert "Revert "Enable verity on userdebug, and add disable-verity to adb""
This reverts commit 152d2d4234.

Fixed build error, and also fixed memory leak spotted from warning.

Bug: 17691572
Change-Id: I23b5ba537f7b557432041d4338b38b9be434e981
2014-10-09 09:05:36 -07:00
Mark Salyzyn 3e64bf45e6 am af191cd1: am 6b66025f: Merge "fs_mgr: fix build breakage"
* commit 'af191cd157f076ee5d99890711e2881a60d7770a':
  fs_mgr: fix build breakage
2014-10-09 14:25:32 +00:00
Mark Salyzyn ee80cf8755 am af191cd1: am 6b66025f: Merge "fs_mgr: fix build breakage"
* commit 'af191cd157f076ee5d99890711e2881a60d7770a':
  fs_mgr: fix build breakage
2014-10-09 14:25:31 +00:00
Nick Kralevich 152d2d4234 Revert "Enable verity on userdebug, and add disable-verity to adb"
Build is broken.

system/core/fs_mgr/fs_mgr_verity.c: In function 'fs_mgr_setup_verity':
system/core/fs_mgr/fs_mgr_verity.c:103:20: error: 'verity_table_signature' may be used uninitialized in this function [-Werror=maybe-uninitialized]
     if (!RSA_verify(key,
                    ^
system/core/fs_mgr/fs_mgr_verity.c:374:11: note: 'verity_table_signature' was declared here
     char *verity_table_signature;
           ^
cc1: all warnings being treated as errors
make: *** [out/target/product/minnow/obj/STATIC_LIBRARIES/libfs_mgr_intermediates/fs_mgr_verity.o] Error 1
make: *** Waiting for unfinished jobs....

This reverts commit d4cea0bc16.

Change-Id: I6862cc79ef9d944a2472b6fb2e46dae514cea8ce
2014-10-08 23:55:05 +00:00
Mark Salyzyn 89fa114e2a fs_mgr: fix build breakage
Some compilers are not as smart as other compilers

Change-Id: I9d93c73bdbd2dca37373d8a42a2ed510d0559274
2014-10-08 16:43:47 -07:00
Paul Lawrence d4cea0bc16 Enable verity on userdebug, and add disable-verity to adb
Bug: 17691572

Change-Id: I58f588f318e7952d06a41325337d946d7c007e31
2014-10-08 15:24:37 -07:00
Paul Lawrence fdf93c0631 am cf234dc7: Preserve errno from fsmgr_do_mount
* commit 'cf234dc7e081ac4063c3c5ddcdd4da40c82d51cb':
  Preserve errno from fsmgr_do_mount
2014-09-12 19:58:47 +00:00
Paul Lawrence cf234dc7e0 Preserve errno from fsmgr_do_mount
Bug: 17358530
Change-Id: I4cd7403c0b7c4f878d6afa5199f998e6f614adb9
2014-09-11 17:31:49 -07:00
Chih-Hung Hsieh aed0769eef am 04929638: am da3510b2: Merge "Avoid partial initialization warning."
* commit '049296382d3604868378c957e999ae63cf3a1f5f':
  Avoid partial initialization warning.
2014-09-10 17:21:11 +00:00
Chih-Hung Hsieh e32b8952a6 Avoid partial initialization warning.
Clang compiler is picky about partial initialization and
here we only need to initialize the 'len' field.

BUG: 17410010
Change-Id: I718582cef96d5f4076b5ff1c7b8162327e7809b6
2014-09-08 14:41:28 +00:00
JP Abgrall cee206880e [HACK]fs_mgr+init: Format via recovery if encryptable /data is wiped
If the encryptable partition is wiped (4KB worth of 0 or 0xff),
then reboot into recovery to format /data+/cache

This is while waiting for the Mac OS support to format f2fs.
The flashstation running on Mac OS will currently just erase userdata
and not format it with f2fs.

Bug: 15720406
Bug: 15747366
Change-Id: Ib7cca3e1701483a09573457a835750f34da71ee0
2014-07-02 14:28:50 -07:00