Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 25da9074 authored by Robert Greenwalt's avatar Robert Greenwalt
Browse files

DO NOT MERGE - Change how we revert data modem allocation.

The old code did a START, APPLY, FINISH sequence,
taking each modem to each step before taking any further.
When it had an error (generally at the APPLY step) it
simply used FINISH with the old configuration to indicate
the rollback.  However the 3 stages mean stuff..  generally
the START is an indication to release resources, APPLY
means to grab the new resources and FINISH means others have
grabbed their resources successfully.  The reason for the
careful staging is because one modem can't grab a resource
until it has been released by the other modem that had it
grabbed so we have to release all first.

With this in mind, the abort should look like START,
APPLY(err), START, APPLY(old-config), FINISH.  This causes
anybody who'd successfully passed the first APPLY to release
their resources again so the rollback could happen in the
second APPLY.

Unfortunately we've already shipped with the existing
semantics.  A compromise is START, APPLY (err), FINISH
(old-config, just like the current rollback works), START,
APPLY (old-config), FINISH (old-config).  This should
work on existing devices and devices needing the release.

bug:19430895
Change-Id: I6959c51923a6843fe1c6f47c2d987de5ccc121cf
parent 40528889
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment