Commit Graph

5397 Commits

Author SHA1 Message Date
Jin Qian 9a631d2764 Merge "recovery: remove make_ext4fs from updater" am: 3f06512714
am: 59b20d6565

Change-Id: I62615596c4ff07a597c234ca620bee19b2660fa2
2017-11-03 23:26:23 +00:00
Jin Qian 59b20d6565 Merge "recovery: remove make_ext4fs from updater"
am: 3f06512714

Change-Id: Iaccf79dfa4fc7b85071567cd0d58d294478ea0f3
2017-11-03 23:22:23 +00:00
Treehugger Robot 3f06512714 Merge "recovery: remove make_ext4fs from updater" 2017-11-03 23:18:25 +00:00
Jin Qian 87c005bff7 Merge "recovery: fix library dependency" am: 0da645fefa
am: 4d079261e5

Change-Id: I7adec4c4bff3d17782b6ef0f58984e36e2c717a5
2017-11-03 22:39:26 +00:00
Jin Qian 4d079261e5 Merge "recovery: fix library dependency"
am: 0da645fefa

Change-Id: If42448e311abde44b730f31e8ec779e4fe660ca3
2017-11-03 22:29:20 +00:00
Treehugger Robot 0da645fefa Merge "recovery: fix library dependency" 2017-11-03 22:16:55 +00:00
Jin Qian 502fd1c5e8 recovery: remove make_ext4fs from updater
Bug: 64395169
Change-Id: I6f6a4f82b225435c6ad5c828e110fa135e6f7579
2017-11-03 13:54:59 -07:00
Jin Qian 000148dbc9 recovery: fix library dependency
After removing some deadcode from libext4_utils, libz is optimized
out by linker. However, it's still required by libvintf. Moving libz
down the list fixed the build.

Bug: 64395169
Change-Id: I23ecd70c83af83a219faced59d8227dc3c4e43d5
2017-11-03 13:43:48 -07:00
Tao Bao c08ec028f2 Merge "tests: Clean up the files in TemporaryDir." am: 2cf44d08cf
am: fc8066feed

Change-Id: I7f4c8648a856bc8f61971080a2f75c81e2c2bbc7
2017-11-03 18:59:36 +00:00
Tao Bao fc8066feed Merge "tests: Clean up the files in TemporaryDir."
am: 2cf44d08cf

Change-Id: I37a43d8454caebc18e2916afffbe8b894cd5374e
2017-11-03 18:57:36 +00:00
Treehugger Robot 2cf44d08cf Merge "tests: Clean up the files in TemporaryDir." 2017-11-03 18:51:34 +00:00
Tao Bao e8d7946827 Merge "Add a repohook to clang-format changes." am: 439263cb83
am: f3e2017309

Change-Id: Ib1c719f796c47e8413b0c6da4df0dbe779eab10e
2017-11-03 03:33:43 +00:00
Tao Bao f3e2017309 Merge "Add a repohook to clang-format changes."
am: 439263cb83

Change-Id: I954d3514875799af055eedd6fe5b536827f2ef12
2017-11-03 03:31:14 +00:00
Tao Bao 439263cb83 Merge "Add a repohook to clang-format changes." 2017-11-03 03:27:15 +00:00
Xin Li b127b6c4a8 Merge commit '04bcf3ee761d8648d0247dd8322e3542c0319464' from oc-mr1-dev-plus-aosp into stage-aosp-master
am: 04a8b2b532

Change-Id: Ib5b0e4e8e215229f7427f358dfa69e06ba466e58
2017-11-03 01:00:30 +00:00
Tao Bao 6b1aae376a Add a repohook to clang-format changes.
It would clang-format according to the local style file in
.clang-format, unless explicitly skipped with --no-verify.

An example output is as follows:

[COMMIT dda6b1ee4247] test
[FAILED] clang_format
    The following files have formatting errors:
        screen_ui.cpp
    You can run `/mnt/aosp/aosp-master/tools/repohooks/tools/clang-format.py --fix --clang-format /mnt/aosp/aosp-master/prebuilts/clang/host/linux-x86/clang-stable/bin/clang-format --git-clang-format /mnt/aosp/aosp-master/prebuilts/clang/host/linux-x86/clang-stable/bin/git-clang-format --style file --commit dda6b1ee424710760bbab4421e95239fa6a2b40d` to fix this
[COMMIT be69a2c4ba16] Add a repohook to clang-format the change.
[RUNNING 2/2] clang_format
An automatic fix can be attempted for the "clang_format" hook. Do you want to run it? (Yes/no)?
Fix successfully applied. Amend the current commit before attempting to upload again.

More details about repohooks can be found at:

  https://android.googlesource.com/platform/tools/repohooks/

Test: `repo upload` a CL.
Change-Id: Ie8203a317eb3be7acd5592e03374873997647aa0
2017-11-02 16:23:58 -07:00
Xin Li 04a8b2b532 Merge commit '04bcf3ee761d8648d0247dd8322e3542c0319464' from
oc-mr1-dev-plus-aosp into stage-aosp-master

Change-Id: Ie321cc4ce4a2324ca7bf0f3493f23ea7999765b8
2017-11-02 15:49:26 -07:00
Tianjie Xu 1d71857179 Merge "Add libbrotli as a dependency for libbsdiff" am: 43f194c8bc
am: 57e16e4f77

Change-Id: I66dad0ca574489bb07f1a4f4726ec9d022b082ce
2017-11-02 17:57:09 +00:00
Tianjie Xu 57e16e4f77 Merge "Add libbrotli as a dependency for libbsdiff"
am: 43f194c8bc

Change-Id: Ia4dbce188995448384a94be87a3020f5ca033365
2017-11-02 17:54:37 +00:00
Tianjie Xu 43f194c8bc Merge "Add libbrotli as a dependency for libbsdiff" 2017-11-02 17:50:40 +00:00
Tao Bao 54c1db4b3e tests: Clean up the files in TemporaryDir.
~TemporaryDir() calls rmdir(2) directly, which works with empty
directories only.

Test: Run recovery_host_test; No leftover on host.
Test; Run recovery_component_test on marlin; No leftover on device.
Change-Id: Ib510efb16eeda61b34161e2b386499e6cb79a4ca
2017-11-01 22:34:51 -07:00
Tao Bao ba1217ee00 update_verifier: Fix the wrong computation with group_range_count.
am: 559a6d1d2a

Change-Id: Ie6a4969bf7ebd471b881d5ea93ed4bc55611b99f
2017-11-02 00:41:59 +00:00
Tianjie Xu 8c28081039 Add libbrotli as a dependency for libbsdiff
Bug: 34220646
Test: mma
Change-Id: If00285943fff8226f1bc7239db5570a277739904
2017-11-01 15:30:05 -07:00
Tianjie Xu 92fcada348 Merge "Fix the size mismatch in imgdiff" am: dec77a454e
am: ff7c186f66

Change-Id: I9caac127b119b829add9be83c374d8ce81aea943
2017-11-01 19:11:39 +00:00
Tianjie Xu ff7c186f66 Merge "Fix the size mismatch in imgdiff"
am: dec77a454e

Change-Id: Ibd75a70220a20d38eb561c4ed84ac42225f1add9
2017-11-01 19:04:43 +00:00
Tianjie Xu dec77a454e Merge "Fix the size mismatch in imgdiff" 2017-11-01 18:56:46 +00:00
Tianjie Xu 113fe05ee0 Fix the size mismatch in imgdiff
As we construct the deflate entries of the target zip file with
random data, the total size of the zip file may vary from case
to case. This leads to occasional failures in the split test for
deflate large apk files. This CL fixes the issue by adding two static
zip files in the testdata instead of generating them dynamically.

Bug: 67849209
Test: run the deflate_large_test repeatedly
Change-Id: Iaeffad9205adefa10c9f62f9f088c33c4360a650
2017-10-31 23:31:02 -07:00
Tao Bao 80945895bb Merge "update_verifier: Fix the wrong computation with group_range_count." am: 011af6e1a9
am: 78fa902920

Change-Id: Iec6bd92202807ae0a6dbea0c9f4041b539b76687
2017-10-30 17:51:45 +00:00
Tao Bao 78fa902920 Merge "update_verifier: Fix the wrong computation with group_range_count."
am: 011af6e1a9

Change-Id: Id9829bc924741a57fc4e175677f235d2221482f2
2017-10-30 17:47:14 +00:00
Treehugger Robot 011af6e1a9 Merge "update_verifier: Fix the wrong computation with group_range_count." 2017-10-30 17:29:35 +00:00
Tao Bao 559a6d1d2a update_verifier: Fix the wrong computation with group_range_count.
'group_range_count' doesn't properly consider the pair-wise range
structure. It may split the ranges into wrong pairs if it evaluates to
an odd number.

For example, for an input range string of "6,0,2,10,12,20,22" with 4
threads, group_range_count becomes 1. It would then try to verify (0,2),
(2,10), (10,12) and (12,20). Note that (2,10) and (12,20) are not valid
ranges to be verified, and with (20,22) uncovered.

Bug: 68343761
Test: Trigger update_verifier verification. Check the number of verified
      blocks against the one in care_map.txt.
Change-Id: I7c5769325d9866be06c45e7dbcc0c8ea266de714
(cherry picked from commit 62caeb5f48c9d7b1a8ed97c4a021195b8499b804)
2017-10-29 22:10:39 -07:00
Tao Bao 6ec94c023e update_verifier: Fix the wrong computation with group_range_count.
'group_range_count' doesn't properly consider the pair-wise range
structure. It may split the ranges into wrong pairs if it evaluates to
an odd number.

For example, for an input range string of "6,0,2,10,12,20,22" with 4
threads, group_range_count becomes 1. It would then try to verify (0,2),
(2,10), (10,12) and (12,20). Note that (2,10) and (12,20) are not valid
ranges to be verified, and with (20,22) uncovered.

Bug: 68343761
Test: Trigger update_verifier verification. Check the number of verified
      blocks against the one in care_map.txt.
Change-Id: I7c5769325d9866be06c45e7dbcc0c8ea266de714
2017-10-29 14:51:25 -07:00
Tao Bao e4ca124c7c Merge "tests: Take the ownership of the FD when calling fdopen." am: 166479b259
am: 450918158d

Change-Id: I2a5b9c162d1c704added2edca3bbd62a15c0acc1
2017-10-27 00:17:01 +00:00
Tao Bao 450918158d Merge "tests: Take the ownership of the FD when calling fdopen."
am: 166479b259

Change-Id: I1d92a0da6048893c034d1d419b1729abc1968511
2017-10-27 00:11:08 +00:00
Treehugger Robot 166479b259 Merge "tests: Take the ownership of the FD when calling fdopen." 2017-10-26 20:47:43 +00:00
Tao Bao f29ed3e843 tests: Take the ownership of the FD when calling fdopen.
To avoid closing the same FD twice.

Test: recovery_component_test && recovery_host_test
Change-Id: I95195be8109101081410e9224efda535b2560e72
2017-10-26 12:05:57 -07:00
Tao Bao 47433f0293 Merge "applypatch: Fix a memory leak in ApplyImagePatch()." am: 1bc0117755
am: dcc1fa1ce8

Change-Id: I183a39998dedb826db0c87bce6febf5a03261d7f
2017-10-24 22:09:21 +00:00
Tao Bao dcc1fa1ce8 Merge "applypatch: Fix a memory leak in ApplyImagePatch()."
am: 1bc0117755

Change-Id: Ifb081da2cbc7175454bb4059e41bb9c94d9b6512
2017-10-24 22:06:47 +00:00
Treehugger Robot 1bc0117755 Merge "applypatch: Fix a memory leak in ApplyImagePatch()." 2017-10-24 21:59:26 +00:00
Tao Bao fdec103335 applypatch: Fix a memory leak in ApplyImagePatch().
$ valgrind --leak-check=full out/host/linux-x86/nativetest64/recovery_host_test/recovery_host_test

==36755== 112 bytes in 1 blocks are definitely lost in loss record 4 of 16
==36755==    at 0x40307C4: malloc (valgrind/coregrind/m_replacemalloc/vg_replace_malloc.c:270)
==36755==    by 0x40C1669: operator new(unsigned long) (external/libcxxabi/src/cxa_new_delete.cpp:46)
==36755==    by 0x18D6A8: ApplyImagePatch(unsigned char const*, unsigned long, Value const*, std::__1::function<unsigned long (unsigned char const*, unsigned long)>, sha_state_st*, Value const*) (bootable/recovery/applypatch/imgpatch.cpp:62)
==36755==    by 0x18D02B: ApplyImagePatch(unsigned char const*, unsigned long, unsigned char const*, unsigned long, std::__1::function<unsigned long (unsigned char const*, unsigned long)>) (bootable/recovery/applypatch/imgpatch.cpp:134)
==36755==    by 0x160D15: GenerateTarget(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) (bootable/recovery/tests/component/imgdiff_test.cpp:85)
==36755==    by 0x11FA7D: verify_patched_image(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) (bootable/recovery/tests/component/imgdiff_test.cpp:96)
==36755==    by 0x12966C: ImgdiffTest_zip_mode_smoke_trailer_zeros_Test::TestBody() (bootable/recovery/tests/component/imgdiff_test.cpp:295)
==36755==    by 0x235EF9: testing::Test::Run() (external/googletest/googletest/src/gtest.cc:2455)
==36755==    by 0x236CBF: testing::TestInfo::Run() (external/googletest/googletest/src/gtest.cc:2653)
==36755==    by 0x2372D6: testing::TestCase::Run() (external/googletest/googletest/src/gtest.cc:2771)
==36755==    by 0x23EEE6: testing::internal::UnitTestImpl::RunAllTests() (external/googletest/googletest/src/gtest.cc:4648)
==36755==    by 0x23EB45: testing::UnitTest::Run() (external/googletest/googletest/src/gtest.cc:2455)

std::unique_ptr<z_stream, decltype(&deflateEnd)> strm(new z_stream(), deflateEnd);

Only the internally allocated buffers inside 'strm' would be free'd by
deflateEnd(), but not 'strm' itself.

This CL fixes the issue by moving 'strm' to stack variable. Note that we
only need to call deflateEnd() on successful return of deflateInit2().

Test: recovery_host_test && recovery_component_test
Change-Id: I39b9bdf62376b8029f95cab82c8542bfcb874009
2017-10-24 12:48:36 -07:00
Alex Deymo 9d079c1254 Merge "Use SuffixArrayIndexInterface opaque type instead of the underlying data pointer." am: 3d24b7bca6
am: d8ecad7896

Change-Id: Ic6065205cca6bff453de6a6683ce82c2d314c7ac
2017-10-24 17:32:01 +00:00
Alex Deymo d8ecad7896 Merge "Use SuffixArrayIndexInterface opaque type instead of the underlying data pointer."
am: 3d24b7bca6

Change-Id: I18b7e9ca9ae299b8a028da63fc7d3e9e9eaef221
2017-10-24 17:29:30 +00:00
Treehugger Robot 3d24b7bca6 Merge "Use SuffixArrayIndexInterface opaque type instead of the underlying data pointer." 2017-10-24 17:20:14 +00:00
Alex Deymo fa188268e4 Use SuffixArrayIndexInterface opaque type instead of the underlying data pointer.
bsdiff interface is changing such that it hides the suffix array
pointer from the public interface. This allows to use a different
suffix array data size depending on the input size, running much faster
in the normal case.

Bug: 34220646
Test: `make checkbuild`; Ran an incremental update generation on a non-A/B device.
Change-Id: I78e766da56cf28bc7774b8c8e58527bc11d919fb
2017-10-24 14:00:31 +02:00
Dan Willemsen 404051ef0e Merge "libdrm_platform is now libdrm" am: d830858952
am: 3b4e2ebf2c

Change-Id: I4199c9f74bec5783c54a9d387e7d376595fb0d72
2017-10-23 21:40:51 +00:00
Dan Willemsen 3b4e2ebf2c Merge "libdrm_platform is now libdrm"
am: d830858952

Change-Id: I9614430880626ca25b9eced39ed83eb69073b3b5
2017-10-23 21:36:58 +00:00
Treehugger Robot d830858952 Merge "libdrm_platform is now libdrm" 2017-10-23 21:25:17 +00:00
Dan Willemsen 7570e73a92 Merge "Build libminui with BOARD_VNDK_VERSION" am: ec9ac55949 am: 0bda7a02c2
am: 988b21ec05  -s ours

Change-Id: I720bebaf6712d7e3666fbedfb6be28848bdb3a45
2017-10-21 00:20:04 +00:00
Dan Willemsen 988b21ec05 Merge "Build libminui with BOARD_VNDK_VERSION" am: ec9ac55949
am: 0bda7a02c2

Change-Id: Id9b132f4bfb3011823b86f9f5bb0c4b654f8c87c
2017-10-21 00:18:09 +00:00
Dan Willemsen 0bda7a02c2 Merge "Build libminui with BOARD_VNDK_VERSION"
am: ec9ac55949

Change-Id: I18d3e50975bbff077cb435b798a71cf2384d5ba6
2017-10-21 00:16:05 +00:00