Commit graph

4757 commits

Author SHA1 Message Date
Tianjie Xu
6957555e29 Retry the update if ApplyBSDiffPatch | ApplyImagePatch fails
We have seen one case when bspatch failed likely due to patch
corruption. Since the package has passed verification before, we want
to reboot and retry the patch command again since there's no
alternative for users.

We won't delete the stash before reboot, and the src has passed SHA1
check. If there's an error on the patch, it will fail the package
verification during retry.

Bug: 37855643
Test: angler reboots and retries the update when bspatch fails.
Change-Id: I2ebac9621bd1f0649bb301b9a28a0dd079ed4e1d
2017-05-23 17:36:56 -07:00
Tianjie Xu
53c38b1538 kill package_extract_dir
It's only used by file-based OTA which has been deprecated for O.

Test: mma
Change-Id: I439c93155ca94554d827142c99aa6c0845cc7561
2017-05-23 17:09:45 -07:00
Tianjie Xu
0abe9860d8 Merge "Print SHA1 of the patch if bsdiff fails with data error" am: 1f9808bd48 am: 8f68accc9d
am: 1562f41348

Change-Id: I7b605673eb3cee6a615459ca9fe2fc00c532ed9d
2017-05-18 22:20:55 +00:00
Tianjie Xu
1562f41348 Merge "Print SHA1 of the patch if bsdiff fails with data error" am: 1f9808bd48
am: 8f68accc9d

Change-Id: Ic81b2812030e8267a4d0d81d4909f84d284d1743
2017-05-18 22:16:24 +00:00
Tianjie Xu
8f68accc9d Merge "Print SHA1 of the patch if bsdiff fails with data error"
am: 1f9808bd48

Change-Id: I4900198d7c45c864e1a93bbd386b4ec36ed4cdec
2017-05-18 22:11:54 +00:00
Tianjie Xu
1f9808bd48 Merge "Print SHA1 of the patch if bsdiff fails with data error" 2017-05-18 22:02:03 +00:00
Tom Cherry
eefefc6c13 Merge "libbootloader_message: convert to Android.bp" am: bec0d4cb94 am: 8226fd8926
am: 01bcf118d5

Change-Id: Ie9103aedc7c0b61d505023238e0cb0ab327f7e84
2017-05-18 20:34:48 +00:00
Tom Cherry
01bcf118d5 Merge "libbootloader_message: convert to Android.bp" am: bec0d4cb94
am: 8226fd8926

Change-Id: I6a2b8df36703936560b84ec84555c3b5bb95cb0f
2017-05-18 20:31:18 +00:00
Tom Cherry
8226fd8926 Merge "libbootloader_message: convert to Android.bp"
am: bec0d4cb94

Change-Id: I0da04f8103a48f746801fdf9381571e4a812e8c3
2017-05-18 20:26:24 +00:00
Tom Cherry
bec0d4cb94 Merge "libbootloader_message: convert to Android.bp" 2017-05-18 20:18:00 +00:00
Tianjie Xu
1c120067c2 Fix the input parameter for "set_retry_bootloader_message"
am: 539b08cfcf

Change-Id: Idd730e8e9ae3dbf27bc20b4ff2c5a3e73e28ce5d
2017-05-18 17:58:02 +00:00
Tianjie Xu
1941f61fb6 Merge "Fix the input parameter for "set_retry_bootloader_message"" am: 0e60ccdc76 am: 1d6f88675b
am: f1546892e1

Change-Id: If5d97891ffae307ada2948b771f113e82235fd73
2017-05-17 20:20:00 +00:00
Tianjie Xu
f1546892e1 Merge "Fix the input parameter for "set_retry_bootloader_message"" am: 0e60ccdc76
am: 1d6f88675b

Change-Id: I280282a1b2676e3030a0327239781f50fb7a64d8
2017-05-17 20:17:29 +00:00
Tianjie Xu
1d6f88675b Merge "Fix the input parameter for "set_retry_bootloader_message""
am: 0e60ccdc76

Change-Id: I881182909805359cb1042a25bb7d942586fbbaab
2017-05-17 20:13:31 +00:00
Tianjie Xu
0e60ccdc76 Merge "Fix the input parameter for "set_retry_bootloader_message"" 2017-05-17 20:02:12 +00:00
Tianjie Xu
539b08cfcf Fix the input parameter for "set_retry_bootloader_message"
We're not updating argc & argv during get_args(), so some boot
arguments missed when we set the boot message for retry.

Bug: 38383406
Test: boot command sets correctly during retry attempt.
Change-Id: Ie8583a22fad5e0084245e3431d4018518d508dfd
(cherry picked from commit 72449c9f99)
2017-05-17 11:52:17 -07:00
Tom Cherry
600e806384 libbootloader_message: convert to Android.bp
Test: build
Change-Id: Ia0c2e141673e37eea29306817d2f4b2c944213b0
2017-05-17 11:43:29 -07:00
Tianjie Xu
72449c9f99 Fix the input parameter for "set_retry_bootloader_message"
We're not updating argc & argv during get_args(), so some boot
arguments missed when we set the boot message for retry.

Bug: 38383406
Test: boot command sets correctly during retry attempt.
Change-Id: Ie8583a22fad5e0084245e3431d4018518d508dfd
2017-05-17 18:09:35 +00:00
Tianjie Xu
ce5fa5e538 Print SHA1 of the patch if bsdiff fails with data error
This will help us to identify the patch corruption.

Meanwhile fix a wrong size parameter passed to bspatch.
(patch->data.size() into patch->data.size() - patch_offset).

Also remove the only usage of "ApplyBSDiffPatchMem()" and inline its
Sink function for simplicity.

Bug: 37855643
Test: Prints SHA1 for corrupted patch in imgdiff_test.
Change-Id: Ibf2db8c08b0ded1409bb7c91a3547a6bf99c601d
2017-05-16 12:39:14 -07:00
Tao Bao
763b52dd45 Merge "updater: Update the mkfs.f2fs argument to match f2fs-tools 1.8.0." am: 494d97fe6b am: 843ca31c4c
am: 9539cdb3c0

Change-Id: Id6209c2f0e75a3b24bf50f64896cf8a5d1f080a5
2017-05-12 21:56:48 +00:00
Tao Bao
9539cdb3c0 Merge "updater: Update the mkfs.f2fs argument to match f2fs-tools 1.8.0." am: 494d97fe6b
am: 843ca31c4c

Change-Id: I3f7c6b2d4b4d7b56866f98e146cb3bf691a7a3f3
2017-05-12 21:51:17 +00:00
Tao Bao
843ca31c4c Merge "updater: Update the mkfs.f2fs argument to match f2fs-tools 1.8.0."
am: 494d97fe6b

Change-Id: I48bf4260c586bdbcc12e615ff5b0ce6459f88c98
2017-05-12 21:45:47 +00:00
Tao Bao
494d97fe6b Merge "updater: Update the mkfs.f2fs argument to match f2fs-tools 1.8.0." 2017-05-12 21:26:36 +00:00
Tao Bao
397a8137a0 updater: Update the mkfs.f2fs argument to match f2fs-tools 1.8.0.
Commit adeb41a8c0 has switched the
argument for recovery. This CL handles the case for updater.

Note that there's a chance the updater may run against the old
recovery (and f2fs 1.4.1 binary). Not sending a 0-sector argument to
f2fs 1.4.1 also works.

Bug: 37758867
Test: Make an OTA package that calls format f2fs, with mkfs.f2fs 1.8.0
      and 1.4.1 binaries respectively.
Change-Id: I4d4bbe8c57544d1c514b7aa37fbf22a0aab14e2c
2017-05-12 12:09:16 -07:00
Tao Bao
7890e6e689 Merge "Don't write to /sys/class/android_usb/android0/enable with configfs." am: 7cb1b79673 am: 7ca2e734fc
am: e89cbd675c

Change-Id: I569d0f186ab36176f8bd4edcfff14ec53af747bc
2017-05-12 01:55:03 +00:00
Tao Bao
e89cbd675c Merge "Don't write to /sys/class/android_usb/android0/enable with configfs." am: 7cb1b79673
am: 7ca2e734fc

Change-Id: I983747440b9c7c7e0a58406ee13155f5f2c90525
2017-05-12 01:39:02 +00:00
Tao Bao
7ca2e734fc Merge "Don't write to /sys/class/android_usb/android0/enable with configfs."
am: 7cb1b79673

Change-Id: Id8d5e0ce3c5c31df534dc82fc8a7b743cb8649fa
2017-05-12 01:35:55 +00:00
Tao Bao
7cb1b79673 Merge "Don't write to /sys/class/android_usb/android0/enable with configfs." 2017-05-12 01:18:52 +00:00
Tao Bao
0167d4c382 Don't write to /sys/class/android_usb/android0/enable with configfs.
USB configfs doesn't use /s/c/a/a/enable. Trying to set that gives
confusing message on screen when sideloading.

Bug: 37713851
Test: adb sideload on device using with configfs.
Test: adb sideload on marlin.
Change-Id: Ifa55f90c2a5fe6bf9e7cee95882de9f6de686d73
2017-05-11 14:50:20 -07:00
Tao Bao
2d7c9797c6 Merge "recovery: Skip "/" in setup_install_mounts()." am: d7446c8eed am: b0626221a1
am: 8c7c38ca7f

Change-Id: Ic7ee2fb3f542f9b1d9176c174c1ecb717be9390b
2017-05-11 04:44:46 +00:00
Tao Bao
8c7c38ca7f Merge "recovery: Skip "/" in setup_install_mounts()." am: d7446c8eed
am: b0626221a1

Change-Id: I45e1f564cbb36ea1f61351701bdc7a2ace7b8798
2017-05-11 04:39:12 +00:00
Tao Bao
b0626221a1 Merge "recovery: Skip "/" in setup_install_mounts()."
am: d7446c8eed

Change-Id: I93411025025393abe819ff109ce7e00565281d88
2017-05-11 04:37:13 +00:00
Tao Bao
d7446c8eed Merge "recovery: Skip "/" in setup_install_mounts()." 2017-05-11 04:31:22 +00:00
Tao Bao
57130c45f8 recovery: Skip "/" in setup_install_mounts().
We don't want to do anything for "/" when preparing for an install.

Bug: 36686818
Test: adb sideload on angler/marlin respectively.
Change-Id: Id854dd0a743a0e163a8f13baf2514105091ddc67
2017-05-10 12:11:21 -07:00
Steven Moreland
af47ef6529 Merge "otautil: Android.mk -> Android.bp" am: 106ca8e93f am: 46938bcf0c
am: 09690020fb

Change-Id: I675758b9ee62128346bb04c80433728c00ea2bf7
2017-05-10 03:28:22 +00:00
Steven Moreland
09690020fb Merge "otautil: Android.mk -> Android.bp" am: 106ca8e93f
am: 46938bcf0c

Change-Id: I14874081d5ecfde92523fdb2487bcee239f9c664
2017-05-10 03:23:21 +00:00
Steven Moreland
46938bcf0c Merge "otautil: Android.mk -> Android.bp"
am: 106ca8e93f

Change-Id: I59305515a5d9f9df949bf42135803311f5b355e6
2017-05-10 03:18:22 +00:00
Treehugger Robot
106ca8e93f Merge "otautil: Android.mk -> Android.bp" 2017-05-10 03:05:25 +00:00
Steven Moreland
f3ae55a167 otautil: Android.mk -> Android.bp
Test: flash and boot recovery on internal angler
Change-Id: Id8845b4b422d0078b251333eb6d30ce14771ef10
2017-05-09 16:09:41 -07:00
Tao Bao
bf8e46b45a Merge "recovery: Use libverifier instead of rebuilding the sources." am: c008485643 am: 1dc25e3e0a
am: 1f7e8f6ab6

Change-Id: Ifb27bb442d7bfe0cec59e7de8c66402a9e5fde93
2017-05-09 17:00:02 +00:00
Tao Bao
1f7e8f6ab6 Merge "recovery: Use libverifier instead of rebuilding the sources." am: c008485643
am: 1dc25e3e0a

Change-Id: Ib8930473e5ad198915a0a6cb6b2b2119ec4b54ac
2017-05-09 16:58:33 +00:00
Tao Bao
1dc25e3e0a Merge "recovery: Use libverifier instead of rebuilding the sources."
am: c008485643

Change-Id: Ie75f03351f2106fc816a133c52365444064ce608
2017-05-09 16:56:32 +00:00
Tao Bao
c008485643 Merge "recovery: Use libverifier instead of rebuilding the sources." 2017-05-09 16:49:31 +00:00
Tao Bao
460e47adfc Merge "Add a binary path param to update_binary_command()." am: 197304aada am: f648b5c9fc
am: f49c57643d

Change-Id: Iea3496ad9cbcd8389ade9effa7072198cf33a5c3
2017-05-09 00:22:30 +00:00
Tao Bao
f49c57643d Merge "Add a binary path param to update_binary_command()." am: 197304aada
am: f648b5c9fc

Change-Id: I5210a1f710ea95e36484e6f2ea85354baa95c416
2017-05-09 00:20:30 +00:00
Tao Bao
f648b5c9fc Merge "Add a binary path param to update_binary_command()."
am: 197304aada

Change-Id: I7035cbc02b8f7dcd9a7b41602105e9397ab35572
2017-05-09 00:17:59 +00:00
Tao Bao
197304aada Merge "Add a binary path param to update_binary_command()." 2017-05-09 00:13:55 +00:00
Tao Bao
00d5757186 Add a binary path param to update_binary_command().
This allows writing native tests for non-A/B update_binary_command().
Prior to this CL, it was extracting the updater to a hard-coded
location (/tmp/update_binary) that's not available under the test
environment.

Test: recovery_component_test on angler and marlin respectively.
Test: Sideload OTA packages on angler and marlin respectively.
Change-Id: I78b9cc211d90c0a16a84e94e339b65759300e2a8
2017-05-08 12:16:45 -07:00
Tao Bao
b168f5f857 recovery: Use libverifier instead of rebuilding the sources.
Test: mmma bootable/recovery
Change-Id: Ie8cec009b00c121948179518ba9cbc26a82352bf
2017-05-08 11:04:07 -07:00
Jin Qian
fce0589895 Merge "recovery: update mkfs.f2fs args to match f2fs-tools 1.8.0" am: f347c1abca am: d6f506e783
am: 5975ee6a46

Change-Id: I607d33c4309613d91a2088ddc4fc2950df7827c9
2017-05-05 19:55:36 +00:00