Re: qemu-kvm.git now live

Avi Kivity <[email protected]>
Newsgroups org.kernel.vger.kvm-ia64,org.kernel.vger.kvm,org.kernel.vger.kvm-ppc
Message-ID <[email protected]>
Jan Kiszka wrote:
>> 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.
>   

I think currently qemu simply stops calling vga_draw_graphic().  This 
makes sense for tcg since it needs to track dirty memory regardless (so 
it can invalidate TBs).  But for kvm we'll want to add an explicit channel.

Note that it isn't likely to make a huge difference: if you don't 
actively read-and-reset the dirty bitmap, kvm will keep the shadow ptes 
with write permission and you won't see any performance hit.  The only 
difference is whether large pages can be used or not.

>>> 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.
>   

Pushing things upstream is quite difficult because of the very different 
infrastructure.  It's unfortunate that upstream rewrote everything 
instead of changing things incrementally.  Rewrites are almost always a 
mistake since they throw away accumulated knowledge.

-- 
error compiling committee.c: too many arguments to function
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.