Re: Question on skip_emulated_instructions()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Avi Kivity wrote:
On 04/08/2010 10:30 AM, Yoshiaki Tamura wrote:

To answer your question, it should be possible to implement.
The down side is that after going into KVM to make the guest state to
consistent, we need to go back to qemu to actually transfer the guest,
and this bounce would introduce another overhead if I'm understanding
correctly.

Yes. It should be around a microsecond or so, given you will issue I/O
after this I don't think this will affect performance.

That is a good news.

And yes, all I need is some consistent state to resume VM from, which
must be able to continue I/O operations, like writing to disks and
sending ack over the network. If I can guarantee this, sending the VM
state after completing output is acceptable.


I suggest you start with this. If it turns out performance is severely
impacted, we can revisit instruction completion. If performance is
satisfactory, then we'll be able to run Kemari with older kernels.

I was almost to say yes here, but let me ask one more question.
BTW, thank you two for taking time for this discussion which isn't a topic on KVM itself.

If I transferred a VM after I/O operations, let's say the VM sent an TCP ACK to the client, and if a hardware failure occurred to the primary during the VM transferring *but the client received the TCP ACK*, the secondary will resume from the previous state, and it may need to receive some data from the client. However, because the client has already receiver TCP ACK, it won't resend the data to the secondary. It looks this data is going to be dropped. Am I missing some point here?

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux