On Wed, Nov 17, 2010 at 8:49 PM, Michael S. Tsirkin <m...@redhat.com> wrote:
> On Wed, Nov 17, 2010 at 08:38:25PM +0000, Stefan Hajnoczi wrote:
>> On Wed, Nov 17, 2010 at 6:01 PM, Michael S. Tsirkin <m...@redhat.com> wrote:
>> > On Wed, Nov 17, 2010 at 04:19:25PM +0000, Stefan Hajnoczi wrote:
>> >> The v4 version includes:
>> >>  * Simpler start/stop ioeventfd mechanism using bool ioeventfd_started 
>> >> state
>> >>  * Support for migration
>> >>  * Handle deassign race condition to avoid dropping a virtqueue kick
>> >>  * Add missing kvm_enabled() check to kvm_has_many_ioeventfds()
>> >>  * Documentation updates for qdev -device with ioeventfd=on|off
>> >
>> > Anthony, could you pls remind me what did you say
>> > about need to stop these threads on migration vmstop?
>> > Or am I confusing this with something else?
>>
>> Two points about the VM change state:
>> 1. It is used to bring up virtio-ioeventfd on the destination host
>> after migration.
>> 2. It handles the race condition where a virtqueue kick is dropped
>> because we deassign the ioeventfd on the source host.
>>
>> So I've implemented the VM change state to get correct migration behavior.
>>
>> The discussion you had with Anthony was more about events happening
>> while the VM is paused and how that could interfere with guest state
>> for migration IIRC.
>>
>> Stefan
>
> Exactly. Could your patches cause a situation where block virtio ring
> is used after migration stopped a VM?

No, when the VM is stopped we deassing the ioeventfd and remove its fd
handler.  Because the fd handler is removed no more events will be
processed.

Stefan

Reply via email to