Commit graph

3567 commits

Author SHA1 Message Date
Tianjie Xu
51c6b7079e Merge "Print SHA-1 in hex for corrupted blocks" am: 59383b383c
am: 821592aff4

Change-Id: I7555a81c640bee3c8bb165fe712d5d55cb94d6fe
2017-03-13 20:29:47 +00:00
Tianjie Xu
821592aff4 Merge "Print SHA-1 in hex for corrupted blocks"
am: 59383b383c

Change-Id: Ib1e6c3c853a52e619f053996c45913cfc9a70703
2017-03-13 20:25:18 +00:00
Tianjie Xu
59383b383c Merge "Print SHA-1 in hex for corrupted blocks" 2017-03-13 20:18:12 +00:00
Tianjie Xu
bb0cd75a0e Print SHA-1 in hex for corrupted blocks
It will be helpful for debug if we know which blocks are corrupted after
a verification failure. This CL prints the SHA-1 for each source block
in a transfer command if these blocks don't have an expected hash. And
along with the correct SHA-1, we will catch the corrupted blocks.

Bug: 21124445
Test: Printed the mismatched SHA-1 for bullhead during an update.
Change-Id: I683d4bdaf9a335035045b3f532b3a265b2fcbbfc
2017-03-13 11:32:56 -07:00
Tao Bao
390ae4c660 Merge "update_verifier: Set the success flag if dm-verity is not enabled." am: a7211b3c16
am: 6c6861d7c5

Change-Id: I93a04b0b60ee1b18554c4d2bf993084d16f6a039
2017-03-11 01:42:08 +00:00
Tao Bao
6c6861d7c5 Merge "update_verifier: Set the success flag if dm-verity is not enabled."
am: a7211b3c16

Change-Id: I4e516463fe7a7a7f97e7bb6c7c7c42f5f320f7ef
2017-03-11 01:38:39 +00:00
Tao Bao
a7211b3c16 Merge "update_verifier: Set the success flag if dm-verity is not enabled." 2017-03-11 01:32:44 +00:00
Tao Bao
db57f0d7f4 update_verifier: Set the success flag if dm-verity is not enabled.
For devices that are not using dm-verity, update_verifier can't verify
anything, but to mark the successfully booted flag unconditionally.

Test: Successfully-booted flag is set on devices w/o dm-verity.
Test: Successfully-booted flag is set after verification on devices w/
      dm-verity.
Change-Id: I79ab2caec2d4284aad0d66dd161adabebde175b6
2017-03-10 15:16:27 -08:00
Bowgo Tsai
1a76f4a3bc Merge "recovery: replacing fs_mgr_read_fstab() with new fs_mgr APIs" am: 7a0dfec771
am: 1a23257214

Change-Id: Ie60bf8b6b9e55c91770df218e02383dc4adb20cd
2017-03-10 16:13:07 +00:00
Bowgo Tsai
1a23257214 Merge "recovery: replacing fs_mgr_read_fstab() with new fs_mgr APIs"
am: 7a0dfec771

Change-Id: I99394806f787e6a6acc55d240720fd22f57ac523
2017-03-10 16:09:44 +00:00
Treehugger Robot
7a0dfec771 Merge "recovery: replacing fs_mgr_read_fstab() with new fs_mgr APIs" 2017-03-10 16:06:01 +00:00
Bowgo Tsai
d13b6cf29c recovery: replacing fs_mgr_read_fstab() with new fs_mgr APIs
The fstab settings of early-mounted partitions (e.g., /vendor) will be in
kernel device tree. Switch to the new API to get the whole settings with
those in device tree:

    fs_mgr_read_fstab_with_dt("/etc/recovery.fstab")

The original default /fstab.{ro.hardware} might be moved to
/vendor/etc/. or /odm/etc/. Use another new API to get the default fstab
instead of using the hard-coded /fstab.{ro.hardware}. This API also
includes the settings from device tree:

    fs_mgr_read_fstab_default()

Bug: 35811655
Test: boot sailfish recovery
Change-Id: Iaa56ac7f7b4c4dfc7180c65f03e9a37b94f1de09
2017-03-10 17:27:31 +08:00
Tao Bao
0970c47d74 Merge "recovery: Fix the FIXME in get_menu_selection()." am: f0e8f0727e
am: 316610763b

Change-Id: Ie0698991909eb5276be4be9a7e2a65896ff0055a
2017-03-08 19:26:39 +00:00
Tao Bao
316610763b Merge "recovery: Fix the FIXME in get_menu_selection()."
am: f0e8f0727e

Change-Id: Ia944d71ea0ef89d3ed73abf53e1efc740302a630
2017-03-08 19:24:41 +00:00
Tao Bao
f0e8f0727e Merge "recovery: Fix the FIXME in get_menu_selection()." 2017-03-08 19:16:19 +00:00
Tao Bao
25070fcf47 Merge "recovery: Move a few int to bool." am: cbb2bcf541
am: b97f06a5dd

Change-Id: I406a6cfffe6bef144d31fb605cd572fd5df6d72b
2017-03-08 01:14:29 +00:00
Tao Bao
b97f06a5dd Merge "recovery: Move a few int to bool."
am: cbb2bcf541

Change-Id: I73b44ccf00d361ca3dfa47832ef8a4cb253c83ff
2017-03-08 01:11:59 +00:00
Tao Bao
cbb2bcf541 Merge "recovery: Move a few int to bool." 2017-03-08 01:07:13 +00:00
Tao Bao
50dd532934 recovery: Fix the FIXME in get_menu_selection().
It used to return a REBOOT action on timeout, until the CL in commit
daefc1d442 that redefined the return value
of get_menu_selection() (changing from action to a menu index).

Prior to this CL, it was returning 0 (i.e. the value of Device::REBOOT)
to trigger the reboot. This CL specifies a return value of -1 to
indicate the timeout.

Test: Boot into a user build recovery; it reboots automatically on
      timeout (120 sec).
Change-Id: I4aedb7a4628bf258017078fe73eb8b48a21d0ea8
2017-03-07 15:35:17 -08:00
Tao Bao
fc5499f22b recovery: Move a few int to bool.
Most of the changes are trivial.

Also update a dead reference to device_handle_key() in device.h comment,
and add some comments to get_menu_selection() function.

Test: `mmma bootable/recovery`
Change-Id: I59ef9213ec88ab35c0e7b8a7813ccf9c56dbd5c5
2017-03-07 15:35:12 -08:00
Tao Bao
fe380a30a6 Merge "recovery: Add the missing #include." am: b7f56f9b91
am: d988b56999

Change-Id: I3d0b551d86c9dbaf2976f9de7e7e712aadf84a1a
2017-03-07 21:47:46 +00:00
Tao Bao
d988b56999 Merge "recovery: Add the missing #include."
am: b7f56f9b91

Change-Id: I2d1801e9bbbea854ef3a81b02514a79adf7a3003
2017-03-07 21:45:47 +00:00
Tao Bao
b7f56f9b91 Merge "recovery: Add the missing #include." 2017-03-07 21:37:54 +00:00
Tao Bao
ed4a537bf0 recovery: Add the missing #include.
Although I checked there's no reference to 'stage' in device-specific
recovery codes (for commit a8d72bc3b4),
it's insufficient to capture the missing #include issue.

Test: lunch aosp_dragon-userdebug; mmma bootable/recovery
Change-Id: I4c5dbe9acf38918491c3aa776ce358be03f9ecca
2017-03-07 13:33:27 -08:00
Tao Bao
25f8062e35 Merge "recovery: Drop the "--stages" / '-g' argument." am: 9bd1dced90
am: ecf5467a82

Change-Id: I05e330ba778ab29118cd5e1082a77eb5bf100e26
2017-03-07 20:37:42 +00:00
Tao Bao
ecf5467a82 Merge "recovery: Drop the "--stages" / '-g' argument."
am: 9bd1dced90

Change-Id: I2110aaac69dfe017281924426486dc821da10b49
2017-03-07 20:35:11 +00:00
Tao Bao
9bd1dced90 Merge "recovery: Drop the "--stages" / '-g' argument." 2017-03-07 20:28:06 +00:00
Tao Bao
f8fddd0341 Merge "recovery: Add SetStage() into 'Run graphics test'." am: 1a575f8d5f
am: e303128144

Change-Id: I216c7c75b8c87fd3882bef1d5f5cc40a63d55196
2017-03-07 20:09:09 +00:00
Tao Bao
e303128144 Merge "recovery: Add SetStage() into 'Run graphics test'."
am: 1a575f8d5f

Change-Id: Ic9195fcbce64b811ab71fc6873147db8f2308f4a
2017-03-07 20:06:40 +00:00
Tao Bao
1a575f8d5f Merge "recovery: Add SetStage() into 'Run graphics test'." 2017-03-07 20:02:15 +00:00
Tao Bao
1f1a738968 Merge "recovery: Minor clean up to choose_recovery_file()." am: 73d21d1c1c
am: 4a2bde2d26

Change-Id: Ib0d23cb6913b6133009efc14d070232f9c9e2bed
2017-03-07 19:51:39 +00:00
Tao Bao
4a2bde2d26 Merge "recovery: Minor clean up to choose_recovery_file()."
am: 73d21d1c1c

Change-Id: I06d44be6abee33c6760bd3e9bf8a5d0945c6e442
2017-03-07 19:49:40 +00:00
Tao Bao
73d21d1c1c Merge "recovery: Minor clean up to choose_recovery_file()." 2017-03-07 19:45:40 +00:00
Tao Bao
08fc6beef8 recovery: Minor clean up to choose_recovery_file().
Test: 'View recovery logs' on bullhead and sailfish.
Change-Id: I53272b121e3e55e6fe4c77b71e3c2e819e72cb64
2017-03-07 00:57:08 -08:00
Tao Bao
a8d72bc3b4 recovery: Drop the "--stages" / '-g' argument.
This was introduced in commit c87bab1018.
But the stage info should be passed through BCB only (there's a
dedicated field in struct bootloader_message).

This CL removes it from recovery arguments, and also moves 'stage'
variable to std::string.

Test: 'stage' variable is not used by any device-specific recovery code.
Test: Code search shows no hit of '--stages' use.
Change-Id: Iccbde578a13255f2b55dd4a928e9ecf487f16b97
2017-03-07 00:12:06 -08:00
Tao Bao
db7e898080 recovery: Add SetStage() into 'Run graphics test'.
This allows a quicker test for stage UI.

Bug: 27804510
Test: 'Run graphices test' with the new recovery image.
Change-Id: I47689ae8e4cac6d7e5d1f6a10b9e393d50d713f3
2017-03-06 23:53:16 -08:00
Tianjie Xu
36ee8dd262 Merge "Refractor the code for imgdiff" am: a2e7a07031
am: 68571e27d8

Change-Id: Ia09afb0b5c510171196e9b072506d973019dc60d
2017-03-07 03:12:42 +00:00
Tianjie Xu
68571e27d8 Merge "Refractor the code for imgdiff"
am: a2e7a07031

Change-Id: Ic183461ff0f29d73b2baee2f28fa7a580f01d5c7
2017-03-07 03:10:43 +00:00
Treehugger Robot
a2e7a07031 Merge "Refractor the code for imgdiff" 2017-03-07 03:06:09 +00:00
Tianjie Xu
1ea84d6da9 Refractor the code for imgdiff
Put ImageChunk and some helper functions into a class. Also switch to
using std::vector instead of malloc.

Bug: 18606652
Test: imgdiff_test passed on host. Also generate a complete incremental OTA package.
The file content is the same and time consumption is similar.

Change-Id: Id603ada4e130ef521218400761a119001a86ca79
2017-03-06 15:41:02 -08:00
Tianjie Xu
b2dfc0182a Merge "Fix an error on bootloadermessager test teardown" am: b694ba8aab
am: 536989892c

Change-Id: I457f30c36fde0dd407a9684fbc7c2d68ac2b94c0
2017-03-03 21:53:10 +00:00
Tianjie Xu
536989892c Merge "Fix an error on bootloadermessager test teardown"
am: b694ba8aab

Change-Id: I9e32f0468e4d5fb22190d9c64b2804666d8202fb
2017-03-03 21:50:09 +00:00
Tianjie Xu
b694ba8aab Merge "Fix an error on bootloadermessager test teardown" 2017-03-03 21:43:14 +00:00
Tianjie Xu
cace743c4d Fix an error on bootloadermessager test teardown
The test should not clear bcb during teardown on devices without
/misc.

Bug: 35712836
Test: The test tears down without errors after /misc removed from the fstab.
Change-Id: I42df89feb18fac5a435cd17eef97a6bad0f44545
2017-03-03 11:59:28 -08:00
Wei Wang
685391c5e9 Merge "Recovery Test: add SideloadTest to test FUSE support on target" am: 53feebea4f
am: 3d605c54e3

Change-Id: If8fb74e5d040cf73b9e08abff1cc8fed574e0d64
2017-03-03 01:17:57 +00:00
Wei Wang
3d605c54e3 Merge "Recovery Test: add SideloadTest to test FUSE support on target"
am: 53feebea4f

Change-Id: Idc6cf3db83322316f31c99b0e0490f8b0939d8b1
2017-03-03 01:14:57 +00:00
Treehugger Robot
53feebea4f Merge "Recovery Test: add SideloadTest to test FUSE support on target" 2017-03-03 01:10:55 +00:00
Wei Wang
b72a15a2ab Recovery Test: add SideloadTest to test FUSE support on target
FUSE FS is required in recovery sideload functionalites.
This CL is to add a native test to flag when FUSE is not
supported in the device kernel.

Bug: 35768196
Test: mma, run recovery_component_test on marlin and pass all
Change-Id: I43b6dbee658010df56ba4d4b0e91baa7fd1c4480
2017-03-02 15:38:22 -08:00
Tianjie Xu
6b0959a6bb Merge "Skip BootloaderMessageTest, UncryptTest for devices without /misc" am: 0f26468eda
am: 5cce91a95a

Change-Id: Iab56aa614ff6d910b65bf50327177837dd3fdf1b
2017-03-01 03:29:22 +00:00
Tianjie Xu
5cce91a95a Merge "Skip BootloaderMessageTest, UncryptTest for devices without /misc"
am: 0f26468eda

Change-Id: Iab64d6894c3d228ce3e4bb9b57db30eecbcb09c5
2017-03-01 03:27:22 +00:00