diff options
Diffstat (limited to 'common/dynamic_partition_control_interface.h')
-rw-r--r-- | common/dynamic_partition_control_interface.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/common/dynamic_partition_control_interface.h b/common/dynamic_partition_control_interface.h index a878f2e9..d5db9bcd 100644 --- a/common/dynamic_partition_control_interface.h +++ b/common/dynamic_partition_control_interface.h @@ -98,10 +98,26 @@ class DynamicPartitionControlInterface { // - If any error, but caller should retry after reboot, action completes with // kError. // - If any irrecoverable failures, action completes with kDeviceCorrupted. + // + // See ResetUpdate for differences between CleanuPreviousUpdateAction and + // ResetUpdate. virtual std::unique_ptr<AbstractAction> GetCleanupPreviousUpdateAction( BootControlInterface* boot_control, PrefsInterface* prefs, CleanupPreviousUpdateActionDelegateInterface* delegate) = 0; + + // Called after an unwanted payload has been successfully applied and the + // device has not yet been rebooted. + // + // For snapshot updates (Virtual A/B), it calls + // DeltaPerformer::ResetUpdateProgress(false /* quick */) and + // frees previously allocated space; the next update will need to be + // started over. + // + // Note: CleanupPreviousUpdateAction does not do anything if an update is in + // progress, while ResetUpdate() forcefully free previously + // allocated space for snapshot updates. + virtual bool ResetUpdate(PrefsInterface* prefs) = 0; }; } // namespace chromeos_update_engine |