Open
Description
What
Currently the ResourceAllocator is not restored from the snapshot, but its state is rebuilt by replaying allocations with ExactMatch
(example).
Why
The current pattern for restoring the state is cumbersome and prone to error. For example, acpi
and mptable
allocations in the system memory are not replayed, meaning that the allocator state would be different after restore. It works fine for now because we don't allow for changing state after restore, but new features may be impacted by this, like hotplugging.
How
We should serialize its state in the snapshot, as proposed in rust-vmm/vm-allocator#40, and remove the replayed ExactMatch
allocations.