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