|
From: | Avi Kivity |
Subject: | [Qemu-devel] Re: Live migration broken when under heavy IO |
Date: | Tue, 16 Jun 2009 16:12:13 +0300 |
User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1b3pre) Gecko/20090513 Fedora/3.0-2.3.beta2.fc11 Lightning/1.0pre Thunderbird/3.0b2 |
On 06/16/2009 03:57 PM, Anthony Liguori wrote:
The tricky bit is that this has to happen at the device layer because the opaques cannot be saved in a meaningful way.Do you mean the device has to record all cancelled requests and replay them? I think we can do it at the block layer (though we have to avoid it for nested requests).In order to complete the requests, you have to call a callback and pass an opaque with the results. The callback/opaque cannot be saved in the block layer in a meaningful way.
You're right, of course. I guess we'll have to cancel any near term cancellation plans.
We could change the opaque to be something pre-registered (e.g. the device state object, which we don't need to save/restore) and pass in addition an integer request tag. These would be migratable. The device would be responsible for saving tags and their associated information (perhaps through a common API).
-- error compiling committee.c: too many arguments to function
[Prev in Thread] | Current Thread | [Next in Thread] |