All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Hansen <dave.hansen@intel.com>
To: "Li, Liang Z" <liang.z.li@intel.com>, "mst@redhat.com" <mst@redhat.com>
Cc: "virtio-dev@lists.oasis-open.org"
	<virtio-dev@lists.oasis-open.org>,
	"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	"amit.shah@redhat.com" <amit.shah@redhat.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-mm@kvack.org" <linux-mm@kvack.org>,
	"pbonzini@redhat.com" <pbonzini@redhat.com>,
	"virtualization@lists.linux-foundation.org"
	<virtualization@lists.linux-foundation.org>,
	"dgilbert@redhat.com" <dgilbert@redhat.com>
Subject: Re: [RESEND PATCH v3 kernel 0/7] Extend virtio-balloon for fast (de)inflating & fast live migration
Date: Wed, 26 Oct 2016 11:11:19 -0700	[thread overview]
Message-ID: <5810F1C7.4060807__25553.5711454742$1477505504$gmane$org@intel.com> (raw)
In-Reply-To: <F2CBF3009FA73547804AE4C663CAB28E3A0FD034@shsmsx102.ccr.corp.intel.com>

On 10/26/2016 03:06 AM, Li, Liang Z wrote:
> I am working on Dave's new bitmap schema, I have finished the part of
> getting the 'hybrid scheme bitmap' and found the complexity was more
> than I expected. The main issue is more memory is required to save
> the 'hybrid scheme bitmap' beside that used to save the raw page
> bitmap, for the worst case, the memory required is 3 times than that
> in the previous implementation.

Really?  Could you please describe the scenario where this occurs?

> I am wondering if I should continue, as an alternative solution, how about using PFNs array when
> inflating/deflating only a few pages? Things will be much more
> simple.

Yes, using pfn lists is more efficient than using bitmaps for sparse
bitmaps.  Yes, there will be cases where it is preferable to just use
pfn lists vs. any kind of bitmap.

But, what does it matter?  At least with your current scheme where we go
out and collect get_unused_pages(), we do the allocation up front.  The
space efficiency doesn't matter at all for small sizes since we do the
constant-size allocation *anyway*.

I'm also pretty sure you can pack the pfn and page order into a single
64-bit word and have no bitmap for a given record.  That would make it
pack just as well as the old pfns alone.  Right?

  parent reply	other threads:[~2016-10-26 18:11 UTC|newest]

Thread overview: 117+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-21  6:24 [RESEND PATCH v3 kernel 0/7] Extend virtio-balloon for fast (de)inflating & fast live migration Liang Li
2016-10-21  6:24 ` [Qemu-devel] " Liang Li
2016-10-21  6:24 ` Liang Li
2016-10-21  6:24 ` Liang Li
2016-10-21  6:24 ` [RESEND PATCH v3 kernel 1/7] virtio-balloon: rework deflate to add page to a list Liang Li
2016-10-21  6:24   ` [Qemu-devel] " Liang Li
2016-10-21  6:24   ` Liang Li
2016-10-24 16:46   ` Dave Hansen
2016-10-24 16:46   ` Dave Hansen
2016-10-24 16:46     ` [Qemu-devel] " Dave Hansen
2016-10-24 16:46     ` Dave Hansen
2016-10-25  1:14     ` Li, Liang Z
2016-10-25  1:14       ` [Qemu-devel] " Li, Liang Z
2016-10-25  1:14       ` Li, Liang Z
2016-10-25  1:14       ` Li, Liang Z
2016-10-21  6:24 ` Liang Li
2016-10-21  6:24 ` [RESEND PATCH v3 kernel 2/7] virtio-balloon: define new feature bit and page bitmap head Liang Li
2016-10-21  6:24   ` [Qemu-devel] " Liang Li
2016-10-21  6:24   ` Liang Li
2016-10-24 16:51   ` Dave Hansen
2016-10-24 16:51     ` [Qemu-devel] " Dave Hansen
2016-10-24 16:51     ` Dave Hansen
2016-10-24 16:51     ` Dave Hansen
2016-10-25  1:21     ` Li, Liang Z
2016-10-25  1:21       ` [Qemu-devel] " Li, Liang Z
2016-10-25  1:21       ` Li, Liang Z
2016-10-25  1:21       ` Li, Liang Z
2016-10-26 15:35   ` Michael S. Tsirkin
2016-10-26 15:35     ` [Qemu-devel] " Michael S. Tsirkin
2016-10-26 15:35     ` Michael S. Tsirkin
2016-10-26 15:35     ` Michael S. Tsirkin
2016-10-21  6:24 ` Liang Li
2016-10-21  6:24 ` [RESEND PATCH v3 kernel 3/7] mm: add a function to get the max pfn Liang Li
2016-10-21  6:24   ` [Qemu-devel] " Liang Li
2016-10-21  6:24   ` Liang Li
2016-10-24 16:53   ` Dave Hansen
2016-10-24 16:53     ` [Qemu-devel] " Dave Hansen
2016-10-24 16:53     ` Dave Hansen
2016-10-25  1:24     ` Li, Liang Z
2016-10-25  1:24     ` Li, Liang Z
2016-10-25  1:24       ` [Qemu-devel] " Li, Liang Z
2016-10-25  1:24       ` Li, Liang Z
2016-10-25  1:24       ` Li, Liang Z
2016-10-24 16:53   ` Dave Hansen
2016-10-21  6:24 ` Liang Li
2016-10-21  6:24 ` [RESEND PATCH v3 kernel 4/7] virtio-balloon: speed up inflate/deflate process Liang Li
2016-10-21  6:24 ` Liang Li
2016-10-21  6:24   ` [Qemu-devel] " Liang Li
2016-10-21  6:24   ` Liang Li
2016-10-25  6:36   ` Michael S. Tsirkin
2016-10-25  6:36     ` [Qemu-devel] " Michael S. Tsirkin
2016-10-25  6:36     ` Michael S. Tsirkin
2016-10-25  6:36     ` Michael S. Tsirkin
2016-10-25  9:46     ` Li, Liang Z
2016-10-25  9:46       ` [Qemu-devel] " Li, Liang Z
2016-10-25  9:46       ` Li, Liang Z
2016-10-25  9:46     ` Li, Liang Z
2016-10-21  6:24 ` [RESEND PATCH v3 kernel 5/7] mm: add the related functions to get unused page Liang Li
2016-10-21  6:24   ` [Qemu-devel] " Liang Li
2016-10-21  6:24   ` Liang Li
2016-10-21  6:24 ` Liang Li
2016-10-21  6:24 ` [RESEND PATCH v3 kernel 6/7] virtio-balloon: define feature bit and head for misc virt queue Liang Li
2016-10-21  6:24 ` Liang Li
2016-10-21  6:24   ` [Qemu-devel] " Liang Li
2016-10-21  6:24   ` Liang Li
2016-10-27 18:29   ` Michael S. Tsirkin
2016-10-27 18:29     ` [Qemu-devel] " Michael S. Tsirkin
2016-10-27 18:29     ` Michael S. Tsirkin
2016-10-27 18:29   ` Michael S. Tsirkin
2016-10-21  6:24 ` [RESEND PATCH v3 kernel 7/7] virtio-balloon: tell host vm's unused page info Liang Li
2016-10-21  6:24 ` Liang Li
2016-10-21  6:24   ` [Qemu-devel] " Liang Li
2016-10-21  6:24   ` Liang Li
2016-10-21 17:25 ` [RESEND PATCH v3 kernel 0/7] Extend virtio-balloon for fast (de)inflating & fast live migration Dave Hansen
2016-10-21 17:25   ` [Qemu-devel] " Dave Hansen
2016-10-21 17:25   ` Dave Hansen
2016-10-21 17:25   ` Dave Hansen
2016-10-21 19:44   ` Michael S. Tsirkin
2016-10-21 19:44   ` Michael S. Tsirkin
2016-10-21 19:44     ` [Qemu-devel] " Michael S. Tsirkin
2016-10-21 19:44     ` Michael S. Tsirkin
2016-10-23 11:29     ` Li, Liang Z
2016-10-23 11:29     ` Li, Liang Z
2016-10-23 11:29       ` [Qemu-devel] " Li, Liang Z
2016-10-23 11:29       ` Li, Liang Z
2016-10-25  3:52       ` Michael S. Tsirkin
2016-10-25  3:52       ` Michael S. Tsirkin
2016-10-25  3:52         ` [Qemu-devel] " Michael S. Tsirkin
2016-10-25  3:52         ` Michael S. Tsirkin
2016-10-25  3:52         ` Michael S. Tsirkin
2016-10-26 10:06   ` Li, Liang Z
2016-10-26 10:06     ` [Qemu-devel] " Li, Liang Z
2016-10-26 10:06     ` Li, Liang Z
2016-10-26 10:06     ` Li, Liang Z
2016-10-26 10:13     ` Li, Liang Z
2016-10-26 10:13     ` Li, Liang Z
2016-10-26 10:13       ` [Qemu-devel] " Li, Liang Z
2016-10-26 10:13       ` Li, Liang Z
2016-10-26 10:13       ` Li, Liang Z
2016-10-26 18:15       ` Dave Hansen
2016-10-26 18:15         ` [Qemu-devel] " Dave Hansen
2016-10-26 18:15         ` Dave Hansen
2016-10-26 18:15         ` Dave Hansen
2016-10-27  0:36         ` Li, Liang Z
2016-10-27  0:36         ` Li, Liang Z
2016-10-27  0:36           ` [Qemu-devel] " Li, Liang Z
2016-10-27  0:36           ` Li, Liang Z
2016-10-27  0:36           ` Li, Liang Z
2016-10-26 18:11     ` Dave Hansen
2016-10-26 18:11       ` [Qemu-devel] " Dave Hansen
2016-10-26 18:11       ` Dave Hansen
2016-10-27  0:51       ` Li, Liang Z
2016-10-27  0:51         ` [Qemu-devel] " Li, Liang Z
2016-10-27  0:51         ` Li, Liang Z
2016-10-27  0:51         ` Li, Liang Z
2016-10-26 18:11     ` Dave Hansen [this message]
2016-10-26 10:06   ` Li, Liang Z

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='5810F1C7.4060807__25553.5711454742$1477505504$gmane$org@intel.com' \
    --to=dave.hansen@intel.com \
    --cc=amit.shah@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=liang.z.li@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=virtio-dev@lists.oasis-open.org \
    --cc=virtualization@lists.linux-foundation.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.