public inbox for kvm-ia64@vger.kernel.org
 help / color / mirror / Atom feed
From: Jan Kiszka <jan.kiszka@siemens.com>
To: kvm-ia64@vger.kernel.org
Subject: Re: qemu-kvm.git now live
Date: Wed, 29 Apr 2009 15:42:36 +0000	[thread overview]
Message-ID: <49F8756C.6080503@siemens.com> (raw)
In-Reply-To: <49F08BD0.6000706@redhat.com>

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

  parent reply	other threads:[~2009-04-29 15:42 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-23 15:40 qemu-kvm.git now live Avi Kivity
2009-04-29  8:49 ` Jan Kiszka
2009-04-29 10:42 ` Avi Kivity
2009-04-29 10:55 ` Jan Kiszka
2009-04-29 11:12 ` Avi Kivity
2009-04-29 11:31 ` Jan Kiszka
2009-04-29 14:40 ` Avi Kivity
2009-04-29 15:42 ` Jan Kiszka [this message]
2009-04-30  9:12 ` Avi Kivity
2009-04-30  9:29 ` Jan Kiszka
2009-04-30 10:54 ` Avi Kivity
2009-04-30 15:32 ` Jan Kiszka
2009-04-30 15:43 ` Avi Kivity

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49F8756C.6080503@siemens.com \
    --to=jan.kiszka@siemens.com \
    --cc=kvm-ia64@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox