Enable io_uring feature for virtual A/B OTA
snapuserd: Use io_uring READ/WRITE opcodes for snapshot merge. Specifically, it is used only for readahead and ordered ops code path. Snapshot merge perf: =========================================================== Incremental OTA of 300M between two git_master branches on Pixel 6: =========================================================== On Android S (with dm-snapshot): ~15 minutes: update_engine: [INFO:cleanup_previous_update_action.cc(330)] Merge finished with state MergeCompleted. update_engine: [INFO:cleanup_previous_update_action.cc(130)] Stopping/suspending/completing CleanupPreviousUpdateAction update_engine: [INFO:cleanup_previous_update_action.cc(501)] Reporting merge stats: MergeCompleted in 926508ms (resumed 0 times), using 0 bytes of COW image. =========================================================== On Android T (with io_uring: ~38 seconds): update_engine: [INFO:cleanup_previous_update_action.cc(330)] Merge finished with state MergeCompleted. update_engine: [INFO:cleanup_previous_update_action.cc(130)] Stopping/suspending/completing CleanupPreviousUpdateAction update_engine: [INFO:cleanup_previous_update_action.cc(501)] Reporting merge stats: MergeCompleted in 38868ms (resumed 0 times), using 0 bytes of COW image. =========================================================== Bug: 202784286 Test: Full/Incremental OTA Signed-off-by: Akilesh Kailash <akailash@google.com> Change-Id: Ia6efff32898cdc6b683ca49c233ef45e8cd732e7
This commit is contained in:
@@ -18,6 +18,7 @@ $(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota/launch_with_ven
|
||||
|
||||
PRODUCT_VENDOR_PROPERTIES += ro.virtual_ab.compression.enabled=true
|
||||
PRODUCT_VENDOR_PROPERTIES += ro.virtual_ab.userspace.snapshots.enabled=true
|
||||
PRODUCT_VENDOR_PROPERTIES += ro.virtual_ab.io_uring.enabled=true
|
||||
PRODUCT_VIRTUAL_AB_COMPRESSION := true
|
||||
PRODUCT_PACKAGES += \
|
||||
snapuserd.vendor_ramdisk \
|
||||
|
Reference in New Issue
Block a user