All of lore.kernel.org
 help / color / mirror / Atom feed
From: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
To: Avi Kivity <avi@redhat.com>
Cc: mtosatti@redhat.com, kvm@vger.kernel.org, fernando@oss.ntt.co.jp
Subject: Re: [PATCH RFC 4/5] KVM: add new members to the memory slot for double buffering of bitmaps
Date: Mon, 12 Apr 2010 11:15:51 +0900	[thread overview]
Message-ID: <4BC28257.2080003@oss.ntt.co.jp> (raw)
In-Reply-To: <4BC203C8.9010201@redhat.com>

(2010/04/12 2:15), Avi Kivity wrote:
> On 04/09/2010 12:35 PM, Takuya Yoshikawa wrote:
>> Currently, x86 vmalloc()s a dirty bitmap every time when we swich
>> to the next dirty bitmap. To avoid this, we use the double buffering
>> technique: we also move the bitmaps to userspace, so that extra
>> bitmaps will not use the precious kernel resource.
>>
>> This idea is based on Avi's suggestion.
>>
>
> Please fold this into the next patch. Introducing new data members
> without their users is hard to follow.

OK.

>
>
>> #define KVM_MAX_VCPUS 64
>> #define KVM_MEMORY_SLOTS 32
>> /* memory slots that does not exposed to userspace */
>> diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
>> index dd6bcf4..07092d6 100644
>> --- a/include/linux/kvm_host.h
>> +++ b/include/linux/kvm_host.h
>> @@ -110,7 +110,13 @@ struct kvm_memory_slot {
>> unsigned long npages;
>> unsigned long flags;
>> unsigned long *rmap;
>> +#ifndef __KVM_HAVE_USER_DIRTYBITMAP
>> unsigned long *dirty_bitmap;
>> +#else
>> + unsigned long __user *dirty_bitmap;
>> + unsigned long __user *dirty_bitmap_old;
>> + bool is_dirty;
>> +#endif
>
> And, if we make set_user_bit() generic, we don't need the ifdefs.

OK, but we have one problem: ia64. I checked all architectures' dirty bitmap
implementations and thought generalizing this work is not so hard except for
ia64. It's already too different from other parts.

#ifdef CONFIG_IA64
unsigned long *dirty_bitmap;
#else
...
#endif

is acceptable?

>


  reply	other threads:[~2010-04-12  2:12 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-09  9:27 [PATCH RFC 0/5] KVM: Moving dirty bitmaps to userspace: double buffering approach Takuya Yoshikawa
2010-04-09  9:30 ` [PATCH RFC 1/5] KVM: introduce a set_bit function for bitmaps in user space Takuya Yoshikawa
2010-04-11 17:08   ` Avi Kivity
2010-04-12  1:29     ` Takuya Yoshikawa
2010-04-12  9:12       ` Avi Kivity
2010-04-21  4:56     ` Fernando Luis Vázquez Cao
2010-04-21  8:09       ` Avi Kivity
2010-04-09  9:32 ` [PATCH RFC 2/5] KVM: use a rapper function to calculate the sizes of dirty bitmaps Takuya Yoshikawa
2010-04-11 17:12   ` Avi Kivity
2010-04-12  1:53     ` Takuya Yoshikawa
2010-04-09  9:34 ` [PATCH RFC 3/5] KVM: Use rapper functions to create and destroy " Takuya Yoshikawa
2010-04-11 17:13   ` Avi Kivity
2010-04-12  2:07     ` Takuya Yoshikawa
2010-04-12  9:13       ` Avi Kivity
2010-04-09  9:35 ` [PATCH RFC 4/5] KVM: add new members to the memory slot for double buffering of bitmaps Takuya Yoshikawa
2010-04-11 17:15   ` Avi Kivity
2010-04-12  2:15     ` Takuya Yoshikawa [this message]
2010-04-12  9:19       ` Avi Kivity
2010-04-12  9:30         ` Takuya Yoshikawa
2010-04-09  9:38 ` [PATCH RFC 5/5] KVM: This is the main part of the "moving dirty bitmaps to user space" Takuya Yoshikawa
2010-04-11 17:21   ` Avi Kivity
2010-04-12  2:29     ` Takuya Yoshikawa
2010-04-12  9:22       ` Avi Kivity
2010-04-12 20:55         ` Fernando Luis Vazquez Cao
2010-04-12 21:00           ` 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=4BC28257.2080003@oss.ntt.co.jp \
    --to=yoshikawa.takuya@oss.ntt.co.jp \
    --cc=avi@redhat.com \
    --cc=fernando@oss.ntt.co.jp \
    --cc=kvm@vger.kernel.org \
    --cc=mtosatti@redhat.com \
    /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.