On Thu, Jul 06, 2017 at 11:31:35AM -0300, Daniel Henrique Barboza wrote:
On 07/05/2017 06:53 PM, Daniel Henrique Barboza wrote:
Worth a try. I'll see if I can make a POC of this DRC reset at incoming
migration time.
Just played a little with the idea of manual reset during migration. I've
created a
POC that resets the CPU DRCs in a pre_load hook.
Ok. I'm not sure does the pre_load hook get called for objects where
nothing ends up being sent in the migration stream?
Then I've done the same
experiment - device_add on both source and target before the migration,
hot unplug the device after migration is completed. The hot unplug worked as
expected in both QEMU and guest.
That's encouraging.
To minimize the impact I am resetting only the DRCs of the CPUs that were
hotplugged
in the target instead of resetting everybody.
That sounds like more trouble than it's worth, I think it'll be easier
and safer to reset all DRCs.
I'll see if this solution works for LMBs and PCI devices. In case
affirmative, and
if we are fine with this solution of resetting the DRCs in pre_load (not
sure if pre_load is
the right place for doing it - suggestions welcome), I can send a patch to
be applied on top
of this series.
Thanks,
Daniel