Commit Graph

5485 Commits

Author SHA1 Message Date
Tianjie Xu c052f787a9 Merge "Log the last command to cache" am: 6a3646fc03
am: 6d78bb5236

Change-Id: Ifd886d148fec5d5b17bb29d65a8c83f4cfbc8c32
2018-02-08 20:11:38 +00:00
Tianjie Xu 6d78bb5236 Merge "Log the last command to cache"
am: 6a3646fc03

Change-Id: I4e0e399b6140084cd681c5aba746d7b9dbe069d8
2018-02-08 20:06:35 +00:00
Tianjie Xu 6a3646fc03 Merge "Log the last command to cache" 2018-02-08 19:53:37 +00:00
Tao Bao 1e7d0922c7 Merge "Document instructions for using adb under recovery." am: 7ee7e27400
am: 41186e13b7

Change-Id: I400e8c56060cf52718603fff80423ec5f1780088
2018-02-08 19:40:31 +00:00
Tao Bao 41186e13b7 Merge "Document instructions for using adb under recovery."
am: 7ee7e27400

Change-Id: Ia63a213baf4c1886379003220580e42cdc0f19c2
2018-02-08 19:36:32 +00:00
Treehugger Robot 7ee7e27400 Merge "Document instructions for using adb under recovery." 2018-02-08 19:20:57 +00:00
Tao Bao c84a4ef053 Document instructions for using adb under recovery.
Fixes: 72740736
Test: N/A
Change-Id: Ifc96ed785fd80501bc6c276cb649c8cc1f05be0e
2018-02-07 20:55:33 -08:00
Tianjie Xu 284752e2bc Log the last command to cache
When performing an update, save the index and cmdline of the current
command into the last command file if this command writes to the stash
either explicitly of implicitly. This mitigates the overhead to update
the last command file for every command. I ran a simple test on angler
and the time to update 1000 times is ~2.3 seconds.

Upon resuming an update, read the saved index first; then
  1. In verification mode, check if all commands before the saved index
     have already produced the expected target blocks. If not, delete the
     last command file so that we will later resume the update from the
     start of the transfer list.
  2. In update mode, skip all commands before the saved index. Therefore,
     we can avoid deleting stashes with duplicate id unintentionally;
     and also speed up the update.

If an update succeeds or is unresumable, delete the last command file.
Bug: 69858743
Test: Unittest passed, apply a failed update with invalid cmd on angler
and check the last_command content, apply a failed update with invalid
source hash and last_command is deleted.
Change-Id: Ib60ba1e3c6d111d9f33097759b17dbcef97a37bf
2018-02-06 16:16:49 -08:00
Tianjie Xu 39b6c7fcfe Merge "Avoid overwrite of the error message in AbortFn" am: bded087f7d
am: 20af3722d8

Change-Id: I61b6206e807d4a10091e05e8c4b4de0c525b7d42
2018-01-30 22:02:50 +00:00
Tianjie Xu 20af3722d8 Merge "Avoid overwrite of the error message in AbortFn"
am: bded087f7d

Change-Id: I0b000ba5d8855c38e4f4b301c68c4134c0f2287d
2018-01-30 21:51:11 +00:00
Tianjie Xu bded087f7d Merge "Avoid overwrite of the error message in AbortFn" 2018-01-30 21:44:02 +00:00
Tianjie Xu 5ad802839d Avoid overwrite of the error message in AbortFn
The AbortFn() used to overwrite the error message, hiding the real
failure reported in ErrorAbort(). And we will miss the failure in
the script patterns like 'blockimageupdate() || abort()'

We will ensure there's one line break at the end of ErrorAbort's
error message; and append to the existing error message when calling
abort().

Test: Message from ErrorAbort shows up in the log
Change-Id: I3aebd06629c5129330250c7fe5e8cdead2ae85bc
2018-01-29 11:42:59 -08:00
Sen Jiang cbbf671919 Merge "Add update_channel field to bootloader_message_ab." am: 63eb1a4444
am: 7441ee7aff

Change-Id: I390bba7bd9a76e732873f6abc03a419ec8b2f2d6
2018-01-26 01:00:05 +00:00
Sen Jiang 7441ee7aff Merge "Add update_channel field to bootloader_message_ab."
am: 63eb1a4444

Change-Id: Ie12275c2694cabcf5b934f0673ecb228d6c8c3e6
2018-01-26 00:58:01 +00:00
Sen Jiang 63eb1a4444 Merge "Add update_channel field to bootloader_message_ab." 2018-01-26 00:48:09 +00:00
Sen Jiang 7191bf0492 Add update_channel field to bootloader_message_ab.
The update_channel field is used to store the Omaha update channel
if update_engine is compiled with Omaha support.

We need it to be in misc to persist through factory reset.

Bug: 72332119
Test: mma
Change-Id: Ied4fecc6e78cc69d33a36ba4d101d675100f9d82
2018-01-22 15:03:53 -08:00
Elliott Hughes 92be1378f9 Merge "StartsWith allows a std::string prefix now." am: 80ccac2fff
am: bd870377b4

Change-Id: I720e3ba91146cbbf783eb3ef4b8347f16c52ec05
2017-12-21 09:34:32 +00:00
Elliott Hughes bd870377b4 Merge "StartsWith allows a std::string prefix now."
am: 80ccac2fff

Change-Id: Ife18e431247a479cb038f21f92ad0b687a9509b8
2017-12-21 06:14:28 +00:00
Treehugger Robot 80ccac2fff Merge "StartsWith allows a std::string prefix now." 2017-12-21 02:11:08 +00:00
Elliott Hughes 1d65c95fe8 StartsWith allows a std::string prefix now.
Bug: N/A
Test: builds
Change-Id: I5183ec8133f5dc9a81a438223c6d3d2ea11ef0ec
2017-12-20 12:36:31 -08:00
Isaac Chen 50a4171030 Merge "Let update_verifier work on non-AB update devices" am: 3fe230a1e4
am: 4b7ed5a71b

Change-Id: I3d1b5749f361ab3ae422830e2c90532cfea8ec17
2017-12-14 04:36:26 +00:00
Isaac Chen 4b7ed5a71b Merge "Let update_verifier work on non-AB update devices"
am: 3fe230a1e4

Change-Id: Ie50a5e8e195f545470ffa107c61dd7d3da60c971
2017-12-14 04:30:54 +00:00
Isaac Chen 3fe230a1e4 Merge "Let update_verifier work on non-AB update devices" 2017-12-14 04:18:41 +00:00
Isaac Chen 26fd78c024 Let update_verifier work on non-AB update devices
Make update_verifier check if it runs on A/B update devices at the
beginning, and quit immediately if it doesn't, instead of re-boot.

Bug: 70541023
Test: On aosp/master:
    $ lunch aosp_x86_64-userdebug; m -j # boot to home screen
    # On goog/master:
    $ lunch aosp_walleye-userdebug; m -j # boot to home screen

Change-Id: Ib71a3a3b272cfa5dd0b479eaa067eedaec8fde7d
2017-12-14 10:20:07 +08:00
Tao Bao a002abfacf Merge "applypatch: Remove the 'st' field from FileContents." am: 9203e77e7d
am: 710712f235

Change-Id: I7c51478f551994a5f8914757890a216b663901da
2017-12-09 17:36:05 +00:00
Tao Bao 710712f235 Merge "applypatch: Remove the 'st' field from FileContents."
am: 9203e77e7d

Change-Id: I76e706188be845bb3b58e78501aa0d9cfd748e5a
2017-12-09 17:33:01 +00:00
Tao Bao 9203e77e7d Merge "applypatch: Remove the 'st' field from FileContents." 2017-12-09 17:27:39 +00:00
Jaegeuk Kim adb8f660a2 Merge "add sload.f2fs for recovery format" am: 4eaf7a157d
am: 3d4359d3ae

Change-Id: I4098c81a3c5cef921463c6b7512113961034f81b
2017-12-08 01:13:13 +00:00
Jaegeuk Kim 3d4359d3ae Merge "add sload.f2fs for recovery format"
am: 4eaf7a157d

Change-Id: I44f158c95501e37088dbd05d006614bb2799d491
2017-12-08 01:07:11 +00:00
Jaegeuk Kim 4eaf7a157d Merge "add sload.f2fs for recovery format" 2017-12-08 00:57:41 +00:00
Elliott Hughes 669f9b0cbf Merge "Add a /bin symlink for consistency." am: ed369101ba
am: 13b751ed84

Change-Id: I144d599f1ba418079675f9a8d5a0812912228819
2017-12-07 18:49:47 +00:00
Elliott Hughes 13b751ed84 Merge "Add a /bin symlink for consistency."
am: ed369101ba

Change-Id: Iac7a3234333f46aaba83b47f66ba73074be86fe6
2017-12-07 18:38:10 +00:00
Tao Bao 47e5a8d085 applypatch: Remove the 'st' field from FileContents.
It used to keep track of the stat(2) info (e.g. st_mode/st_gid/st_uid)
while patching a file in file-based OTA.

Test: Build and use the new updater to apply an update on bullhead.
Change-Id: Ibf8f0f4b14298a9489bf24a2678bb279c5d9c8f3
2017-12-07 10:01:57 -08:00
Elliott Hughes ed369101ba Merge "Add a /bin symlink for consistency." 2017-12-07 16:55:25 +00:00
Elliott Hughes 4dca6f12db Add a /bin symlink for consistency.
Bug: http://b/63142920
Test: builds
Change-Id: I1f96935daca4d79f753e172067e07f8e27ea819e
2017-12-06 08:41:50 -08:00
Jaegeuk Kim c1c7311b8a add sload.f2fs for recovery format
Change-Id: Iddfe54b2b36f2d531925cbe61c98dbfb4903c0d1
Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
2017-12-04 20:27:49 -08:00
Tianjie Xu db20e41b0c Merge "Detect interrupted update due to power off" am: d8fadfb606
am: d9caba2bbe

Change-Id: I1f15871dde9525441f292bd1f546aaad0de158e5
2017-12-01 03:00:12 +00:00
Tianjie Xu d9caba2bbe Merge "Detect interrupted update due to power off"
am: d8fadfb606

Change-Id: I2295430f7153711fb4e23d3e6f7af7c65efb7c54
2017-12-01 02:58:41 +00:00
Treehugger Robot d8fadfb606 Merge "Detect interrupted update due to power off" 2017-12-01 02:52:23 +00:00
Tianjie Xu 99b73be3a8 Detect interrupted update due to power off
An interrupted update may stash extra blocks in /cache, leading to a
failure when checking the cache size. We can save the incremented
retry_count in the BCB before installing the update; and distinguish
a fresh update from an interrupted one this way.

Bug: 68679601
Test: An interrupted update reapplies successfully.
Change-Id: Ic1403e1fd25a937c91ef34c14b92a0f6c8f1c0f4
2017-11-30 16:25:47 -08:00
Jin Qian 7a1abb9279 Merge "root: Fix an issue when volume length from fs_mgr is negative." am: 5ce9fe355c
am: 25e27f48db

Change-Id: I1a9171a1f31384915c7a3b72785265b85a697979
2017-11-20 18:54:48 +00:00
Jin Qian 25e27f48db Merge "root: Fix an issue when volume length from fs_mgr is negative."
am: 5ce9fe355c

Change-Id: I4ff7bccb0dd2fecf309f3a3d23379d2467d64aea
2017-11-20 18:52:48 +00:00
Treehugger Robot 5ce9fe355c Merge "root: Fix an issue when volume length from fs_mgr is negative." 2017-11-20 18:47:56 +00:00
Jin Qian cc10008887 root: Fix an issue when volume length from fs_mgr is negative.
fs_mgr passes negative length as offset for crypt_footer. We need
to compute the actual device size for this case in addition to
when length is zero.

Bug: 68949069
Change-Id: I803955dd9591ad7752cee0dea9b683be8f4fd4ba
2017-11-18 21:54:44 -08:00
Tianjie Xu 2a8e4095cb Merge "Add libbrotli as a dependency when building applypatch binary" am: c7069cc922
am: 086202e30d

Change-Id: I7d6725aec1f22e006b1945c0068c61352785c509
2017-11-17 16:15:43 +00:00
Tianjie Xu 086202e30d Merge "Add libbrotli as a dependency when building applypatch binary"
am: c7069cc922

Change-Id: I3379f84048c1b4c4858da537d045a1012c358b8b
2017-11-17 16:13:13 +00:00
Tianjie Xu c7069cc922 Merge "Add libbrotli as a dependency when building applypatch binary" 2017-11-17 16:09:08 +00:00
Tianjie Xu 365c98fd1d Merge "Switch imgdiff to libbase logging" am: fd9c25e636
am: 47c8c290ec

Change-Id: I8712d65b019e294104bcbc8497a05fa6cc49024a
2017-11-17 05:58:10 +00:00
Tianjie Xu 47c8c290ec Merge "Switch imgdiff to libbase logging"
am: fd9c25e636

Change-Id: Iaf36238df9567f9e0e08abec2581e55d4692068b
2017-11-17 05:56:10 +00:00
Tianjie Xu fd9c25e636 Merge "Switch imgdiff to libbase logging" 2017-11-17 05:53:58 +00:00