On 7/30/2020 12:14 PM, Eric Blake wrote: > On 7/30/20 10:14 AM, Steve Sistare wrote: >> Provide the cprload QMP command. The VM is created from the file produced >> by the cprsave command. Guest RAM is restored in-place from the shared >> memory backend file, and guest block devices are used as is. The contents >> of such devices must not be modified between the cprsave and cprload >> operations. If the VM was running at cprsave time, then VM execution >> resumes. > > Is it always wise to unconditionally resume, or might this command need an > additional optional knob that says what state (paused or running) to move > into?
This can already be done. Issue a stop command before cprsave, then cprload will finish in a paused state. Also, cprsave re-execs and leaves the guest in a paused state. One can send device add commands, then send cprload which continues . >> Syntax: >> {'command':'cprload', 'data':{'file':'str'}} >> >> Signed-off-by: Steve Sistare <steven.sist...@oracle.com> >> Signed-off-by: Maran Wilson <maran.wil...@oracle.com> >> --- > >> +++ b/qapi/migration.json >> @@ -1635,3 +1635,14 @@ >> ## >> { 'command': 'cprsave', 'data': { 'file': 'str', 'mode': 'str' } } >> +## >> +# @cprload: >> +# >> +# Start virtual machine from checkpoint file that was created earlier using >> +# the cprsave command. >> +# >> +# @file: name of checkpoint file >> +# >> +# Since 5.0 > > another 5.2 instance. I'll quit pointing it out for the rest of the series. Will find and fix all, thanks. - Steve