Re: qemu-kvm.git now live

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

 



Avi Kivity wrote:
> Jan Kiszka wrote:
>>> If migration disables dirty memory logging, it must keep the vga logging
>>> enabled, and vice versa.
>>>     
>>
>> So we need some notifier callbacks on slot changes so that all users can
>> re-enable dirty logging after the update as required. 
> 
> Simpler to do reference counting.  When a user enables logging for a
> memory range, the refcount for all slots containing that range gets
> bumped.  When a user enables logging for all of memory, a global
> refcount is bumped.  For a given slot, dirty logging is enabled if
> either the slot logging refcount or the global logging refcount is nonzero.

OK, but then we just need to check for that global flag after
registering/modifying slots and enable logging unconditionally. That's
indeed a simple add-on.

> 
> That's sort of what's implemented in qemu-kvm.git.  In qemu.git vga
> logging does not get disabled, which is really broken.  It prevents
> optimizations like disabling logging when the screen is not displayed to
> a human.

Is there a channel that tells vga "nothing will be displayed"? I may
have missed it while removing all those disable-logging-as-it-may-
confuse-slot-management hooks.

> 
>> Where/how does the
>> migration code disable dirty logging?
>>   
> 
> Should be phase 3 of ram_save_live().

But only in qemu-kvm. What is the plan about pushing it upstream? Then
we could discuss how to extend the exiting support best.

Jan

-- 
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux
--
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