Commit graph

3867 commits

Author SHA1 Message Date
Tom Cherry
545317f4fb update_verifier: raise priority and ioprio and start with exec_start
Raise the priority and ioprio of update_verifier and launch with
exec_start.  This saves ~100ms of time before `class_start main` is executed.

Bug: 36511808
Bug: 36102163
Test: Boot bullhead
Test: Verify boottime decrease on sailfish
Change-Id: I944a6c0d4368ead5b99171f49142da2523ed1bdd
2017-03-28 15:55:20 -07:00
Tao Bao
c6df7d2937 Merge "tests: Add a test for --wipe_ab into UncryptTest."
am: 7b0cda5b37

Change-Id: Iadc316dd0503240b3d8bbdf30334c9da92ac238f
2017-03-28 22:22:12 +00:00
Tao Bao
7b0cda5b37 Merge "tests: Add a test for --wipe_ab into UncryptTest." 2017-03-28 22:12:35 +00:00
Tianjie Xu
05c111b90b Merge "Suppress the unused variable warning in parser.yy"
am: b9b03a282b

Change-Id: I722683e1a474180dc7bfd85d249e05aab66c8712
2017-03-28 21:28:50 +00:00
Tianjie Xu
1d7e500bfc Merge "Log temperature during OTA update"
am: bc2c51a97f

Change-Id: I7feda067a7e343868a7a1fef3a561afa9d14e77c
2017-03-28 21:28:37 +00:00
Treehugger Robot
b9b03a282b Merge "Suppress the unused variable warning in parser.yy" 2017-03-28 21:21:06 +00:00
Tianjie Xu
bc2c51a97f Merge "Log temperature during OTA update" 2017-03-28 21:16:45 +00:00
Tianjie Xu
dc235b5ab9 Merge "Add the missing sr-Latn into png files and rename the png locale header"
am: 713d915636

Change-Id: I23a8ac215d4a549cda347b86a91df1bb97e089c5
2017-03-28 19:52:47 +00:00
Tianjie Xu
c3c3496ab2 Suppress the unused variable warning in parser.yy
The warning says: bootable/recovery/edify/parser.yy:123.3-9: warning:
unused value: $1

Bug: 36678950
Test: mma
Change-Id: Ic734c416a5a8f62fb5e516669102c1d2b4ad5083
2017-03-28 12:44:10 -07:00
Tianjie Xu
713d915636 Merge "Add the missing sr-Latn into png files and rename the png locale header" 2017-03-28 19:42:54 +00:00
Tao Bao
862b7e8523 Merge changes from topic 'sinkfn'
am: 34df98ee6d

Change-Id: I05710606fac5b4b8746416799635691f4083aef4
2017-03-28 19:11:11 +00:00
Tao Bao
d4d9ef3941 applypatch: Change the ssize_t length parameters to size_t.
am: f7eb760fe7

Change-Id: I4661186d7bd696e4fa5318217b383cbe0a2902c3
2017-03-28 19:11:06 +00:00
Treehugger Robot
34df98ee6d Merge changes from topic 'sinkfn'
* changes:
  applypatch: Let Apply{BSDiff,Image}Patch accept std::function.
  applypatch: Change the ssize_t length parameters to size_t.
2017-03-28 19:01:32 +00:00
Tianjie Xu
3ee2b9db5a Log temperature during OTA update
Log the maximum temperature as well as the start/end temperature of an
update to last_install. Check the temperature at the end of each
block_image_update(verify). To get the maximum temp, we iterate through
/sys/class/thermal/thermal_zone*/temp and find the maximum value
present.

Bug: 32518487
Test: temperature logs in last_install
Change-Id: Iaf22a9fbc5b18611bbc5320ffea995417872e514
2017-03-28 11:28:47 -07:00
Tao Bao
bdc8c1a264 tests: Add a test for --wipe_ab into UncryptTest.
Also factor out the common parts in {setup,clear}_bcb into a separate
function.

Test: recovery_component_test
Change-Id: I7b95cced925c8135e020dcb791ca2425d4f28449
2017-03-28 10:55:02 -07:00
Tao Bao
c0e1c46a70 applypatch: Let Apply{BSDiff,Image}Patch accept std::function.
Test: mmma bootable/recovery system/update_engine
Test: recovery_component_test
Change-Id: I93c2caa87bf94a53509bb37f98f2c02bcadb6f5c
2017-03-28 10:14:53 -07:00
Tao Bao
f7eb760fe7 applypatch: Change the ssize_t length parameters to size_t.
Mostly for applypatch family APIs like ApplyBSDiffPatch() and
ApplyImagePatch(). Changing to size_t doesn't indicate they would
necessarily work with very large size_t (e.g. > ssize_t), just
similar to write(2). But otherwise accepting negative length doesn't
make much sense.

Also change the return type of SinkFn from ssize_t to size_t. Callers
tell a successful sink by comparing the number of written bytes against
the desired value. Negative return values like -1 are not needed. This
also makes it consistent with bsdiff::bspatch interface.

Test: recovery_component_test
Test: Apply an incremental with the new updater.
Change-Id: I7ff1615203a5c9854134f75d019e266f4ea6e714
2017-03-28 10:13:38 -07:00
Tao Bao
51159a069d Merge "updater: Clean up LoadSrcTgtVersion2()."
am: f037b7b535

Change-Id: I6e2488d12fadebb5b17949b5fbecbaee335700af
2017-03-28 05:46:42 +00:00
Tao Bao
f037b7b535 Merge "updater: Clean up LoadSrcTgtVersion2()." 2017-03-28 05:40:20 +00:00
Tao Bao
d2aecd465b updater: Clean up LoadSrcTgtVersion2().
Rename to LoadSourceBlocks() by moving the target blocks parsing part
into the caller. This allows detecting whether the target blocks have
already had the expected data before loading the source blocks. It
doesn't affect anything when applying an update package for the first
time, but it skips loading the unneeded source blocks when resuming an
update. It additionally avoids unnecessarily dumping the "corrupt"
source/stash blocks when resuming an update.

Bug: 33694730
Test: Apply an incremental update with the new updater.
Test: Resume an incremental update with the new updater.
Change-Id: I794fd0d1045be7b3b7f8619285dc0dade01398d0
2017-03-27 16:21:55 -07:00
Tao Bao
217d9f9859 tests: Construct two bad packages at runtime for VerifierTest.
For the BadPackage tests from VerifierTest: one alters the footer, and
the other alters the metadata. Move the two tests to be based on
otasigned_v3.zip (they're based on otasigned_v1.zip previously). Also
construct the testdata files dynamically (to save the space and for
better readability).

Test: recovery_component_test
Change-Id: I7604d563f8b4fa0c55fec8730c063384158e3abc
2017-03-27 16:10:11 -07:00
Tao Bao
b0e768e269 Merge "Revert "libbootloader_message: use different fstab paths for normal/recovery boot""
am: 27c3e47853

Change-Id: Ie55f8cbbcec911192d9fd3b92f32731721dba36f
2017-03-27 19:29:34 +00:00
Tao Bao
27c3e47853 Merge "Revert "libbootloader_message: use different fstab paths for normal/recovery boot"" 2017-03-27 19:23:12 +00:00
Bowgo Tsai
4508f23884 Revert "libbootloader_message: use different fstab paths for normal/recovery boot"
This reverts commit 37bd44174b.

The logic here is better to be moved into fs_mgr, not fs_mgr clients.

Bug: 35811655
Bug: 36502022

Change-Id: Iae79bd8f7131516ad223f3323f1bc1d805206d51
Test: normal boot sailfish, go to Settings > System & tap 
      on "Factory Data reset"
Test: recovery boot sailfish
2017-03-27 17:47:21 +00:00
Tianjie Xu
a97b0712d8 Merge "Skip logging the warning for uncrypt_status for devices w/o /cache"
am: df0619edea  -s ours

Change-Id: I997f1ad6197e8a92530f50ed7fc002b972681407
2017-03-27 05:37:19 +00:00
Tianjie Xu
340e6762f8 Skip logging the warning for uncrypt_status for devices w/o /cache
This warning may cause confusion for users.

Bug: 36590598
Test: Warning line no longer shows for sailfish.
Change-Id: I277c87a50a72fdb499be790ee25b97f815d980be
(cherry picked from commit bcb5b18630f518835a0768535b43ccfe91683fc9)
2017-03-27 05:36:48 +00:00
Tianjie Xu
df0619edea Merge "Skip logging the warning for uncrypt_status for devices w/o /cache" 2017-03-27 05:15:40 +00:00
Tao Bao
351f69e64a Merge "applypatch: Drop the support for patching non-EMMC targets."
am: b4c4f8c494

Change-Id: If2eadfe81c5a7942c2709a548dcd3957323e3436
2017-03-26 18:03:10 +00:00
Tao Bao
b4c4f8c494 Merge "applypatch: Drop the support for patching non-EMMC targets." 2017-03-26 18:00:20 +00:00
Tianjie Xu
a286778762 Skip logging the warning for uncrypt_status for devices w/o /cache
This warning may cause confusion for users.

Bug: 36590598
Test: Warning line no longer shows for sailfish.
Change-Id: I277c87a50a72fdb499be790ee25b97f815d980be
Merged-In: I277c87a50a72fdb499be790ee25b97f815d980be
2017-03-26 05:24:57 +00:00
Tianjie Xu
e102ea13ee Merge "Don't fail ReadArgs if length to parse is 0"
am: f4c949a41e

Change-Id: Ic6daca7eb24b121058c7e9075d5719fcdada37ae
2017-03-25 23:57:08 +00:00
Tianjie Xu
f4c949a41e Merge "Don't fail ReadArgs if length to parse is 0" 2017-03-25 23:53:31 +00:00
Tao Bao
4ae56a3586 Merge "updater: Remove some redundant arguments."
am: 5212a00588

Change-Id: I74ae1b87579bec0f1008b38e5ca913ef7c355238
2017-03-25 23:16:35 +00:00
Tao Bao
5212a00588 Merge "updater: Remove some redundant arguments." 2017-03-25 23:11:37 +00:00
Bowgo Tsai
85882b0779 Merge "libbootloader_message: use different fstab paths for normal/recovery boot"
am: 5f98326c1e

Change-Id: Ie5061ac357ee86a2192e8e1c1ab9e49a00fc1df0
2017-03-25 17:11:15 +00:00
Treehugger Robot
5f98326c1e Merge "libbootloader_message: use different fstab paths for normal/recovery boot" 2017-03-25 17:06:33 +00:00
Bowgo Tsai
37bd44174b libbootloader_message: use different fstab paths for normal/recovery boot
libbootloader_message is used by both normal boot and recovery boot.
It needs to use different fstab paths, respectively. Otherwise, factory
reset will fail when we move /fstab.{ro.hardware} to /vendor/etc/.

  Recovery boot: fs_mgr_read_fstab_with_dt("/etc/recovery.fstab")
  Normal boot: fs_mgr_read_fstab_default()

Bug: 35811655
Bug: 36502022

Test: normal boot sailfish, go to Settings > System & tap on
      "Factory Data reset"
Test: recovery boot sailfish

Change-Id: I253f5bdfb9be8a01f80856eb1194f85cdf992bbd
2017-03-25 19:25:43 +08:00
Tianjie Xu
2078b22e41 Add the missing sr-Latn into png files and rename the png locale header
Switch the locale header in the png files from Locale.toString() to
Locale.toLanguageTag(). For example, en_US --> en-us and sr__#Latn
--> sr-Latn. Also clean up recovery a bit to expect the new locale
format.

Bug: 35215015
Test: sr-Latn shows correctly under graphic tests && recovery tests pass
Change-Id: Ic62bab7756cdc6e5f98f26076f7c2dd046f811db
2017-03-24 16:54:52 -07:00
Tao Bao
7b82ad12f6 Merge "updater: Drop the support for BBOTA v1 and v2."
am: 5479506c9c

Change-Id: If0f6acf7120c6bc4b4644a12aa83939b52ad48c5
2017-03-24 23:12:39 +00:00
Tao Bao
5479506c9c Merge "updater: Drop the support for BBOTA v1 and v2." 2017-03-24 23:06:56 +00:00
Tao Bao
92d8772c49 Merge "Const modifiers"
am: 4efd353d8f

Change-Id: I8ae993749d5f2c58cc5ef23f90845cf5a0bf756d
2017-03-24 20:32:39 +00:00
Tao Bao
6a831e02b6 Merge "Removed C-style casts"
am: 110155a604

Change-Id: I363e172a8f7f9e67dfc9474e0e10463690cdd833
2017-03-24 20:32:29 +00:00
Tao Bao
4efd353d8f Merge "Const modifiers" 2017-03-24 20:28:09 +00:00
Tao Bao
110155a604 Merge "Removed C-style casts" 2017-03-24 20:28:00 +00:00
Tao Bao
5da7e41ec8 Merge "Fix the wrong parameter when calling read_metadata_from_package()."
am: 6014db5da6

Change-Id: I55b44f34491f8103487bcd7b871d3615666b45d9
2017-03-24 20:16:26 +00:00
Tao Bao
6014db5da6 Merge "Fix the wrong parameter when calling read_metadata_from_package()." 2017-03-24 20:11:53 +00:00
Tao Bao
1b2a98bda3 Fix the wrong parameter when calling read_metadata_from_package().
The call to read_metadata_from_package() is broken due to being passed
an invalid pointer (ZipArchiveHandle vs ZipArchiveHandle*). It's
introduced when switching from minzip to libziparchive. Compiler didn't
complain, because ZipArchiveHandle is typedef'd as void*, which legitly
accepts a void**.

Also clean up secure_wipe_partition() logs a bit by using android-base
logging.

Bug: 36427762
Test: Send a wipe package.
Change-Id: I791a0f09a066f1c257dae890e7ae13d02a02e78b
2017-03-24 11:02:05 -07:00
Tao Bao
bcf464988e updater: Remove some redundant arguments.
Clean up a few functions that take CommandParameters& as the first
parameter. We don't need to take duplicate arguments if they always come
from CommandParameters. This redundancy came from the point we replaced
strtok()s (commit baad2d454d).

Test: Apply an incremental update with the new updater.
Change-Id: I2912b8ce6bc7580bf7f566e125f12270e679e155
2017-03-24 00:34:36 -07:00
Tao Bao
3356777cae updater: Drop the support for BBOTA v1 and v2.
The script support for BBOTA v1 and v2 has been dropped in commit
8fad03e7712082eb880ffaaffb69eb13252ce220 (platform/build).

Bug: 33694730
Test: Apply an incremental with the new updater.
Test: recovery_component_test
Change-Id: I038b1bf8d10f030cab8ec0aa6ee565c5a9545dfd
2017-03-23 23:58:02 -07:00
Paul Crowley
eddc9a15f9 Merge "Reword the wipe warning message to be more comprehensible."
am: f09efaff89

Change-Id: I4078499b8019361979a8d47cf9205e1ee865303c
2017-03-23 23:39:43 +00:00