Commit Graph

38 Commits

Author SHA1 Message Date
Yurii Zubrytskyi
082322b5bd Merge "Dynamic args complete removal." into rvc-dev am: a7b10f5623 am: 4604a9bbe7
Change-Id: I9984c6633ab8eadc274c8df8268f374c555f75ee
2020-03-27 08:02:39 +00:00
Alex Buynytskyy
686a537376 Dynamic args complete removal.
Bug: b/150470163
Test: atest PackageManagerShellCommandIncrementalTest PackageManagerShellCommandTest
Change-Id: I122f37f210ef9b8b02d565c34245ebeec26d83b2
2020-03-26 16:28:33 -07:00
Yurii Zubrytskyi
c64b16d6ce Merge "[incremental native lib] skip writing to zero byte files" into rvc-dev am: 9cce14eb0e am: 042434f4ee
Change-Id: Ie842d7a55a6f1d5fcf3592975f9edd6deadaa154
2020-03-19 06:52:25 +00:00
Yurii Zubrytskyi
7a2eb4a13e Merge "Incremental apps removal on data loader failures." into rvc-dev am: 793f73812d am: e1a0a7411c
Change-Id: Ib72e2e723829b2c509530cbd9db53457b14bf7a8
2020-03-19 06:52:06 +00:00
Yurii Zubrytskyi
9cce14eb0e Merge "[incremental native lib] skip writing to zero byte files" into rvc-dev 2020-03-19 06:23:23 +00:00
Yurii Zubrytskyi
793f73812d Merge "Incremental apps removal on data loader failures." into rvc-dev 2020-03-19 06:20:37 +00:00
Songchun Fan
afaf6e9ee7 [incremental native lib] skip writing to zero byte files
Test: adb install --incremental /google/data/rw/teams/tradefed/testdata/thirdparty_apps_stable/MX_Player_1.9.17.apk
BUG: 150795871
Change-Id: Idca09929f41424edb527b9b89dea1974c1f8ea46
2020-03-18 14:17:04 -07:00
Yurii Zubrytskyi
592fe5d0ef Merge "Removing race condition accessing shared binder object." into rvc-dev am: 1d6e6bfe96 am: 92a23de26f
Change-Id: Icd3b190acb66ca7d841d613464559f1dba7945ea
2020-03-18 20:07:07 +00:00
Yurii Zubrytskyi
1d6e6bfe96 Merge "Removing race condition accessing shared binder object." into rvc-dev 2020-03-18 19:54:55 +00:00
Alex Buynytskyy
2cf1d18fe1 Incremental apps removal on data loader failures.
Test: adb install --incremental megacity.apk over USB2.0, remove usb connection
after installed.
Bug: b/15041101

Change-Id: Ib848640dbe49c76021f7cf544de4413599c2c763
2020-03-18 10:18:48 -07:00
Alex Buynytskyy
b6e02f7b09 Removing race condition accessing shared binder object.
Test: incrementally installing two apks at the same time
Bug: b/150411019
Change-Id: I81231edf7a32470542ec529aa305b4f9fb2b80e3
2020-03-18 09:01:36 -07:00
Songchun Fan
f8618237e6 Merge "[incremental service] avoid nullptr dereferencing" into rvc-dev am: eee228f65e am: 2575a8b68c
Change-Id: I6b65a8e5e9ef45e5549d757f09b9ddd93641d2e7
2020-03-18 05:24:44 +00:00
Songchun Fan
eee228f65e Merge "[incremental service] avoid nullptr dereferencing" into rvc-dev 2020-03-18 05:19:56 +00:00
Songchun Fan
306b7df3f9 [incremental service] avoid nullptr dereferencing
externalListener could be nullptr.

BUG: 150795871
Test: atest service.incremental_test
Change-Id: I2843e1751cb1f7e9318edb05e9a8f5256ad9f3a8
2020-03-17 14:27:31 -07:00
Automerger Merge Worker
3b4d367f59 Merge "Updated v4 signature processing." into rvc-dev am: 764e7971d8 am: b2921cc0cd
Change-Id: Ie83714abc9c15d97c891b7b2441ee3138549fa62
2020-03-14 02:55:36 +00:00
Alex Buynytskyy
f5e605a00c Updated v4 signature processing.
Passing to libincfs.so.
Obtaining and verifying, including v3 digest check.

go/apk-v4-signature-format

Test: atest PackageManagerShellCommandTest
Bug: b/151241461
Change-Id: Id61f5716b9f9b55d6ab1ebca5a7ecb1c6e54570a
2020-03-13 15:13:25 -07:00
Jooyung Han
66c567a8c4 Use aidl::nullable for nullable type in C++
To reduce the discrepance between old code which still uses
std::unique_ptr and new code using std::optional.

This might help to avoid merge-conflicts between branches.

Bug: 144773267
Test: m
Merged-In: Ie3196ee5cce17d77950eea9479d2cc1406e9e674
Merged-In: I33822bc76ef87637d5408849f64a0607e121792e
Change-Id: I33822bc76ef87637d5408849f64a0607e121792e
(cherry picked from commit ad62e8cbf5)

Exempt-From-Owner-Approval: cherry-pick from master with owner's approval
2020-03-12 11:36:33 +00:00
Jooyung Han
aa7d5dd5f9 Revert "Use aidl::nullable for nullable type in C++"
Revert submission 10632869-nullable-compat-rvc-dev-plus-aosp

Reason for revert: incorrect merged-in line
Reverted Changes:
I33822bc76:Use aidl::nullable for nullable type in C++
I378dbf848:Add aidl::nullable type for nullable in AIDL

Change-Id: I98d4041770fe97b622aaaf8c829b97259bd82e2c
Exempt-From-Owner-Approval: revert wrong submission
2020-03-12 07:05:54 +00:00
Jooyung Han
4b1d2889dc Use aidl::nullable for nullable type in C++
To reduce the discrepance between old code which still uses
std::unique_ptr and new code using std::optional.

This might help to avoid merge-conflicts between branches.

Bug: 144773267
Test: m
Merged-In I33822bc76ef87637d5408849f64a0607e121792e
Change-Id: I33822bc76ef87637d5408849f64a0607e121792e
(cherry picked from commit ad62e8cbf5)

Exempt-From-Owner-Approval: cherry-pick from master
2020-03-12 06:22:10 +00:00
Automerger Merge Worker
4de75921f1 Merge "DataLoader lifecycle cleanup." into rvc-dev am: 42cac08f17
Change-Id: I66ed43aab0ad622a21c306fd33f9d5edc0fad856
2020-03-11 20:17:30 +00:00
Alex Buynytskyy
bf1c063481 DataLoader lifecycle cleanup.
Remove 5 second delay in startLoading()
Remove sysprops: incremental.skip_loader

Test: atest PackageManagerShellCommandTest PackageManagerShellCommandIncrementalTest
Bug: b/151178179 b/136132412
Change-Id: Ibbe921c444b7e11fe5482662ca791bd8dfeb8324
2020-03-11 09:22:34 -07:00
Automerger Merge Worker
0562d7d76e Merge "directly call data loader manager service from incremental service" into rvc-dev am: 8412d57518
Change-Id: Ibc58237516e3e5b249c666c83c44ec2922c136f2
2020-03-05 02:58:23 +00:00
Songchun Fan
68645c42ac directly call data loader manager service from incremental service
BUG: 150406132
Test: atest service.incremental_test
Test: atest PackageManagerShellCommandIncrementalTest
Change-Id: I2bb75d5adae58d2471478f6a4d2354058d7b0dab
2020-03-03 21:18:30 -08:00
Jooyung Han
605e39f5fd Use optional for nullable types
AIDL generates optional<T> for nullable T types for C++, which is more
efficient and idomatic and easy to use.

Bug: 144773267
Test: build/flash/boot
Merged-In: I90cf2ce1193c479179687d71a5c1416f6cdf0b16
Change-Id: I90cf2ce1193c479179687d71a5c1416f6cdf0b16
(cherry picked from commit 53be7f4db4)

Exempt-From-Owner-Approval: CP from master
2020-02-26 04:00:40 +00:00
Songchun Fan
1124fd38c1 Fix mounting existing images on reboot
Fixes paths.

BUG: b/133435829
Test: manual
Change-Id: Ib48ac36e8b22f8e2a85d5e223c6dd0f8b5289045
2020-02-11 16:21:16 -08:00
Alex Buynytskyy
f3b2e68fae Merge "Incremental installations in PackageManagerShellCommand." 2020-02-11 21:24:55 +00:00
Alex Buynytskyy
04f7391fc3 Incremental installations in PackageManagerShellCommand.
- onPrepareImage in native,
- allow to check installation type and choose native or managed
dataloaders,
- native data loader for Incremental,
- install-incremental shell command.

Test: atest PackageManagerShellCommandTest
Test: atest IncrementalServiceTest
Bug: b/136132412 b/133435829
Change-Id: I530a8a203fb50132c1869abd0b869036add18699
2020-02-11 13:11:31 -08:00
George Burgess IV
dd5275dcc4 incfs: fix uninitialized values
Clang's static analyzer is flagging uninitialized struct fields that
we're passing around. In particular, it's not happy that we pass this
partially-initialized struct to a pure-virtual method. I tend to agree
that this may cause issues.

Assuming zero-init gives us reasonable values for all of:

IncFsNewFileParams{}.verification.rootHash
IncFsNewFileParams{}.verification.additionalData
IncFsNewFileParams{}.verification.signature

Bug: None
Test: TreeHugger
Change-Id: I61e556cd8c0e68cdaebd50b0a7be5d5e0a4fd8ff
2020-02-10 11:26:40 -08:00
Songchun Fan
0f8b6fe950 Incremental native lib extraction
Basically we configure all the lib files inside Incremental Service,
e.g., create lib dirs, make lib files, extract original
lib file data from zip and then write data to the lib files on incfs.

Test: manual with incremental installation
BUG: b/136132412 b/133435829
Change-Id: I7544d2e78bcf3bdd76ce4c0766ec31ff13fd2011
2020-02-07 11:35:48 -08:00
TreeHugger Robot
1a79ff69de Merge "fix dir creation mode" 2020-02-04 07:19:54 +00:00
TreeHugger Robot
fb740d58fe Merge "Dumpsys support for IncrementalService." 2020-02-04 06:56:31 +00:00
Alex Buynytskyy
18b07a4252 Dumpsys support for IncrementalService.
Test: atest PackageManagerShellCommandTest
Test: adb shell dumpsys incremental
Bug: b/136132412 b/133435829
Change-Id: I8a91eddb850c68da87f56a82ca14fdf9ac5d3ce5
2020-02-03 20:09:00 -08:00
Songchun Fan
103ba1db21 more normalized path fix
Test: manual
Change-Id: I8fe073cb4bc4fa1a3af784cfcfa8db4d0a232991
2020-02-04 03:27:45 +00:00
Songchun Fan
9610093a7b fix dir creation mode
They need to be writable by owner.

Test: manual
Change-Id: I3e99094e5752c0f6bb351cc24bdf5698b7a4bde2
2020-02-04 03:27:08 +00:00
Songchun Fan
54c6aed58d make adb install --incremental work
With a simple Java apk (flipboard.app).

BUG: 133435829
Test: manual
Change-Id: If702afffc0e01cbb03f88560c0569fd23dda2350
2020-01-31 19:48:35 -08:00
Yurii Zubrytskyi
4a25dfb2de Port the current code to new IncFS
Bug: 146080380
Test: manual, "cmd incremental install-start"

Change-Id: I6761c3f0e58b6d4de1ae3c4b31c23204fba9f740
2020-01-28 12:10:17 -08:00
Alex Buynytskyy
1ecfcece45 Migrating Incremental* APIs to PackageManager APIs.
Step 2, merging Data Loader params.

Test: builds and flashes
Bug: b/136132412

Change-Id: I2102554316dadcdcb49790c133ece110c43c29b3
2019-12-20 06:55:32 -08:00
Songchun Fan
3c82a306cd [incremental] native implementation of Incremental Service
The implementation of IIncrementalManager.aidl. TODO to refactor this.

Test: atest service.incremental_test
Change-Id: Ib8c8a9c0e7f0289b4bcd8961fa39746ed12b4310
2019-12-19 11:27:42 -08:00