* John Snow (js...@redhat.com) wrote: > Is there a convenient way of "pausing" or stalling a live migration to > allow methodical testing of race conditions? > > I'd like to instrument something along the lines of: > > (1) Live migration begins. > (2) migration is artificially halted or paused, but QEMU is allowed to run. > (3) Some additional qtest/QMP commands are received and processed. > (4) migration is allowed to resume. > > Does anyone have perhaps even test patches to instrument this sort of > thing, or is it up to detective john to add it if he wants it?
If you catch it during the iterative stage you can probably just gdb or ctrl-z the destination and the migration thread should block; or alternatively migrate to a pipe and similarly ctrl-z what ever is there. Mostly I do a few things: 1) use tracing to follow it mostly just stderr tracing, but I've done systemtap scripts for some hairy stuff. 2) Set the migration speed (migrate_set_speed) very very low 3) Keep the source busy dirtying memory. Of course that does lead to the question of what fun problem are you trying to debug? Dave > --js -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK