summaryrefslogtreecommitdiffstats
path: root/otafault (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-04-22otafault/tests: Replace pathmap with commands_recovery_local_pathMichael Bestas1-8/+2
* This is used everywhere else now in TWRP Change-Id: I4dd0bab1980ea34fabfd2949474bd62ed07d1d3c
2018-02-18Disable building libapplypatch on macTianjie Xu1-0/+6
The sdk_mac on build server fails with the error: bootable/recovery/applypatch/freecache.cpp:23:10: fatal error: 'sys/statfs.h' file not found So we will disable libapplypatch on mac. Test: the library still builds on linux; and check the other host targets in the same cl. Change-Id: Ie4a30708726e51c810f7ad7f1085d38154076cca
2018-02-13Skip the cache size check on hostTianjie Xu1-0/+2
When running the update simulation, we choose to skip the cache size check for now due to the lack of "/cache" on host. And in later cls we can implement a cache size estimator to make the check more constrained. Also build the host version of support libraries. Test: unit test pass Change-Id: I3ed93c857fd02f7b62f5baba9130f75c3236e717
2017-10-11otafault: Add the missing #include <string>.Tao Bao1-0/+1
Test: mmma bootable/recovery Change-Id: If7610ba55a2d2dd4257ff38c44d252c9c6bbfe40
2017-09-29otafault: Move to soong.Tao Bao2-53/+60
Test: mmma bootable/recovery Change-Id: I5f2520ea457ba66743aa3aa1d5b3b488a93084a3
2017-09-29otafault: Move headers under otafault/.Tao Bao6-10/+11
Test: mmma bootable/recovery Change-Id: I3ceb72f703c7c2857d656c137d71baa1fccd8238
2017-09-29otafault: Remove the use of LOCAL_WHOLE_STATIC_LIBRARIES.Tao Bao1-1/+1
Commit d80a99883d5ae2b117c54f076fe1df7eae86d2f8 has explanation of potential issues. Test: mmma bootable/recovery Change-Id: I25ca9920952b7bbdd8a661d9dc90962431410bc4
2017-09-29otafault: Clean up header inclusion.Tao Bao6-20/+18
Remove unneeded #includes. Also remove unneeded dependency on libz and libselinux. Test: mmma bootable/recovery Change-Id: Ic8f7f46f4b89762dee384921504489de75320ac0
2017-08-29Turn on -Wall for recovery modulesTianjie Xu2-2/+5
Turn on -Wall for all modules. Also remove the obsolete file_cmp() in apply_patch test and now() in wear_ui. The only exception is lib_edify due to the unused functions in the intermediate cpp files generated from the lex files. It will be handled in a seperate CL. Bug: 64939312 Test: mma, unit tests pass Change-Id: Ic53f76b60b6401ab20db3d98130d674c08e3702f
2017-07-25Remove LOCAL_CLANGLennart Wieboldt1-1/+0
clang is the default compiler since Android nougat Change-Id: I930bba431dc49970cb4491ed5fcf44b5e00e97df Signed-off-by: Lennart Wieboldt <lennart.1997@gmx.de>
2017-06-24Complete support for project pathmapMichael Bestas1-2/+8
* Use project pathmap when available for LOCAL_C_INCLUDES Change-Id: Iddc7cc8509d966307c4a490c9d6c15d761dbb3b4
2017-04-11Protect filename_cache with lock in ota faultTianjie Xu2-3/+22
Bug: 33173924 Test: Apply a successfully update on bullhead Change-Id: I28cc356e216a3e957b5533c338ee6bc3c0920222
2017-03-23Const modifiersMikhail Lappo2-2/+2
This functions do not change class variables Would be good to mark them as const, so class variables are not changed by coincidence Change-Id: Iea34f6d26dbd1bde813035160e07ff2a681989e6
2017-01-09Do not inject I/O fault on a retryTianjie Xu2-3/+5
We could inject I/O faults during an OTA update for test purpose. But we should skip the injection if the update is an retry. Otherwise the update test will simply keeps failing. Bug: 34159970 Test: Apply the same package on angler and the update succeeds on the 2nd try. Change-Id: Id274e5475e3bc8d25d50a8cf61a77d2e32c569d6
2016-11-28Remove ota_close(int) and ota_fclose(FILE*).Tao Bao2-14/+22
We should always use unique_fd or unique_file to hold the FD or FILE* pointer when opening via ota_(f)open functions. This CL avoids accidentally closing raw FDs or FILE* pointers that are managed by unique_fd/unique_file. Test: recovery_component_test passes. Change-Id: If58eb8b5c5da507563f85efd5d56276472a1c957
2016-11-23Add ota_close(unique_fd&) and ota_fclose(std::unique_ptr<FILE>&).Tao Bao2-2/+18
We were using the below sequence prior to the CL in [1]. unique_fd fd(ota_open(...)); ota_close(fd); fd.reset(ota_open(...)); fd.reset() may unintentionally close the newly opened FD if it has the same value as the early ota_open. The CL in [1] changed to "ota_close(fd.release())" to avoid the issue. This CL adds a new overloaded function ota_close(unique_fd&) to handle the release automatically. Similarly add ota_fclose(std::unique_ptr<FILE>&). [1] commit 48cf770471ef53fbf0a1837196220862a0bdb18d. Bug: 33034669 Test: recovery_component_test passes. Change-Id: Ief91edc590e95a7426e33364b28754173efb1056
2016-11-17applypatch: Use unique_fd to avoid leaking FDs.Tao Bao1-0/+10
Add unique_fd that calls ota_close() instead of the default closer. Test: recovery_component_test passes. Test: Apply a package that calls apply_patch(). Change-Id: I0c19921731757934f76cf7d5215916673a8f2777
2016-10-18Replace minzip with libziparchiveTianjie Xu3-11/+15
Clean up the duplicated codes that handle the zip files in bootable/recovery; and rename the library of the remaining utility functions to libotautil. Test: Update package installed successfully on angler. Bug: 19472796 Change-Id: Iea8962fcf3004473cb0322b6bb3a9ea3ca7f679e
2016-09-30Turn on -Werror for recoveryTianjie Xu1-0/+2
Also remove the 0xff comparison when validating the bootloader message fields. As the fields won't be erased to 0xff after we remove the MTD support. Bug: 28202046 Test: The recovery folder compiles for aosp_x86-eng Change-Id: Ibb30ea1b2b28676fb08c7e92a1e5f7b6ef3247ab (cherry picked from commit 7aa88748f6ec4e53333d1a15747bc44826ccc410)
2016-09-30Turn on -Werror for recoveryTianjie Xu1-0/+2
Also remove the 0xff comparison when validating the bootloader message fields. As the fields won't be erased to 0xff after we remove the MTD support. Bug: 28202046 Test: The recovery folder compiles for aosp_x86-eng Change-Id: Ibb30ea1b2b28676fb08c7e92a1e5f7b6ef3247ab
2016-09-01Switch recovery to libbase loggingTianjie Xu1-2/+3
Clean up the recovery image and switch to libbase logging. Bug: 28191554 Change-Id: Icd999c3cc832f0639f204b5c36cea8afe303ad35 (cherry picked from commit 747781433fb01f745529c7e9dd97c5599070ad0d)
2016-09-01Switch recovery to libbase loggingTianjie Xu1-2/+3
Clean up the recovery image and switch to libbase logging. Bug: 28191554 Change-Id: Icd999c3cc832f0639f204b5c36cea8afe303ad35 Merged-In: Icd999c3cc832f0639f204b5c36cea8afe303ad35
2016-09-01Switch recovery to libbase loggingTianjie Xu1-2/+3
Clean up the recovery image and switch to libbase logging. Bug: 28191554 Change-Id: Icd999c3cc832f0639f204b5c36cea8afe303ad35
2016-07-27Fix clang-tidy performance warnings.Chih-Hung Hsieh1-1/+1
* Use const reference parameter type to avoid unnecessary copy. * Use more efficient overloaded string methods. Bug: 30407689 Bug: 30411878 Change-Id: Iefab05c077367f272abf545036b853e8a295c8cd Test: build with WITH_TIDY=1
2016-03-25Correct caching behavior for should_inject_cacheJed Estep2-18/+23
Bug: 27800498 Change-Id: I5255283c1d04a385ed719c5bc2be461cae9f3648 (cherry picked from commit 88dd7796a1fd4c64d57afb20021bf66cb26fa886)
2016-03-23Correct caching behavior for should_inject_cacheJed Estep2-17/+17
Bug: 27800498 Change-Id: I5255283c1d04a385ed719c5bc2be461cae9f3648
2016-03-19Control fault injection with config files instead of build flagsJed Estep6-134/+237
Bug: 27724259 Change-Id: I65bdefed10b3fb85fcb9e1147eaf0687d7d438f4
2016-03-18Revert "DO NOT MERGE Control fault injection with config files instead of build flags"Tao Bao6-232/+134
This reverts commit f73abf36bcfd433a3fdd1664a77e8e531346c1b1. Bug: 27724259 Change-Id: I1301fdad15650837d0b1febd0c3239134e2b94fb
2016-03-17Revert "DO NOT MERGE Control fault injection with config files instead of build flags"Tao Bao6-232/+134
This reverts commit f73abf36bcfd433a3fdd1664a77e8e531346c1b1. Bug: 27724259 Change-Id: I1301fdad15650837d0b1febd0c3239134e2b94fb
2016-03-16DO NOT MERGE Control fault injection with config files instead of build flagsJed Estep6-134/+232
Bug: 26570379 Change-Id: I76109d09276d6e3ed3a32b6fedafb2582f545c0c
2016-03-14otafault: Fix setting of have_eio_error.Greg Kaiser1-1/+1
There was one case (ota_fsync, under TARGET_SYNC_FAULT, when the filename was cached) where we were not setting have_eio_error prior to returning. We fix that. Change-Id: I2b0aa61fb1e821f0e77881aba04db95cd8396812
2016-03-10Reboot and retry on I/O errorsTianjie Xu1-10/+58
When I/O error happens, reboot and retry installation two times before we abort this OTA update. Bug: 25633753 Change-Id: Iba6d4203a343a725aa625a41d237606980d62f69 (cherry picked from commit 3c62b67faf8a25f1dd1c44dc19759c3997fdfd36)
2016-03-03Fix the improper use of LOCAL_WHOLE_STATIC_LIBRARIES.Tao Bao1-4/+9
If two libraries both use LOCAL_WHOLE_STATIC_LIBRARIES and include a same library, there would be linking errors when generating a shared library (or executable) that depends on the two libraries both. Also clean up Android.mk files. Remove the "LOCAL_MODULE_TAGS := eng" line for the updater module. The module will then default to "optional" which won't be built until needed. Change-Id: I3ec227109b8aa744b7568e7f82f575aae3fe0e6f
2016-03-03Reboot and retry on I/O errorsTianjie Xu1-5/+32
When I/O error happens, reboot and retry installation two times before we abort this OTA update. Bug: 25633753 Change-Id: Iba6d4203a343a725aa625a41d237606980d62f69
2016-02-23Control fault injection with config files instead of build flagsJed Estep6-118/+237
Bug: 26570379 Change-Id: I76109d09276d6e3ed3a32b6fedafb2582f545c0c (cherry picked from commit d940887dde23597dc358b16d96ca48dd7480fee6)
2016-02-20Control fault injection with config files instead of build flagsJed Estep6-118/+237
Bug: 26570379 Change-Id: I76109d09276d6e3ed3a32b6fedafb2582f545c0c
2016-02-10IO fault injection for OTA packagesJed Estep4-0/+299
Bug: 25951086 Change-Id: I31c74c735eb7a975b7f41fe2b2eff042e5699c0c (cherry-picked from commit f1fc48c6e62cfee42d25ad12f443e22d50c15d0b)
2016-01-06IO fault injection for OTA packagesJed Estep4-0/+299
Bug: 25951086 Change-Id: I31c74c735eb7a975b7f41fe2b2eff042e5699c0c