On 09/14/2010 02:51 PM, Anthony Liguori wrote:
On 09/14/2010 04:47 AM, Avi Kivity wrote:
On 09/13/2010 04:34 PM, Anthony Liguori wrote:
On 09/13/2010 09:13 AM, Kevin Wolf wrote:
I think the only real advantage is that we fix NFS migration, right?
That's the one that we know about, yes.
The rest is not a specific scenario, but a strong feeling that
having an
image opened twice at the same time feels dangerous.
We've never really had clear semantics about live migration and
block driver's life cycles. At a high level, for live migration to
work, we need the following sequence:
1) src> flush all pending writes to disk
2) <barrier>
3) dst> invalidate any cached data
4) dst> start guest
That's pretty complicated, compared to
1) src> close
1.5) <barrier>
2) dst> open
3) dst> start guest
You need to make sure the open happens *after* the close.
You're just using close to flush all pending writes or open to
invalidate any cached data.
Right, that's simpler than teaching all block format drivers about
invalidating any cached data, or using nfs locks to force the host to do
the same.
It also complies with close-to-open consistency without relying on
implementation details.
--
error compiling committee.c: too many arguments to function