Age | Commit message (Collapse) | Author |
|
Bug: 195274797
Test: ./apxer/runtests.sh
Change-Id: I19019d2809496bfc37eca1964e58a4e04d8bbbe7
Signed-off-by: Huang Jianan <huangjianan@oppo.com>
|
|
Filesystem type used for apex_payload is retrieved when opening an APEX.
Magic bytes are read are the expected offset in the filesystem.
If neither f2fs magic nor ext4 magic can be found, it fails.
Test: boot successfuly with ext4 apexes
install succesfuly ext4 / f2fs apexes
atest ApexTestCases
Bug: 158453869
Change-Id: If8eb9f6f28f81cdb0915c63f51482827138bf9f8
Merged-In: If8eb9f6f28f81cdb0915c63f51482827138bf9f8
|
|
The new flag --payload_fs_type enables the user to choose between ext4
and f2fs for apex_payload.img
Test: ./runtests.sh
Bug: 158453869
Change-Id: I2858d834924c5cec0f809c4f5c8b2e622b8fdf47
Merged-In: I2858d834924c5cec0f809c4f5c8b2e622b8fdf47
|
|
Even though we have used buffered IO on squashfs and erofs, apexd will
still fail to loop mount after adb remount. So we should allow to
use buffered IO on overlayfs.
Bug:174816929
Test: Boot with erofs or squashfs images after adb remount
Signed-off-by: Huang Jianan <huangjianan@oppo.com>
Change-Id: I2ad68bb7b1c9d9ff241a496120602ff5558c34e0
|
|
O_DIRECT does not work on squashfs file systems, and will return EINVAL. Try
without O_DIRECT.
On boards with `BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE := squashfs` apexd will fail
to loop mount. Unfortunately O_DIRECT is not possible because image is
compressed on disk and we do need the buffering.
Bug: 167309455
Bug: 168746790
Test: tast run kukui-arc-r arc.Boot.vm
Change-Id: I9da1af535cb18cebed751ecab0e250780e2df377
|
|
The new LOOP_CONFIGURE ioctl set LO_FLAGS_DIRECT_IO flag even when
apex file opening failure with O_DIRECT flag, fix this.
Bug: 200339094
Test: boot normal with EROFS system image after adb remount
Signed-off-by: Huang Jianan <huangjianan@oppo.com>
Change-Id: I55e63ebbba0c3a51c8c9640beb18209142b1fe90
|
|
EROFS doesn't support DIO yet, let whitelist temporarily.
Bug: 158339527
Test: Boot with EROFS images on Linux 4.19
Signed-off-by: Gao Xiang <hsiangkao@redhat.com>
Change-Id: I6471479a6403d02f10840b17f3ee900745135a8c
|
|
rvc-qpr3-release
Change-Id: Ic9a62905855b2e27eb8d206ecd8949902d0ec0e9
|
|
Test: atest ApexTestCases
Bug: 183546040
Bug: 183545537
Change-Id: I4a9e412acefa5d364a241b3a3222af5848e4d946
Merged-In: I4a9e412acefa5d364a241b3a3222af5848e4d946
(cherry picked from commit 9e8da8f32ec1cefb427ef6cbbb885c3772f6a420)
|
|
rvc-qpr3-release
Change-Id: Ibf9fda7c4c4a5deab725fb8cd1c41ed9eef3587e
|
|
There might be devices that support updatable apex, but don't have
/metadata partition. For them we need to fallback to storing sessions on
/data/apex/sessions.
This change implements this logic by introducing GetSessionsDir static
method which will pick first existing directory between
/metadata/apex/sessions and /data/apex/sessions. The evaluation will
happen only once, all other calls to GetSessionsDir will return the
cached value.
Additionally, the logic for migrating sessions from /data/apex/sessions
to /metadata/apex/sessions is changed a little bit. Now apexd will
iterate over entires in /data/apex/sessions, and then recursively
copy their content to the corresponding directory under
/metadata/apex/sessions, and then delete the entry under
/data/apex/sessions. This way a directory created by init
(/data/apex/sessions) is kept, which makes it easier to write unit tests
for apexd.
Logic is implemented as function inside apexd_utils.h for the ease of
unit testing.
Test: atest ApexTestCases
Test: atest apexd_host_tests
Test: atest CtsStagedInstallHostTestCases
Bug: 169932155
Bug: 176314162
Merged-In: Ifea8840ee5f1e56428d80bbb3b4e5e078176a578
Change-Id: Ia5e31e53edb411a023c8b090b7eb53ae977adc3e
(cherry picked from commit 7ffc3f6bd74b0b5567e6425090e9d13b6f5d4172)
(cherry picked from commit 69e06a1ddf509e4fc0734e044655d2b876b2bf45)
|
|
This ioctl is a lot faster than LOOP_SET_FD/LOOP_SET_STATUS64, and
significantly improves boot time. It may not be supported on all
devices, so we need to maintain the "legacy" way of configuring loop
devices.
Bug: 148607611
Bug: 161575393
Test: boot on device with/without LOOP_CONFIGURE
Change-Id: Iea501fabc1b83fd4e90436fa04b45c7434c069a6
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/12034262
Change-Id: I0e5fa9ed2e437d82d2b33aff21dbd81869fdc76b
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/12034262
Change-Id: I1af10b995f132c0a8b860b4b74bf1ca06cf671ed
|
|
`deapexer extract` which uses `rdump` command of `debugfs` creates
`lost+found` directory as well. Because the directory is not necessary,
remove it after extraction.
Bug: 159711661
Test: deapexer extract <apex> <dir>
<dir> should not contain lost+found directory
Change-Id: I77800cb121371b796b940b5792dd16ced41da0fa
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11929818
Change-Id: Ib0ec8d88a6e0cff90be5f0e5dcf36fd90a6b006f
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11929818
Change-Id: I30cf508a67b31f4b9160990cc354dd56ce44f291
|
|
Cts shim apex is typically installed as a prebuilts.
Because prebuilt apexes don't support installing as "flattened", it
would fail to be installed when PRODUCT_INSTALL_EXTRA_FLATTENED_APEXES
is turned on(e.g. GSI targets)
com.android.apex.cts.shim.v1_with_prebuilts is a new target which can be
used in that case.
For example, we can explicitly add
com.android.apex.cts.shim.v1_with_prebuilts.flattened to
PRODUCT_PACKAGES so that flattened cts shim apex is installed in
/system_ext.
Bug: 158169437
Bug: 159392784
Test: m com.android.apex.cts.shim.v1_with_prebuilts.flattened
# should install the prebuilts of shim APKs
Change-Id: Ie4104b4fb92096677cf101000ff492fb8cedc0fd
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11835167
Change-Id: I487452671c62594ba715f49bd753a0e99601cca4
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11835167
Change-Id: I23571ad738bb26266c2eb4dafb5e70eacf6ffd44
|
|
Bug: 158889297
Test: m checkbuild
Change-Id: Ic4744faf135bbc80dbf0bac2c5ad772f6b451e63
|
|
e0be4c35ec am: 3503c0e9e7
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11734282
Change-Id: I1aef1ed24bf2e2573fbd01dcebb8508484df47f9
|
|
e0be4c35ec
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11734282
Change-Id: I87f0f5cb6f399eb2c5fdc64dd35837167fd7adb2
|
|
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11686955
Change-Id: I6211c0164184e67975a9d5a43400c594b31b3aa6
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11686955
Change-Id: I5f9db37342c70d8acde4568532bc4a1d5de78787
|
|
Fix: 158036322
Test: built flame-userdebug with m OVERRIDE_TARGET_FLATTEN_APEX=true, ran
atest CtsAppSecurityHostTestCases:android.appsecurity.cts.PrivilegedUpdateTests#testDisableUpdatedSystemApp
and verified that the cts shim apex is not installed
Change-Id: I9d558f2ad3409b5104a9b9fc0aebb28689a822d9
Merged-In: I9d558f2ad3409b5104a9b9fc0aebb28689a822d9
(cherry picked from commit c15cbac0d961c865aaecfbd9735b37613a3751b4)
|
|
- Add new APIs to the test sdkextensions module, and add a test app
that tries calling the new APIs
- Add sdkinfo to the test media apex as well as sdkext, and verify
the version gets bumped as expected
Bug: 149815613
Test: atest sdkextensions_e2e_test
Change-Id: I522d38d0a922fd4f5cb244ba9d61bdfd3bd3cacf
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11686954
Change-Id: I36857c966e58479fac93cc3606594a275eada3a3
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11686954
Change-Id: I72ad8ef2d218f070d390c74cbc4236df1fbd98f5
|
|
5aead81ac6
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11686953
Change-Id: I87a0a27f9daa2697538277597b76e052ed61beed
|
|
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/apex/+/11686953
Change-Id: I321f1b3210e0ee3683e572caf56b16cb8291b15e
|
|
Original change: undetermined
Change-Id: I928bd0debf007c186815bb2e99929a129fad1870
|
|
Original change: undetermined
Change-Id: Ie559fce73fd54bf7dd0053634521d7162c2e8b68
|
|
The shared directory is getting a bit messy, and I'm adding more
source to the SdkExtensions test.
Bug: 149815613
Test: atest sdkextensions_e2e_test
Change-Id: I32f76ccf0b455cc1c62282223c0c23be64e71664
|
|
For consistency with the rest of the module.
Bug: 149815613
Test: atest sdkextensions_e2e_tests
Change-Id: I5a80da23cc90e8f8dfcb7c3b205af475a1786e99
|
|
It didn't really lend itself well to extension, so refactor the code to
have util methods like install, reboot, uninstall that subclasses can
use to write more involved test cases.
While here, make some other improvements:
- remove double-triggering of additionalCheck()
- use Truth consistently instead of a weird mix
- other readability improvements, like shortening lines, tweaking msgs
Bug: 149815613
Test: atest sdkextensions_e2e_tests
Change-Id: I1900358743eb34282682608e04b6b9fe0f36f11c
|
|
rvc-dev am: 72bafdd2f3 am: 7d34ca25a6
Change-Id: I28456bc9d60df4e3cb23445c199af8ac6cd1c1a9
|
|
rvc-dev am: 72bafdd2f3
Change-Id: I4af1698902df14810d925844b7e99246e0540972
|
|
|
|
881eaef947 am: 6ccf1e16dd
Change-Id: I1305e6aa9ade6aa280ea1290bc35daf57c8007af
|
|
881eaef947
Change-Id: I37123942825a654286c804c46f37b32138d5a8bb
|
|
|
|
626a13f9ec
Change-Id: Ib37d139afc3abcef1cedb8da78d609a00f9981a7
|
|
Change-Id: I526f58bb98171fe189e8e5927799c43186d5defe
|
|
This has been failing since 85f60588d44baa1bd9cf066fabeb3f4b3f29e323.
Bug: 155771970
Bug: 157219515
Test: Treehugger (presubmit)
Merged-In: I88fe0a00c67d3c47b874544d0caec7b1715d97d4
Change-Id: I88fe0a00c67d3c47b874544d0caec7b1715d97d4
(cherry picked from commit e4a7a3a11fa980739c512ffc8d8c6a7d4f68b9f4)
|
|
The snapshots are no longer needed after restore is done.
We do this in keeping with the fact that apk/apex code data is deleted
immediately after the rollback is committed.
APK Snapshots will be handled in the next CL.
See go/rollbackmanager-snapshot-deletion for more details.
(Cherry-picked from d037d0fada1ab6ed534c5b3d3e460496b0f9d623)
Bug: 151805360
Test: atest ApexServiceTest
Merged-In: Ie2609d0a1d2f647227e3704cf8fbd01e0dd7f2e0
Change-Id: Ie2609d0a1d2f647227e3704cf8fbd01e0dd7f2e0
|
|
Both apexer and apexer_test apply sha256 to be algorithm of the hashtree.
This patch updates the command line 'avbtool' to apply sha256 in
apexer_test.py.
Fixes: 157447952
Test: atest --host apexer_test
Change-Id: I5e4986e0bc54cb87d9ba5cb8fb9b545d09dc1c1d
|
|
ab2e845177 am: d1344003e9
Change-Id: I29ad86620e44f3e7b77e9c25470bfcb818bf832e
|
|
Change-Id: Id934070323b88859dbd50b755caa7d28dd82a2e3
|