summaryrefslogtreecommitdiffstats
path: root/otafault/ota_io.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2017-04-11Protect filename_cache with lock in ota faultTianjie Xu1-2/+16
Bug: 33173924 Test: Apply a successfully update on bullhead Change-Id: I28cc356e216a3e957b5533c338ee6bc3c0920222
2017-03-23Const modifiersMikhail Lappo1-1/+1
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
2016-11-28Remove ota_close(int) and ota_fclose(FILE*).Tao Bao1-6/+14
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 Bao1-2/+12
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-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-19Control fault injection with config files instead of build flagsJed Estep1-103/+71
Bug: 27724259 Change-Id: I65bdefed10b3fb85fcb9e1147eaf0687d7d438f4
2016-03-17Revert "DO NOT MERGE Control fault injection with config files instead of build flags"Tao Bao1-71/+103
This reverts commit f73abf36bcfd433a3fdd1664a77e8e531346c1b1. Bug: 27724259 Change-Id: I1301fdad15650837d0b1febd0c3239134e2b94fb
2016-03-16DO NOT MERGE Control fault injection with config files instead of build flagsJed Estep1-103/+71
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-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 Estep1-87/+76
Bug: 26570379 Change-Id: I76109d09276d6e3ed3a32b6fedafb2582f545c0c (cherry picked from commit d940887dde23597dc358b16d96ca48dd7480fee6)
2016-02-20Control fault injection with config files instead of build flagsJed Estep1-87/+76
Bug: 26570379 Change-Id: I76109d09276d6e3ed3a32b6fedafb2582f545c0c
2016-02-10IO fault injection for OTA packagesJed Estep1-0/+160
Bug: 25951086 Change-Id: I31c74c735eb7a975b7f41fe2b2eff042e5699c0c (cherry-picked from commit f1fc48c6e62cfee42d25ad12f443e22d50c15d0b)
2016-01-06IO fault injection for OTA packagesJed Estep1-0/+160
Bug: 25951086 Change-Id: I31c74c735eb7a975b7f41fe2b2eff042e5699c0c