From: Takuya Yoshikawa <takuya.yoshikawa@gmail.com>
To: kvm-ia64@vger.kernel.org
Subject: [RFC][PATCH 5/12] x86: introduce __set_bit() like function for
Date: Tue, 04 May 2010 13:02:47 +0000 [thread overview]
Message-ID: <20100504220247.2e97ac01.takuya.yoshikawa@gmail.com> (raw)
During the work of KVM's dirty page logging optimization, we encountered
the need of manipulating bitmaps in user space efficiantly. To achive this,
we introduce a uaccess function for setting a bit in user space following
Avi's suggestion.
KVM is now using dirty bitmaps for live-migration and VGA. Although we need
to update them from kernel side, copying them every time for updating the
dirty log is a big bottleneck. Especially, we tested that zero-copy bitmap
manipulation improves responses of GUI manipulations a lot.
We also found one similar need in drivers/vhost/vhost.c in which the author
implemented set_bit_to_user() locally using inefficient functions: see TODO
at the top of that.
Probably, this kind of need would be common for virtualization area.
So we introduce a macro set_bit_user_non_atomic() following the implementation
style of x86's uaccess functions.
Note: there is a one restriction to this macro: bitmaps must be 64-bit
aligned (see the comment in this patch).
Signed-off-by: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
Signed-off-by: Fernando Luis Vazquez Cao <fernando@oss.ntt.co.jp>
CC: Avi Kivity <avi@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
CC: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
---
arch/x86/include/asm/uaccess.h | 39 +++++++++++++++++++++++++++++++++++++++
1 files changed, 39 insertions(+), 0 deletions(-)
diff --git a/arch/x86/include/asm/uaccess.h b/arch/x86/include/asm/uaccess.h
index abd3e0e..3138e65 100644
--- a/arch/x86/include/asm/uaccess.h
+++ b/arch/x86/include/asm/uaccess.h
@@ -98,6 +98,45 @@ struct exception_table_entry {
extern int fixup_exception(struct pt_regs *regs);
+/**
+ * set_bit_user_non_atomic: - set a bit of a bitmap in user space.
+ * @nr: Bit offset.
+ * @addr: Base address of a bitmap in user space.
+ *
+ * Context: User context only. This function may sleep.
+ *
+ * This macro set a bit of a bitmap in user space.
+ *
+ * Restriction: the bitmap pointed to by @addr must be 64-bit aligned:
+ * the kernel accesses the bitmap by its own word length, so bitmaps
+ * allocated by 32-bit processes may cause fault.
+ *
+ * Returns zero on success, or -EFAULT on error.
+ */
+#define __set_bit_user_non_atomic_asm(nr, addr, err, errret) \
+ asm volatile("1: bts %1,%2\n" \
+ "2:\n" \
+ ".section .fixup,\"ax\"\n" \
+ "3: mov %3,%0\n" \
+ " jmp 2b\n" \
+ ".previous\n" \
+ _ASM_EXTABLE(1b, 3b) \
+ : "=r"(err) \
+ : "r" (nr), "m" (__m(addr)), "i" (errret), "0" (err))
+
+#define set_bit_user_non_atomic(nr, addr) \
+({ \
+ int __ret_sbu; \
+ \
+ might_fault(); \
+ if (access_ok(VERIFY_WRITE, addr, nr/8 + 1)) \
+ __set_bit_user_non_atomic_asm(nr, addr, __ret_sbu, -EFAULT);\
+ else \
+ __ret_sbu = -EFAULT; \
+ \
+ __ret_sbu; \
+})
+
/*
* These are the main single-value transfer routines. They automatically
* use the right size if we just have the right pointer type.
--
1.7.0.4
WARNING: multiple messages have this Message-ID (diff)
From: Takuya Yoshikawa <takuya.yoshikawa@gmail.com>
To: Takuya Yoshikawa <takuya.yoshikawa@gmail.com>
Cc: avi@redhat.com, mtosatti@redhat.com, agraf@suse.de,
yoshikawa.takuya@oss.ntt.co.jp, fernando@oss.ntt.co.jp,
kvm@vger.kernel.org, kvm-ppc@vger.kernel.org,
kvm-ia64@vger.kernel.org, tglx@linutronix.de, mingo@redhat.com,
hpa@zytor.com, x86@kernel.org, benh@kernel.crashing.org,
paulus@samba.org, linuxppc-dev@ozlabs.org, arnd@arndb.de,
linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [RFC][PATCH 5/12] x86: introduce __set_bit() like function for
Date: Tue, 04 May 2010 13:02:47 +0000 [thread overview]
Message-ID: <20100504220247.2e97ac01.takuya.yoshikawa@gmail.com> (raw)
In-Reply-To: <20100504215645.6448af8f.takuya.yoshikawa@gmail.com>
During the work of KVM's dirty page logging optimization, we encountered
the need of manipulating bitmaps in user space efficiantly. To achive this,
we introduce a uaccess function for setting a bit in user space following
Avi's suggestion.
KVM is now using dirty bitmaps for live-migration and VGA. Although we need
to update them from kernel side, copying them every time for updating the
dirty log is a big bottleneck. Especially, we tested that zero-copy bitmap
manipulation improves responses of GUI manipulations a lot.
We also found one similar need in drivers/vhost/vhost.c in which the author
implemented set_bit_to_user() locally using inefficient functions: see TODO
at the top of that.
Probably, this kind of need would be common for virtualization area.
So we introduce a macro set_bit_user_non_atomic() following the implementation
style of x86's uaccess functions.
Note: there is a one restriction to this macro: bitmaps must be 64-bit
aligned (see the comment in this patch).
Signed-off-by: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
Signed-off-by: Fernando Luis Vazquez Cao <fernando@oss.ntt.co.jp>
CC: Avi Kivity <avi@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
CC: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
---
arch/x86/include/asm/uaccess.h | 39 +++++++++++++++++++++++++++++++++++++++
1 files changed, 39 insertions(+), 0 deletions(-)
diff --git a/arch/x86/include/asm/uaccess.h b/arch/x86/include/asm/uaccess.h
index abd3e0e..3138e65 100644
--- a/arch/x86/include/asm/uaccess.h
+++ b/arch/x86/include/asm/uaccess.h
@@ -98,6 +98,45 @@ struct exception_table_entry {
extern int fixup_exception(struct pt_regs *regs);
+/**
+ * set_bit_user_non_atomic: - set a bit of a bitmap in user space.
+ * @nr: Bit offset.
+ * @addr: Base address of a bitmap in user space.
+ *
+ * Context: User context only. This function may sleep.
+ *
+ * This macro set a bit of a bitmap in user space.
+ *
+ * Restriction: the bitmap pointed to by @addr must be 64-bit aligned:
+ * the kernel accesses the bitmap by its own word length, so bitmaps
+ * allocated by 32-bit processes may cause fault.
+ *
+ * Returns zero on success, or -EFAULT on error.
+ */
+#define __set_bit_user_non_atomic_asm(nr, addr, err, errret) \
+ asm volatile("1: bts %1,%2\n" \
+ "2:\n" \
+ ".section .fixup,\"ax\"\n" \
+ "3: mov %3,%0\n" \
+ " jmp 2b\n" \
+ ".previous\n" \
+ _ASM_EXTABLE(1b, 3b) \
+ : "=r"(err) \
+ : "r" (nr), "m" (__m(addr)), "i" (errret), "0" (err))
+
+#define set_bit_user_non_atomic(nr, addr) \
+({ \
+ int __ret_sbu; \
+ \
+ might_fault(); \
+ if (access_ok(VERIFY_WRITE, addr, nr/8 + 1)) \
+ __set_bit_user_non_atomic_asm(nr, addr, __ret_sbu, -EFAULT);\
+ else \
+ __ret_sbu = -EFAULT; \
+ \
+ __ret_sbu; \
+})
+
/*
* These are the main single-value transfer routines. They automatically
* use the right size if we just have the right pointer type.
--
1.7.0.4
WARNING: multiple messages have this Message-ID (diff)
From: Takuya Yoshikawa <takuya.yoshikawa@gmail.com>
To: Takuya Yoshikawa <takuya.yoshikawa@gmail.com>
Cc: avi@redhat.com, mtosatti@redhat.com, agraf@suse.de,
yoshikawa.takuya@oss.ntt.co.jp, fernando@oss.ntt.co.jp,
kvm@vger.kernel.org, kvm-ppc@vger.kernel.org,
kvm-ia64@vger.kernel.org, tglx@linutronix.de, mingo@redhat.com,
hpa@zytor.com, x86@kernel.org, benh@kernel.crashing.org,
paulus@samba.org, linuxppc-dev@ozlabs.org, arnd@arndb.de,
linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [RFC][PATCH 5/12] x86: introduce __set_bit() like function for bitmaps in user space
Date: Tue, 4 May 2010 22:02:47 +0900 [thread overview]
Message-ID: <20100504220247.2e97ac01.takuya.yoshikawa@gmail.com> (raw)
In-Reply-To: <20100504215645.6448af8f.takuya.yoshikawa@gmail.com>
During the work of KVM's dirty page logging optimization, we encountered
the need of manipulating bitmaps in user space efficiantly. To achive this,
we introduce a uaccess function for setting a bit in user space following
Avi's suggestion.
KVM is now using dirty bitmaps for live-migration and VGA. Although we need
to update them from kernel side, copying them every time for updating the
dirty log is a big bottleneck. Especially, we tested that zero-copy bitmap
manipulation improves responses of GUI manipulations a lot.
We also found one similar need in drivers/vhost/vhost.c in which the author
implemented set_bit_to_user() locally using inefficient functions: see TODO
at the top of that.
Probably, this kind of need would be common for virtualization area.
So we introduce a macro set_bit_user_non_atomic() following the implementation
style of x86's uaccess functions.
Note: there is a one restriction to this macro: bitmaps must be 64-bit
aligned (see the comment in this patch).
Signed-off-by: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
Signed-off-by: Fernando Luis Vazquez Cao <fernando@oss.ntt.co.jp>
CC: Avi Kivity <avi@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
CC: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
---
arch/x86/include/asm/uaccess.h | 39 +++++++++++++++++++++++++++++++++++++++
1 files changed, 39 insertions(+), 0 deletions(-)
diff --git a/arch/x86/include/asm/uaccess.h b/arch/x86/include/asm/uaccess.h
index abd3e0e..3138e65 100644
--- a/arch/x86/include/asm/uaccess.h
+++ b/arch/x86/include/asm/uaccess.h
@@ -98,6 +98,45 @@ struct exception_table_entry {
extern int fixup_exception(struct pt_regs *regs);
+/**
+ * set_bit_user_non_atomic: - set a bit of a bitmap in user space.
+ * @nr: Bit offset.
+ * @addr: Base address of a bitmap in user space.
+ *
+ * Context: User context only. This function may sleep.
+ *
+ * This macro set a bit of a bitmap in user space.
+ *
+ * Restriction: the bitmap pointed to by @addr must be 64-bit aligned:
+ * the kernel accesses the bitmap by its own word length, so bitmaps
+ * allocated by 32-bit processes may cause fault.
+ *
+ * Returns zero on success, or -EFAULT on error.
+ */
+#define __set_bit_user_non_atomic_asm(nr, addr, err, errret) \
+ asm volatile("1: bts %1,%2\n" \
+ "2:\n" \
+ ".section .fixup,\"ax\"\n" \
+ "3: mov %3,%0\n" \
+ " jmp 2b\n" \
+ ".previous\n" \
+ _ASM_EXTABLE(1b, 3b) \
+ : "=r"(err) \
+ : "r" (nr), "m" (__m(addr)), "i" (errret), "0" (err))
+
+#define set_bit_user_non_atomic(nr, addr) \
+({ \
+ int __ret_sbu; \
+ \
+ might_fault(); \
+ if (access_ok(VERIFY_WRITE, addr, nr/8 + 1)) \
+ __set_bit_user_non_atomic_asm(nr, addr, __ret_sbu, -EFAULT);\
+ else \
+ __ret_sbu = -EFAULT; \
+ \
+ __ret_sbu; \
+})
+
/*
* These are the main single-value transfer routines. They automatically
* use the right size if we just have the right pointer type.
--
1.7.0.4
WARNING: multiple messages have this Message-ID (diff)
From: Takuya Yoshikawa <takuya.yoshikawa@gmail.com>
To: Takuya Yoshikawa <takuya.yoshikawa@gmail.com>
Cc: linux-arch@vger.kernel.org, x86@kernel.org, arnd@arndb.de,
kvm@vger.kernel.org, kvm-ia64@vger.kernel.org,
fernando@oss.ntt.co.jp, mtosatti@redhat.com, agraf@suse.de,
kvm-ppc@vger.kernel.org, linux-kernel@vger.kernel.org,
yoshikawa.takuya@oss.ntt.co.jp, linuxppc-dev@ozlabs.org,
mingo@redhat.com, paulus@samba.org, avi@redhat.com,
hpa@zytor.com, tglx@linutronix.de
Subject: [RFC][PATCH 5/12] x86: introduce __set_bit() like function for bitmaps in user space
Date: Tue, 4 May 2010 22:02:47 +0900 [thread overview]
Message-ID: <20100504220247.2e97ac01.takuya.yoshikawa@gmail.com> (raw)
In-Reply-To: <20100504215645.6448af8f.takuya.yoshikawa@gmail.com>
During the work of KVM's dirty page logging optimization, we encountered
the need of manipulating bitmaps in user space efficiantly. To achive this,
we introduce a uaccess function for setting a bit in user space following
Avi's suggestion.
KVM is now using dirty bitmaps for live-migration and VGA. Although we need
to update them from kernel side, copying them every time for updating the
dirty log is a big bottleneck. Especially, we tested that zero-copy bitmap
manipulation improves responses of GUI manipulations a lot.
We also found one similar need in drivers/vhost/vhost.c in which the author
implemented set_bit_to_user() locally using inefficient functions: see TODO
at the top of that.
Probably, this kind of need would be common for virtualization area.
So we introduce a macro set_bit_user_non_atomic() following the implementation
style of x86's uaccess functions.
Note: there is a one restriction to this macro: bitmaps must be 64-bit
aligned (see the comment in this patch).
Signed-off-by: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp>
Signed-off-by: Fernando Luis Vazquez Cao <fernando@oss.ntt.co.jp>
CC: Avi Kivity <avi@redhat.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
CC: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
---
arch/x86/include/asm/uaccess.h | 39 +++++++++++++++++++++++++++++++++++++++
1 files changed, 39 insertions(+), 0 deletions(-)
diff --git a/arch/x86/include/asm/uaccess.h b/arch/x86/include/asm/uaccess.h
index abd3e0e..3138e65 100644
--- a/arch/x86/include/asm/uaccess.h
+++ b/arch/x86/include/asm/uaccess.h
@@ -98,6 +98,45 @@ struct exception_table_entry {
extern int fixup_exception(struct pt_regs *regs);
+/**
+ * set_bit_user_non_atomic: - set a bit of a bitmap in user space.
+ * @nr: Bit offset.
+ * @addr: Base address of a bitmap in user space.
+ *
+ * Context: User context only. This function may sleep.
+ *
+ * This macro set a bit of a bitmap in user space.
+ *
+ * Restriction: the bitmap pointed to by @addr must be 64-bit aligned:
+ * the kernel accesses the bitmap by its own word length, so bitmaps
+ * allocated by 32-bit processes may cause fault.
+ *
+ * Returns zero on success, or -EFAULT on error.
+ */
+#define __set_bit_user_non_atomic_asm(nr, addr, err, errret) \
+ asm volatile("1: bts %1,%2\n" \
+ "2:\n" \
+ ".section .fixup,\"ax\"\n" \
+ "3: mov %3,%0\n" \
+ " jmp 2b\n" \
+ ".previous\n" \
+ _ASM_EXTABLE(1b, 3b) \
+ : "=r"(err) \
+ : "r" (nr), "m" (__m(addr)), "i" (errret), "0" (err))
+
+#define set_bit_user_non_atomic(nr, addr) \
+({ \
+ int __ret_sbu; \
+ \
+ might_fault(); \
+ if (access_ok(VERIFY_WRITE, addr, nr/8 + 1)) \
+ __set_bit_user_non_atomic_asm(nr, addr, __ret_sbu, -EFAULT);\
+ else \
+ __ret_sbu = -EFAULT; \
+ \
+ __ret_sbu; \
+})
+
/*
* These are the main single-value transfer routines. They automatically
* use the right size if we just have the right pointer type.
--
1.7.0.4
next reply other threads:[~2010-05-04 13:02 UTC|newest]
Thread overview: 175+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-04 13:02 Takuya Yoshikawa [this message]
2010-05-04 13:02 ` [RFC][PATCH 5/12] x86: introduce __set_bit() like function for bitmaps in user space Takuya Yoshikawa
2010-05-04 13:02 ` Takuya Yoshikawa
2010-05-04 13:02 ` [RFC][PATCH 5/12] x86: introduce __set_bit() like function for Takuya Yoshikawa
-- strict thread matches above, loose matches on Subject: below --
2010-05-24 7:05 Any comments? Re: [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving Takuya Yoshikawa
2010-05-24 7:05 ` Any comments? Re: [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Takuya Yoshikawa
2010-05-24 7:05 ` Any comments? Re: [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving Takuya Yoshikawa
2010-06-01 10:55 ` Any comments? Re: [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: Marcelo Tosatti
2010-06-01 10:55 ` Any comments? Re: [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Marcelo Tosatti
2010-06-01 10:55 ` Any comments? Re: [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: Marcelo Tosatti
2010-06-01 12:05 ` Takuya Yoshikawa
2010-06-01 12:05 ` Any comments? Re: [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Takuya Yoshikawa
2010-06-01 12:05 ` Any comments? Re: [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: Takuya Yoshikawa
2010-06-01 12:54 ` Marcelo Tosatti
2010-06-01 12:54 ` Any comments? Re: [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Marcelo Tosatti
2010-06-01 12:54 ` Any comments? Re: [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: Marcelo Tosatti
2010-05-04 13:11 [RFC][PATCH 12/12 sample] qemu-kvm: use new API for Takuya Yoshikawa
2010-05-04 13:11 ` [RFC][PATCH 12/12 sample] qemu-kvm: use new API for getting/switching dirty bitmaps Takuya Yoshikawa
2010-05-04 13:11 ` Takuya Yoshikawa
2010-05-04 13:11 ` [RFC][PATCH 12/12 sample] qemu-kvm: use new API for Takuya Yoshikawa
2010-05-04 13:08 [RFC][PATCH 11/12] KVM: introduce new API for getting/switching Takuya Yoshikawa
2010-05-04 13:08 ` [RFC][PATCH 11/12] KVM: introduce new API for getting/switching dirty bitmaps Takuya Yoshikawa
2010-05-04 13:08 ` Takuya Yoshikawa
2010-05-04 13:08 ` [RFC][PATCH 11/12] KVM: introduce new API for getting/switching Takuya Yoshikawa
2010-05-11 3:43 ` Marcelo Tosatti
2010-05-11 3:43 ` [RFC][PATCH 11/12] KVM: introduce new API for getting/switching dirty bitmaps Marcelo Tosatti
2010-05-11 3:43 ` Marcelo Tosatti
2010-05-11 3:43 ` Marcelo Tosatti
2010-05-11 3:43 ` [RFC][PATCH 11/12] KVM: introduce new API for getting/switching Marcelo Tosatti
2010-05-11 5:53 ` Takuya Yoshikawa
2010-05-11 5:53 ` [RFC][PATCH 11/12] KVM: introduce new API for getting/switching dirty bitmaps Takuya Yoshikawa
2010-05-11 5:53 ` Takuya Yoshikawa
2010-05-11 5:53 ` [RFC][PATCH 11/12] KVM: introduce new API for getting/switching Takuya Yoshikawa
2010-05-11 14:07 ` Marcelo Tosatti
2010-05-11 14:07 ` [RFC][PATCH 11/12] KVM: introduce new API for getting/switching dirty bitmaps Marcelo Tosatti
2010-05-11 14:07 ` Marcelo Tosatti
2010-05-11 14:07 ` Marcelo Tosatti
2010-05-11 14:07 ` [RFC][PATCH 11/12] KVM: introduce new API for getting/switching Marcelo Tosatti
2010-05-12 5:59 ` Takuya Yoshikawa
2010-05-12 6:03 ` [RFC][PATCH 11/12] KVM: introduce new API for getting/switching dirty bitmaps Takuya Yoshikawa
2010-05-12 6:03 ` Takuya Yoshikawa
2010-05-12 6:03 ` [RFC][PATCH 11/12] KVM: introduce new API for getting/switching Takuya Yoshikawa
2010-05-04 13:07 [RFC][PATCH RFC 10/12] KVM: move dirty bitmaps to user space Takuya Yoshikawa
2010-05-04 13:07 ` Takuya Yoshikawa
2010-05-04 13:07 ` Takuya Yoshikawa
2010-05-04 13:07 ` Takuya Yoshikawa
2010-05-11 3:28 ` Marcelo Tosatti
2010-05-11 3:28 ` Marcelo Tosatti
2010-05-11 3:28 ` Marcelo Tosatti
2010-05-11 3:28 ` Marcelo Tosatti
2010-05-11 3:28 ` Marcelo Tosatti
2010-05-12 6:27 ` Takuya Yoshikawa
2010-05-12 6:27 ` Takuya Yoshikawa
2010-05-12 6:27 ` Takuya Yoshikawa
2010-05-12 6:27 ` Takuya Yoshikawa
2010-05-13 11:05 ` Takuya Yoshikawa
2010-05-13 11:05 ` Takuya Yoshikawa
2010-05-13 11:05 ` Takuya Yoshikawa
2010-05-04 13:06 [RFC][PATCH 9/12] KVM: introduce a wrapper function of Takuya Yoshikawa
2010-05-04 13:06 ` [RFC][PATCH 9/12] KVM: introduce a wrapper function of set_bit_user_non_atomic() Takuya Yoshikawa
2010-05-04 13:06 ` Takuya Yoshikawa
2010-05-04 13:06 ` Takuya Yoshikawa
2010-05-04 13:06 ` [RFC][PATCH 9/12] KVM: introduce a wrapper function of Takuya Yoshikawa
2010-05-04 13:05 [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit Takuya Yoshikawa
2010-05-04 13:05 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit offset macro Takuya Yoshikawa
2010-05-04 13:05 ` Takuya Yoshikawa
2010-05-04 13:05 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit Takuya Yoshikawa
2010-05-04 15:03 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit offset macro Arnd Bergmann
2010-05-04 15:03 ` Arnd Bergmann
2010-05-04 15:03 ` Arnd Bergmann
2010-05-04 15:03 ` Arnd Bergmann
2010-05-04 16:08 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit Avi Kivity
2010-05-04 16:08 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit offset macro Avi Kivity
2010-05-04 16:08 ` Avi Kivity
2010-05-04 16:08 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit Avi Kivity
2010-05-05 2:59 ` Takuya Yoshikawa
2010-05-05 2:59 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit offset macro Takuya Yoshikawa
2010-05-05 2:59 ` Takuya Yoshikawa
2010-05-05 2:59 ` Takuya Yoshikawa
2010-05-05 2:59 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit Takuya Yoshikawa
2010-05-06 13:38 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit offset macro Arnd Bergmann
2010-05-06 13:38 ` Arnd Bergmann
2010-05-06 13:38 ` Arnd Bergmann
2010-05-06 13:38 ` Arnd Bergmann
2010-05-06 13:38 ` Arnd Bergmann
2010-05-10 11:46 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit Takuya Yoshikawa
2010-05-10 11:46 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit offset macro Takuya Yoshikawa
2010-05-10 11:46 ` Takuya Yoshikawa
2010-05-10 11:46 ` Takuya Yoshikawa
2010-05-10 11:46 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit Takuya Yoshikawa
2010-05-10 12:01 ` Avi Kivity
2010-05-10 12:01 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit offset macro Avi Kivity
2010-05-10 12:01 ` Avi Kivity
2010-05-10 12:01 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit Avi Kivity
2010-05-10 12:01 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit offset macro Arnd Bergmann
2010-05-10 12:01 ` Arnd Bergmann
2010-05-10 12:01 ` Arnd Bergmann
2010-05-10 12:01 ` Arnd Bergmann
2010-05-10 12:01 ` Arnd Bergmann
2010-05-10 12:09 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit Takuya Yoshikawa
2010-05-10 12:09 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit offset macro Takuya Yoshikawa
2010-05-10 12:09 ` Takuya Yoshikawa
2010-05-10 12:09 ` Takuya Yoshikawa
2010-05-10 12:09 ` [RFC][PATCH resend 8/12] asm-generic: bitops: introduce le bit Takuya Yoshikawa
2010-05-04 13:04 [RFC][PATCH 7/12 not tested yet] PPC: introduce __set_bit() like Takuya Yoshikawa
2010-05-04 13:04 ` [RFC][PATCH 7/12 not tested yet] PPC: introduce __set_bit() like function for bitmaps in user space Takuya Yoshikawa
2010-05-04 13:04 ` Takuya Yoshikawa
2010-05-04 13:04 ` Takuya Yoshikawa
2010-05-04 13:04 ` [RFC][PATCH 7/12 not tested yet] PPC: introduce __set_bit() like Takuya Yoshikawa
2010-05-11 16:00 ` Alexander Graf
2010-05-11 16:00 ` [RFC][PATCH 7/12 not tested yet] PPC: introduce __set_bit() like function for bitmaps in user space Alexander Graf
2010-05-11 16:00 ` Alexander Graf
2010-05-11 16:00 ` Alexander Graf
2010-05-11 16:00 ` [RFC][PATCH 7/12 not tested yet] PPC: introduce __set_bit() like Alexander Graf
2010-05-12 9:25 ` Takuya Yoshikawa
2010-05-12 9:25 ` [RFC][PATCH 7/12 not tested yet] PPC: introduce __set_bit() like function for bitmaps in user space Takuya Yoshikawa
2010-05-12 9:25 ` Takuya Yoshikawa
2010-05-12 9:25 ` [RFC][PATCH 7/12 not tested yet] PPC: introduce __set_bit() like Takuya Yoshikawa
2010-05-04 13:03 [RFC][PATCH 6/12 not tested yet] PPC: introduce copy_in_user() for Takuya Yoshikawa
2010-05-04 13:03 ` [RFC][PATCH 6/12 not tested yet] PPC: introduce copy_in_user() for 32-bit Takuya Yoshikawa
2010-05-04 13:03 ` Takuya Yoshikawa
2010-05-04 13:03 ` [RFC][PATCH 6/12 not tested yet] PPC: introduce copy_in_user() for Takuya Yoshikawa
2010-05-04 13:02 [RFC][PATCH 4/12] x86: introduce copy_in_user() for 32-bit Takuya Yoshikawa
2010-05-04 13:02 ` Takuya Yoshikawa
2010-05-04 13:02 ` Takuya Yoshikawa
2010-05-04 13:02 ` Takuya Yoshikawa
2010-05-04 13:01 [RFC][PATCH 3/12] KVM: introduce wrapper functions to create and Takuya Yoshikawa
2010-05-04 13:01 ` [RFC][PATCH 3/12] KVM: introduce wrapper functions to create and destroy dirty bitmaps Takuya Yoshikawa
2010-05-04 13:01 ` Takuya Yoshikawa
2010-05-04 13:01 ` Takuya Yoshikawa
2010-05-04 13:01 ` [RFC][PATCH 3/12] KVM: introduce wrapper functions to create and Takuya Yoshikawa
2010-05-04 13:00 [RFC][PATCH 2/12] KVM: introduce slot level dirty state management Takuya Yoshikawa
2010-05-04 13:00 ` Takuya Yoshikawa
2010-05-04 13:00 ` Takuya Yoshikawa
2010-05-04 13:00 ` Takuya Yoshikawa
2010-05-04 13:00 ` Takuya Yoshikawa
2010-05-04 12:58 [RFC][PATCH 1/12 applied today] KVM: x86: avoid unnecessary bitmap Takuya Yoshikawa
2010-05-04 12:58 ` [RFC][PATCH 1/12 applied today] KVM: x86: avoid unnecessary bitmap allocation when memslot is clean Takuya Yoshikawa
2010-05-04 12:58 ` Takuya Yoshikawa
2010-05-04 12:58 ` [RFC][PATCH 1/12 applied today] KVM: x86: avoid unnecessary bitmap Takuya Yoshikawa
2010-05-04 12:56 [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps Takuya Yoshikawa
2010-05-04 12:56 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Takuya Yoshikawa
2010-05-04 12:56 ` Takuya Yoshikawa
2010-05-04 12:56 ` Takuya Yoshikawa
2010-05-04 12:56 ` Takuya Yoshikawa
2010-05-04 12:56 ` Takuya Yoshikawa
2010-05-04 12:56 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps Takuya Yoshikawa
2010-05-10 12:06 ` Avi Kivity
2010-05-10 12:06 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Avi Kivity
2010-05-10 12:06 ` Avi Kivity
2010-05-10 12:06 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps Avi Kivity
2010-05-10 12:26 ` Takuya Yoshikawa
2010-05-10 12:26 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Takuya Yoshikawa
2010-05-10 12:26 ` Takuya Yoshikawa
2010-05-10 12:26 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps Takuya Yoshikawa
2010-05-11 10:11 ` Takuya Yoshikawa
2010-05-11 10:11 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Takuya Yoshikawa
2010-05-11 10:11 ` Takuya Yoshikawa
2010-05-11 10:11 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps Takuya Yoshikawa
2010-05-11 15:55 ` Alexander Graf
2010-05-11 15:55 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Alexander Graf
2010-05-11 15:55 ` Alexander Graf
2010-05-11 15:55 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps Alexander Graf
2010-05-12 9:19 ` Takuya Yoshikawa
2010-05-12 9:19 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Takuya Yoshikawa
2010-05-12 9:19 ` Takuya Yoshikawa
2010-05-12 9:19 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps Takuya Yoshikawa
2010-05-13 11:47 ` Avi Kivity
2010-05-13 11:47 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Avi Kivity
2010-05-13 11:47 ` Avi Kivity
2010-05-13 11:47 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps Avi Kivity
2010-05-17 9:06 ` Takuya Yoshikawa
2010-05-17 9:06 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps to user space Takuya Yoshikawa
2010-05-17 9:06 ` Takuya Yoshikawa
2010-05-17 9:06 ` [RFC][PATCH 0/12] KVM, x86, ppc, asm-generic: moving dirty bitmaps Takuya Yoshikawa
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=20100504220247.2e97ac01.takuya.yoshikawa@gmail.com \
--to=takuya.yoshikawa@gmail.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 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.