Re: [Qemu-devel] [PATCH 04/11] qemu: helper routines for pci access.

2009-05-25 Thread Isaku Yamahata
Just a minor comment. How about to add pci_[sg]et_byte() for consistency? On Mon, May 25, 2009 at 03:25:33PM +0300, Michael S. Tsirkin wrote: > Add inline routines for convenient access to pci devices > with correct (little) endianness. Will be used by MSI-X support. > > Signed-off-by: Michael S.

Re: [Qemu-devel] [PATCH 03/11] qemu: add routines to manage PCI capabilities

2009-05-26 Thread Isaku Yamahata
On Mon, May 25, 2009 at 03:25:20PM +0300, Michael S. Tsirkin wrote: > Add routines to manage PCI capability list. First user will be MSI-X. > > Signed-off-by: Michael S. Tsirkin > --- > hw/pci.c | 98 > -- > hw/pci.h | 18 +

Re: [Qemu-devel] [PATCHv6 00/12] qemu: MSI-X support

2009-06-21 Thread Isaku Yamahata
On Sun, Jun 21, 2009 at 07:44:57PM +0300, Michael S. Tsirkin wrote: > This uses the mask table patch that I posted previously, and which is > included in the series. That patch has been slightly updated due > to mask -> wmask rename. Isaku Yamahata, maybe you want to > update yo

Re: [PATCH v5 6/9] add jump labels for ia64 paravirt

2011-07-11 Thread Isaku Yamahata
PARAVIRT, to paravirt.c. Although the ia64 maintainer is Tony Luck, I'm fine with the change as the ia64 paravirt author. Acked-by: Isaku Yamahata -- yamahata -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

[RFC] postcopy livemigration proposal

2011-08-07 Thread Isaku Yamahata
This mail is on "Yabusame: Postcopy Live Migration for Qemu/KVM" on which we'll give a talk at KVM-forum. The purpose of this mail is to letting developers know it in advance so that we can get better feedback on its design/implementation approach early before our starting to implement it. Backgr

Re: [Qemu-devel] [RFC] postcopy livemigration proposal

2011-08-08 Thread Isaku Yamahata
On Mon, Aug 08, 2011 at 10:38:35AM +0100, Stefan Hajnoczi wrote: > On Mon, Aug 8, 2011 at 4:24 AM, Isaku Yamahata wrote: > > This mail is on "Yabusame: Postcopy Live Migration for Qemu/KVM" > > on which we'll give a talk at KVM-forum. > > I'm cu

Re: [Qemu-devel] [RFC] postcopy livemigration proposal

2011-08-08 Thread Isaku Yamahata
On Mon, Aug 08, 2011 at 10:47:09PM +0300, Dor Laor wrote: > On 08/08/2011 06:59 PM, Anthony Liguori wrote: >> On 08/08/2011 10:36 AM, Avi Kivity wrote: >>> On 08/08/2011 06:29 PM, Anthony Liguori wrote: >>> - Efficient, reduce needed traffic no need to re-send pages. >> >> It's not

Re: [RFC] postcopy livemigration proposal

2011-08-08 Thread Isaku Yamahata
On Mon, Aug 08, 2011 at 03:38:54PM +0300, Avi Kivity wrote: > On 08/08/2011 06:24 AM, Isaku Yamahata wrote: >> This mail is on "Yabusame: Postcopy Live Migration for Qemu/KVM" >> on which we'll give a talk at KVM-forum. >> The purpose of this mail is to letting

Re: [RFC] postcopy livemigration proposal

2011-08-10 Thread Isaku Yamahata
On Wed, Aug 10, 2011 at 04:55:32PM +0300, Avi Kivity wrote: > On 08/09/2011 05:33 AM, Isaku Yamahata wrote: >> On Mon, Aug 08, 2011 at 03:38:54PM +0300, Avi Kivity wrote: >> > On 08/08/2011 06:24 AM, Isaku Yamahata wrote: >> >> This mail is on "Yabusame: P

[PATCH][RFC] post copy chardevice (was Re: [RFC] postcopy livemigration proposal)

2011-08-12 Thread Isaku Yamahata
and go for better way. thanks, >From e262979e95b3c5a095c8cb0bc178309baa861a3f Mon Sep 17 00:00:00 2001 Message-Id: From: Isaku Yamahata Date: Wed, 10 Aug 2011 18:28:05 +0900 Subject: [PATCH] kvm/postcopy: chardevice for postcopy This is a character device to hook page access. The page fault i

Re: [PATCH][RFC] post copy chardevice (was Re: [RFC] postcopy livemigration proposal)

2011-08-12 Thread Isaku Yamahata
://sites.google.com/site/grivonhome/quick-kvm-migration * Author: Isaku Yamahata * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, * version 2, as published by the Free Software Foundation. * * This program is

Re: [PATCH][RFC] post copy chardevice (was Re: [RFC] postcopy livemigration proposal)

2011-08-15 Thread Isaku Yamahata
On Mon, Aug 15, 2011 at 12:29:37PM -0700, Avi Kivity wrote: > On 08/12/2011 04:07 AM, Isaku Yamahata wrote: >> This is a character device to hook page access. >> The page fault in the area is reported to another user process by >> this chardriver. Then, the process fills

Re: About hotplug multifunction

2011-09-09 Thread Isaku Yamahata
pci/pcie hot plug needs clean up for multifunction hotplug in long term. Only single function device case works. Multifunction case is broken somwehat. Especially the current acpi based hotplug should be replaced by the standardized hot plug controller in long term. On Fri, Sep 09, 2011 at 03:08:2

Re: About hotplug multifunction

2011-09-12 Thread Isaku Yamahata
On Sun, Sep 11, 2011 at 12:05:17PM +0300, Michael S. Tsirkin wrote: > On Sat, Sep 10, 2011 at 02:43:11AM +0900, Isaku Yamahata wrote: > > pci/pcie hot plug needs clean up for multifunction hotplug in long term. > > Only single function device case works. Multifunction case is broke

Re: [Qemu-devel] About hotplug multifunction

2011-09-13 Thread Isaku Yamahata
On Tue, Sep 13, 2011 at 09:52:49AM +0300, Gleb Natapov wrote: > On Tue, Sep 13, 2011 at 02:57:20PM +0900, Isaku Yamahata wrote: > > On Sun, Sep 11, 2011 at 12:05:17PM +0300, Michael S. Tsirkin wrote: > > > On Sat, Sep 10, 2011 at 02:43:11AM +0900, Isaku Yamahata wrote: > &g

Re: [SeaBIOS] [PATCHv3 4/4] acpi: automatically generated ssdt proc

2011-10-17 Thread Isaku Yamahata
On Wed, Oct 05, 2011 at 10:15:26PM -0400, Kevin O'Connor wrote: > - Some time back there were patches floating around to pass the DSDT > into SeaBIOS via fw_cfg interface. Those patches never made it in > (I forget why), but the basic functionality seemed sound. Patching > the DSDT in SeaBI

Re: [SeaBIOS] [PATCH RFC] acpi: add ssdt for cpi hotplug

2011-11-03 Thread Isaku Yamahata
On Thu, Nov 03, 2011 at 02:31:18PM +0200, Michael S. Tsirkin wrote: > On Wed, Nov 02, 2011 at 08:30:28PM -0400, Kevin O'Connor wrote: > > On Wed, Nov 02, 2011 at 10:54:42AM +0200, Michael S. Tsirkin wrote: > > > On Tue, Nov 01, 2011 at 06:59:01PM -0400, Kevin O'Connor wrote: > > > > Can we leave th

Re: [PATCH 2/3] AMD IOMMU support

2011-02-03 Thread Isaku Yamahata
On Fri, Feb 04, 2011 at 01:24:14AM +0200, Eduard - Gabriel Munteanu wrote: > This initializes the AMD IOMMU and creates ACPI tables for it. > > Signed-off-by: Eduard - Gabriel Munteanu > --- > src/acpi.c | 84 > > src/config.h |

Re: [PATCH] ioapic: Do not set irr for masked edge IRQs

2011-04-09 Thread Isaku Yamahata
On Sat, Apr 09, 2011 at 01:26:07PM +0200, Jan Kiszka wrote: > On first glance, it looks like KVM's in-kernel IOAPIC model is affected > by the same issue. Agreed. > As you have the test case at hand, could you run it > against qemu-kvm which stresses the kernel version? Unfortunately I don't h

[PATCH 01/21] arch_init: export sort_ram_list() and ram_save_block()

2011-12-28 Thread Isaku Yamahata
This will be used by postcopy. Signed-off-by: Isaku Yamahata --- arch_init.c |4 ++-- migration.h |2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/arch_init.c b/arch_init.c index d4c92b0..1947396 100644 --- a/arch_init.c +++ b/arch_init.c @@ -112,7 +112,7 @@ static

[PATCH 02/21] arch_init: export RAM_SAVE_xxx flags for postcopy

2011-12-28 Thread Isaku Yamahata
Those constants will be also used by postcopy. Signed-off-by: Isaku Yamahata --- arch_init.c |7 --- arch_init.h |7 +++ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/arch_init.c b/arch_init.c index 1947396..4ede5ad 100644 --- a/arch_init.c +++ b/arch_init.c

[PATCH 04/21] arch_init: refactor host_from_stream_offset()

2011-12-28 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 25 ++--- arch_init.h |9 + 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/arch_init.c b/arch_init.c index 5ad6956..d55e39c 100644 --- a/arch_init.c +++ b/arch_init.c @@ -335,21 +335,22 @@ int

[PATCH 09/21] exec.c: factor out qemu_get_ram_ptr()

2011-12-28 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- cpu-all.h |2 ++ exec.c| 51 +-- 2 files changed, 31 insertions(+), 22 deletions(-) diff --git a/cpu-all.h b/cpu-all.h index 9d78715..0244f7a 100644 --- a/cpu-all.h +++ b/cpu-all.h @@ -496,6 +496,8

[PATCH 06/21] arch_init: refactor ram_save_block()

2011-12-28 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 82 +++--- arch_init.h |1 + 2 files changed, 45 insertions(+), 38 deletions(-) diff --git a/arch_init.c b/arch_init.c index 9bc313e..982c846 100644 --- a/arch_init.c +++ b/arch_init.c

[PATCH 12/21] savevm: qemu_pending_size() to return pending buffered size

2011-12-28 Thread Isaku Yamahata
This will be used later by postcopy migration. Signed-off-by: Isaku Yamahata --- hw/hw.h |1 + savevm.c |5 + 2 files changed, 6 insertions(+), 0 deletions(-) diff --git a/hw/hw.h b/hw/hw.h index 0b481ba..d508b4e 100644 --- a/hw/hw.h +++ b/hw/hw.h @@ -80,6 +80,7 @@ int

[PATCH 18/21] configure: add CONFIG_POSTCOPY option

2011-12-28 Thread Isaku Yamahata
Add enable/disable postcopy mode. No dynamic test yet. Signed-off-by: Isaku Yamahata --- configure | 12 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/configure b/configure index 640e815..440fa9e 100755 --- a/configure +++ b/configure @@ -190,6 +190,7 @@ opengl

[PATCH 13/21] savevm, buffered_file: introduce method to drain buffer of buffered file

2011-12-28 Thread Isaku Yamahata
Introduce a new method to drain the buffer of QEMUBufferedFile. When postcopy migration, buffer size can increase unboundedly. To keep the buffer size reasonably small, introduce the method to wait for buffer to drain. Signed-off-by: Isaku Yamahata --- buffered_file.c | 20

[PATCH 16/21] umem.h: import Linux umem.h

2011-12-28 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- linux-headers/linux/umem.h | 83 1 files changed, 83 insertions(+), 0 deletions(-) create mode 100644 linux-headers/linux/umem.h diff --git a/linux-headers/linux/umem.h b/linux-headers/linux/umem.h new file mode

[PATCH 15/21] migration: factor out parameters into MigrationParams

2011-12-28 Thread Isaku Yamahata
Introduce MigrationParams for parameters of migration. Signed-off-by: Isaku Yamahata --- block-migration.c |8 hw/hw.h |2 +- migration.c | 16 +--- migration.h |8 ++-- qemu-common.h |1 + savevm.c | 12

[PATCH 14/21] migration: export migrate_fd_completed() and migrate_fd_cleanup()

2011-12-28 Thread Isaku Yamahata
This will be used by postcopy migration. Signed-off-by: Isaku Yamahata --- migration.c |4 ++-- migration.h |2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/migration.c b/migration.c index 412fdfe..057dde7 100644 --- a/migration.c +++ b/migration.c @@ -166,7 +166,7

[PATCH 19/21] postcopy: introduce -postcopy and -postcopy-flags option

2011-12-28 Thread Isaku Yamahata
This patch prepares for postcopy livemigration. It introduces -postcopy option and its internal flag, migration_postcopy. It introduces -postcopy-flags for chaging the behavior of incoming postcopy mainly for benchmark/debug. Signed-off-by: Isaku Yamahata postcopy: introduce -postcopy-flags

[PATCH 00/21][RFC] postcopy live migration

2011-12-28 Thread Isaku Yamahata
note: I'm not sure if this can be implemented or not) | | V V migration completes exit() Isaku Yamahata (21): arch_init: export sort_ram_list() and ram_s

[PATCH 07/21] arch_init/ram_save_live: factor out ram_save_limit

2011-12-28 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 28 +--- migration.h |1 + 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/arch_init.c b/arch_init.c index 982c846..249b440 100644 --- a/arch_init.c +++ b/arch_init.c @@ -261,9 +261,24 @@ void

[PATCH 05/21] arch_init/ram_save_live: factor out RAM_SAVE_FLAG_MEM_SIZE case

2011-12-28 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 21 ++--- migration.h |1 + 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/arch_init.c b/arch_init.c index d55e39c..9bc313e 100644 --- a/arch_init.c +++ b/arch_init.c @@ -243,6 +243,19 @@ void sort_ram_list

[PATCH 20/21] postcopy outgoing: add -p and -n option to migrate command

2011-12-28 Thread Isaku Yamahata
Added -p option to migrate command for postcopy mode and introduce postcopy parameter for migration to indicate that postcopy mode is enabled. Add -n option for postcopy migration which indicates disabling background transfer. Signed-off-by: Isaku Yamahata --- hmp-commands.hx | 12

[PATCH 10/21] exec.c: export last_ram_offset()

2011-12-28 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- exec-obsolete.h |1 + exec.c |4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/exec-obsolete.h b/exec-obsolete.h index 34b9fc5..8f69f1c 100644 --- a/exec-obsolete.h +++ b/exec-obsolete.h @@ -25,6 +25,7 @@ #ifndef

[PATCH 11/21] savevm: export qemu_peek_buffer, qemu_peek_byte, qemu_file_skip

2011-12-28 Thread Isaku Yamahata
Those will be used by postcopy. Signed-off-by: Isaku Yamahata --- hw/hw.h |3 +++ savevm.c |6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/hw/hw.h b/hw/hw.h index efa04d1..0b481ba 100644 --- a/hw/hw.h +++ b/hw/hw.h @@ -77,6 +77,9 @@ void qemu_put_be32(QEMUFile

[PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy

2011-12-28 Thread Isaku Yamahata
OT_ implemented yet. anonymous I'm not sure whether this can be implemented or not. --- Changes version 1 -> 2: - make ioctl structures padded to align - un-KVM KVM_VMEM -> UMEM - dropped some ioctl commands as Avi requested Is

[PATCH 2/2] umem: chardevice for kvm postcopy

2011-12-28 Thread Isaku Yamahata
This is a character device to hook page access. The page fault in the area is reported to another user process by this chardriver. Then, the process fills the page contents and resolves the page fault. Signed-off-by: Isaku Yamahata --- drivers/char/Kconfig |9 + drivers/char/Makefile

[PATCH 1/2] export necessary symbols

2011-12-28 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- mm/memcontrol.c |1 + mm/shmem.c |1 + 2 files changed, 2 insertions(+), 0 deletions(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index b63f5f7..85530fc 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -2807,6 +2807,7 @@ int

[PATCH 17/21] update-linux-headers.sh: teach umem.h to update-linux-headers.sh

2011-12-28 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- scripts/update-linux-headers.sh |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/scripts/update-linux-headers.sh b/scripts/update-linux-headers.sh index 9d2a4bc..2afdd54 100755 --- a/scripts/update-linux-headers.sh +++ b/scripts/update

[PATCH 08/21] arch_init/ram_load: refactor ram_load

2011-12-28 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 67 +- arch_init.h |1 + 2 files changed, 39 insertions(+), 29 deletions(-) diff --git a/arch_init.c b/arch_init.c index 249b440..bc53092 100644 --- a/arch_init.c +++ b/arch_init.c

[PATCH 03/21] arch_init/ram_save: introduce constant for ram save version = 4

2011-12-28 Thread Isaku Yamahata
Introduce RAM_SAVE_VERSION_ID to represent version_id for ram save format. Signed-off-by: Isaku Yamahata --- arch_init.c |2 +- arch_init.h |2 ++ vl.c|4 ++-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/arch_init.c b/arch_init.c index 4ede5ad..5ad6956

Re: [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy

2011-12-28 Thread Isaku Yamahata
On Thu, Dec 29, 2011 at 10:26:16AM +0900, Isaku Yamahata wrote: > UMEM_DEV_LIST: list created umem devices > UMEM_DEV_REATTACH: re-attach the created umem device > UMEM_DEV_LIST and UMEM_DEV_REATTACH are used when > the process that services page faul

Re: [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy

2011-12-29 Thread Isaku Yamahata
On Thu, Dec 29, 2011 at 04:55:11PM +0200, Avi Kivity wrote: > On 12/29/2011 04:49 PM, Isaku Yamahata wrote: > > > > Great, then we agreed with list/reattach basically. > > > > (Maybe identity scheme needs reconsideration.) > > > > > > I guess we misc

Re: [PATCH 2/2] umem: chardevice for kvm postcopy

2011-12-29 Thread Isaku Yamahata
Thank you for review. On Thu, Dec 29, 2011 at 01:17:51PM +0200, Avi Kivity wrote: > > + default n > > + help > > + User process backed memory driver provides /dev/umem device. > > + The /dev/umem device is designed for some sort of distributed > > + shared memory. Especially post-c

Re: [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy

2011-12-29 Thread Isaku Yamahata
On Thu, Dec 29, 2011 at 02:55:42PM +0200, Avi Kivity wrote: > On 12/29/2011 02:39 PM, Isaku Yamahata wrote: > > > > ioctl commands: > > > > > > > > UMEM_DEV_CRATE_UMEM: create umem device for qemu > > > > UMEM_DEV_LIST: list created umem devic

Re: [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy

2011-12-29 Thread Isaku Yamahata
On Thu, Dec 29, 2011 at 01:24:32PM +0200, Avi Kivity wrote: > On 12/29/2011 03:26 AM, Isaku Yamahata wrote: > > This is Linux kernel driver for qemu/kvm postcopy live migration. > > This is used by qemu/kvm postcopy live migration patch. > > > > TODO: > > - Consi

Re: [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy

2011-12-29 Thread Isaku Yamahata
On Thu, Dec 29, 2011 at 04:35:36PM +0200, Avi Kivity wrote: > On 12/29/2011 04:18 PM, Isaku Yamahata wrote: > > > > > > > > The issue is how to solve the page fault, not whether > > > > TASK_INTERRUPTIBLE or > > > > TASK_UNINTERRUPTIBLE. >

Re: [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy

2011-12-29 Thread Isaku Yamahata
On Thu, Dec 29, 2011 at 03:52:58PM +0200, Avi Kivity wrote: > On 12/29/2011 03:49 PM, Isaku Yamahata wrote: > > > > > > qemu can have an extra thread that wait4()s the daemon, and relaunch > > > it. This extra thread would not be blocked by the page fault. It can

Re: [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy

2012-01-03 Thread Isaku Yamahata
the VMA into anonymous. > The patch 2/2 is small and self contained so it's quite attractive, I > didn't see patch 1/2, was it posted? Posted. It's quite short and trivial which just do EXPORT_SYMBOL_GPL of mem_cgroup_cache_chage and shmem_zero_setup. I include it here for

Re: [PATCH 21/21] postcopy: implement postcopy livemigration

2012-01-03 Thread Isaku Yamahata
On Thu, Dec 29, 2011 at 06:06:10PM +0200, Avi Kivity wrote: > On 12/29/2011 03:26 AM, Isaku Yamahata wrote: > > This patch implements postcopy livemigration. > > > > > > +/* RAM is allocated via umem for postcopy incoming mode */ > > +#define RAM_POSTCOPY_UMEM_

Re: [Qemu-devel] [PATCH 00/21][RFC] postcopy live migration

2012-01-03 Thread Isaku Yamahata
On Thu, Dec 29, 2011 at 04:39:52PM -0600, Anthony Liguori wrote: >> TODO >> >> - benchmark/evaluation. Especially how async page fault affects the result. > > I'll review this series next week (Mike/Juan, please also review when you > can). > > But we really need to think hard about whether t

Re: [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy

2012-01-12 Thread Isaku Yamahata
tep stone as the post copy live migration mainly > enable us to validate the architecture design and code. > > Regards > Benoit > > > > > > > > Regards > Benoit > > > On 12 January 2012 13:59, Avi Kivity wrote: > > On 01/04/2012 05:03 AM,

Re: [PATCH 0/2][RFC] postcopy migration: Linux char device for postcopy

2012-01-12 Thread Isaku Yamahata
One more question. Does your architecture/implementation (in theory) allow KVM memory features like swap, KSM, THP? On Fri, Jan 13, 2012 at 11:03:23AM +0900, Isaku Yamahata wrote: > Very interesting. We can cooperate for better (postcopy) live migration. > The code doesn't seem av

[PATCH v2 02/41] arch_init: export RAM_SAVE_xxx flags for postcopy

2012-06-04 Thread Isaku Yamahata
Those constants will be also used by postcopy. Signed-off-by: Isaku Yamahata --- arch_init.c |7 --- arch_init.h |7 +++ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/arch_init.c b/arch_init.c index 38e0173..bd4e61e 100644 --- a/arch_init.c +++ b/arch_init.c

[PATCH v2 01/41] arch_init: export sort_ram_list() and ram_save_block()

2012-06-04 Thread Isaku Yamahata
This will be used by postcopy. Signed-off-by: Isaku Yamahata --- arch_init.c |4 ++-- migration.h |2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/arch_init.c b/arch_init.c index a9e8b74..38e0173 100644 --- a/arch_init.c +++ b/arch_init.c @@ -164,7 +164,7 @@ static

[PATCH v2 12/41] arch_init: factor out setting last_block, last_offset

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 13 - arch_init.h |1 + 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/arch_init.c b/arch_init.c index 2617478..22d9691 100644 --- a/arch_init.c +++ b/arch_init.c @@ -203,6 +203,12 @@ int ram_save_page(QEMUFile *f

[PATCH v2 18/41] QEMUFile: add qemu_file_fd() for later use

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- qemu-file.h |1 + savevm.c| 12 2 files changed, 13 insertions(+), 0 deletions(-) diff --git a/qemu-file.h b/qemu-file.h index 331ac8b..98a8023 100644 --- a/qemu-file.h +++ b/qemu-file.h @@ -71,6 +71,7 @@ QEMUFile *qemu_fopen_socket(int

[PATCH v2 21/41] savevm: rename QEMUFileSocket to QEMUFileFD, socket_close to fd_close

2012-06-04 Thread Isaku Yamahata
Later the structure will be shared. Signed-off-by: Isaku Yamahata --- savevm.c | 14 +++--- 1 files changed, 7 insertions(+), 7 deletions(-) diff --git a/savevm.c b/savevm.c index 4b560b3..2fb0c3e 100644 --- a/savevm.c +++ b/savevm.c @@ -187,14 +187,14 @@ typedef struct QEMUFileStdio

[PATCH v2 22/41] savevm/QEMUFile: introduce qemu_fopen_fd

2012-06-04 Thread Isaku Yamahata
Introduce nonblocking fd read backend of QEMUFile. This will be used by postcopy live migration. Signed-off-by: Isaku Yamahata --- qemu-file.h |1 + savevm.c| 40 2 files changed, 41 insertions(+), 0 deletions(-) diff --git a/qemu-file.h b

[PATCH v2 17/41] savevm, buffered_file: introduce method to drain buffer of buffered file

2012-06-04 Thread Isaku Yamahata
Introduce a new method to drain the buffer of QEMUBufferedFile. When postcopy migration, buffer size can increase unboundedly. To keep the buffer size reasonably small, introduce the method to wait for buffer to drain. Signed-off-by: Isaku Yamahata --- buffered_file.c | 20

[PATCH v2 20/41] savevm/QEMUFileSocket: drop duplicated member fd

2012-06-04 Thread Isaku Yamahata
fd is already stored in QEMUFile so drop duplicated member QEMUFileSocket::fd. Signed-off-by: Isaku Yamahata --- savevm.c |4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) diff --git a/savevm.c b/savevm.c index ec9f5d0..4b560b3 100644 --- a/savevm.c +++ b/savevm.c @@ -189,7 +189,6

[PATCH v2 24/41] migration: export migrate_fd_completed() and migrate_fd_cleanup()

2012-06-04 Thread Isaku Yamahata
This will be used by postcopy migration. Signed-off-by: Isaku Yamahata --- migration.c |4 ++-- migration.h |2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/migration.c b/migration.c index 753addb..48a8f68 100644 --- a/migration.c +++ b/migration.c @@ -159,7 +159,7

[PATCH v2 15/41] savevm: export qemu_peek_buffer, qemu_peek_byte, qemu_file_skip

2012-06-04 Thread Isaku Yamahata
Those will be used by postcopy. Signed-off-by: Isaku Yamahata --- qemu-file.h |3 +++ savevm.c|6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/qemu-file.h b/qemu-file.h index 31b83f6..a285bef 100644 --- a/qemu-file.h +++ b/qemu-file.h @@ -88,6 +88,9 @@ void

[PATCH v2 33/41] postcopy: introduce -postcopy and -postcopy-flags option

2012-06-04 Thread Isaku Yamahata
This patch prepares for postcopy livemigration. It introduces -postcopy option and its internal flag, migration_postcopy. It introduces -postcopy-flags for chaging the behavior of incoming postcopy mainly for benchmark/debug. Signed-off-by: Isaku Yamahata --- migration.h |3 +++ qemu

[PATCH v2 35/41] postcopy: introduce helper functions for postcopy

2012-06-04 Thread Isaku Yamahata
This patch introduces helper function for postcopy to access umem char device and to communicate between incoming-qemu and umemd. Signed-off-by: Isaku Yamahata --- changes v1 -> v2: - code simplification - make fault trigger more robust - introduce struct umem_pages --- umem.c |

[PATCH v2 40/41] migrate: add -m (movebg) option to migrate command

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- hmp-commands.hx |5 +++-- hmp.c|3 ++- migration.c |8 +++- migration.h |1 + qapi-schema.json |2 +- qmp-commands.hx |2 +- savevm.c |1 + 7 files changed, 16 insertions(+), 6 deletions(-) diff

[PATCH v2 37/41] postcopy: implement outgoing part of postcopy live migration

2012-06-04 Thread Isaku Yamahata
This patch implements postcopy live migration for outgoing part Signed-off-by: Isaku Yamahata --- Changes v1 -> v2: - fix parameter to qemu_fdopen() - handle QEMU_UMEM_REQ_EOC properly when PO_STATE_ALL_PAGES_SENT, QEMU_UMEM_REQ_EOC request was ignored. handle properly it. - flush on-dem

[PATCH v2 38/41] postcopy/outgoing: add forward, backward option to specify the size of prefault

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- hmp-commands.hx | 15 ++- hmp.c|3 +++ migration.c | 20 migration.h |2 ++ qapi-schema.json |3 ++- 5 files changed, 37 insertions(+), 6 deletions(-) diff --git a/hmp-commands.hx b/hmp

[PATCH v2 32/41] savevm: add new section that is used by postcopy

2012-06-04 Thread Isaku Yamahata
This is used by postcopy to tell the total length of QEMU_VM_SECTION_FULL and QEMU_VM_SUBSECTION from outgoing to incoming. Signed-off-by: Isaku Yamahata --- savevm.c |1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/savevm.c b/savevm.c index 318ec61..3adabad 100644 --- a

[PATCH v2 39/41] postcopy/outgoing: implement prefault

2012-06-04 Thread Isaku Yamahata
When page is requested, send surrounding pages are also sent. Signed-off-by: Isaku Yamahata --- migration-postcopy.c | 56 + 1 files changed, 51 insertions(+), 5 deletions(-) diff --git a/migration-postcopy.c b/migration-postcopy.c index

[PATCH v2 34/41] postcopy outgoing: add -p and -n option to migrate command

2012-06-04 Thread Isaku Yamahata
Added -p option to migrate command for postcopy mode and introduce postcopy parameter for migration to indicate that postcopy mode is enabled. Add -n option for postcopy migration which indicates disabling background transfer. Signed-off-by: Isaku Yamahata --- Chnages v1 -> v2: - catch up

[PATCH v2 41/41] migration/postcopy: add movebg mode

2012-06-04 Thread Isaku Yamahata
When movebg mode is enabled, the point to send background page is set to the next page to on-demand page. Signed-off-by: Isaku Yamahata --- migration-postcopy.c |8 1 files changed, 8 insertions(+), 0 deletions(-) diff --git a/migration-postcopy.c b/migration-postcopy.c index

[PATCH v2 36/41] postcopy: implement incoming part of postcopy live migration

2012-06-04 Thread Isaku Yamahata
This patch implements postcopy live migration for incoming part Signed-off-by: Isaku Yamahata --- Changes v3 -> v4: - fork umemd early to address qemu devices touching guest ram via post/pre_load - code clean up on initialization - Makefile.target migration-postcopy.c is target dependent

[PATCH v2 10/41] arch_init: simplify a bit by ram_find_block()

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 21 - exec.c | 12 ++-- 2 files changed, 14 insertions(+), 19 deletions(-) diff --git a/arch_init.c b/arch_init.c index 9981abe..73bf250 100644 --- a/arch_init.c +++ b/arch_init.c @@ -432,11 +432,10 @@ void

[PATCH v3 1/2] export necessary symbols

2012-06-04 Thread Isaku Yamahata
Cc: Andrea Arcangeli Cc: Avi Kivity Cc: Paolo Bonzini Signed-off-by: Isaku Yamahata --- mm/memcontrol.c |1 + mm/mempolicy.c |1 + mm/shmem.c |1 + 3 files changed, 3 insertions(+), 0 deletions(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index ac35bcc..265ba2f 100644

[PATCH v3 0/2] postcopy migration: umem: Linux char device for postcopy

2012-06-04 Thread Isaku Yamahata
version 1 -> 2: - make ioctl structures padded to align - un-KVM KVM_VMEM -> UMEM - dropped some ioctl commands as Avi requested Isaku Yamahata (2): export necessary symbols umem: chardevice for kvm postcopy Documentation/misc-devices/umem.txt | 303 drivers/char/

[PATCH v3 2/2] umem: chardevice for kvm postcopy

2012-06-04 Thread Isaku Yamahata
This is a character device to hook page access. The page fault in the area is propagated to another user process by this chardriver. Then, the process fills the page contents and resolves the page fault. Cc: Andrea Arcangeli Cc: Avi Kivity Cc: Paolo Bonzini Signed-off-by: Isaku Yamahata

[PATCH v2 28/41] buffered_file: add qemu_file to read/write to buffer in memory

2012-06-04 Thread Isaku Yamahata
This is used by postcopy live migration. Signed-off-by: Isaku Yamahata --- buffered_file.c | 50 ++ buffered_file.h | 10 ++ 2 files changed, 60 insertions(+), 0 deletions(-) diff --git a/buffered_file.c b/buffered_file.c index

[PATCH v2 29/41] umem.h: import Linux umem.h

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- linux-headers/linux/umem.h | 42 ++ 1 files changed, 42 insertions(+), 0 deletions(-) create mode 100644 linux-headers/linux/umem.h diff --git a/linux-headers/linux/umem.h b/linux-headers/linux/umem.h new file mode

[PATCH v2 31/41] configure: add CONFIG_POSTCOPY option

2012-06-04 Thread Isaku Yamahata
Add enable/disable postcopy mode. No dynamic test yet. Signed-off-by: Isaku Yamahata --- configure | 12 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/configure b/configure index 1f338f8..21de4cb 100755 --- a/configure +++ b/configure @@ -194,6 +194,7 @@ zlib

[PATCH v2 25/41] migration: factor out parameters into MigrationParams

2012-06-04 Thread Isaku Yamahata
Introduce MigrationParams for parameters of migration. Cc: Orit Wasserman Cc: Juan Quintela Signed-off-by: Isaku Yamahata --- Changes v1 -> v2: - catch up qapi change --- block-migration.c |8 migration.c | 21 +++-- migration.h |8 ++-- q

[PATCH v2 23/41] migration.c: remove redundant line in migrate_init()

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- migration.c |1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/migration.c b/migration.c index 3f485d3..753addb 100644 --- a/migration.c +++ b/migration.c @@ -367,7 +367,6 @@ static MigrationState *migrate_init(int blk, int inc

[PATCH v2 27/41] buffered_file: Introduce QEMUFileNonblock for nonblock write

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- buffered_file.c | 115 +++ buffered_file.h | 13 ++ 2 files changed, 128 insertions(+), 0 deletions(-) diff --git a/buffered_file.c b/buffered_file.c index 22dd4c9..5198923 100644 --- a/buffered_file.c

[PATCH v2 19/41] savevm/QEMUFile: drop qemu_stdio_fd

2012-06-04 Thread Isaku Yamahata
Now qemu_file_fd() replaces qemu_stdio_fd(). Signed-off-by: Isaku Yamahata --- migration-exec.c |4 ++-- migration-fd.c |2 +- qemu-file.h |1 - savevm.c | 12 4 files changed, 3 insertions(+), 16 deletions(-) diff --git a/migration-exec.c b/migration

[PATCH v2 30/41] update-linux-headers.sh: teach umem.h to update-linux-headers.sh

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- scripts/update-linux-headers.sh |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/scripts/update-linux-headers.sh b/scripts/update-linux-headers.sh index 9d2a4bc..2afdd54 100755 --- a/scripts/update-linux-headers.sh +++ b/scripts/update

[PATCH v2 26/41] buffered_file: factor out buffer management logic

2012-06-04 Thread Isaku Yamahata
This patch factors out buffer management logic. Signed-off-by: Isaku Yamahata --- buffered_file.c | 141 +- buffered_file.h |8 +++ 2 files changed, 94 insertions(+), 55 deletions(-) diff --git a/buffered_file.c b/buffered_file.c index

[PATCH v2 14/41] exec.c: export last_ram_offset()

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- exec-obsolete.h |1 + exec.c |4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/exec-obsolete.h b/exec-obsolete.h index 792c831..fb21dd7 100644 --- a/exec-obsolete.h +++ b/exec-obsolete.h @@ -25,6 +25,7 @@ #ifndef

[PATCH v2 08/41] arch_init/ram_load: refactor ram_load

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 67 +- arch_init.h |1 + 2 files changed, 39 insertions(+), 29 deletions(-) diff --git a/arch_init.c b/arch_init.c index c861e30..bb0cd52 100644 --- a/arch_init.c +++ b/arch_init.c

[PATCH v2 04/41] arch_init: refactor host_from_stream_offset()

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 25 ++--- arch_init.h |7 +++ 2 files changed, 25 insertions(+), 7 deletions(-) diff --git a/arch_init.c b/arch_init.c index 2a53f58..36ece1d 100644 --- a/arch_init.c +++ b/arch_init.c @@ -374,21 +374,22 @@ int

[PATCH v2 13/41] exec.c: factor out qemu_get_ram_ptr()

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- cpu-all.h |2 ++ exec.c| 51 +-- 2 files changed, 31 insertions(+), 22 deletions(-) diff --git a/cpu-all.h b/cpu-all.h index 028528f..ff7f827 100644 --- a/cpu-all.h +++ b/cpu-all.h @@ -508,6 +508,8

[PATCH v2 11/41] arch_init: factor out counting transferred bytes

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 24 1 files changed, 12 insertions(+), 12 deletions(-) diff --git a/arch_init.c b/arch_init.c index 73bf250..2617478 100644 --- a/arch_init.c +++ b/arch_init.c @@ -155,8 +155,9 @@ static int is_dup_page(uint8_t *page

[PATCH v2 16/41] savevm: qemu_pending_size() to return pending buffered size

2012-06-04 Thread Isaku Yamahata
This will be used later by postcopy migration. Signed-off-by: Isaku Yamahata --- qemu-file.h |1 + savevm.c|5 + 2 files changed, 6 insertions(+), 0 deletions(-) diff --git a/qemu-file.h b/qemu-file.h index a285bef..880ef4b 100644 --- a/qemu-file.h +++ b/qemu-file.h @@ -91,6

[PATCH v2 05/41] arch_init/ram_save_live: factor out RAM_SAVE_FLAG_MEM_SIZE case

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 21 ++--- migration.h |1 + 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/arch_init.c b/arch_init.c index 36ece1d..28e5abb 100644 --- a/arch_init.c +++ b/arch_init.c @@ -287,6 +287,19 @@ void sort_ram_list

[PATCH v2 07/41] arch_init/ram_save_live: factor out ram_save_limit

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 28 migration.h |1 + 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/arch_init.c b/arch_init.c index 900cc8e..c861e30 100644 --- a/arch_init.c +++ b/arch_init.c @@ -311,9 +311,23 @@ void

[PATCH v2 09/41] arch_init: introduce helper function to find ram block with id string

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- arch_init.c | 13 + arch_init.h |1 + 2 files changed, 14 insertions(+), 0 deletions(-) diff --git a/arch_init.c b/arch_init.c index bb0cd52..9981abe 100644 --- a/arch_init.c +++ b/arch_init.c @@ -397,6 +397,19 @@ int ram_save_live(QEMUFile *f

[PATCH v2 03/41] arch_init/ram_save: introduce constant for ram save version = 4

2012-06-04 Thread Isaku Yamahata
Introduce RAM_SAVE_VERSION_ID to represent version_id for ram save format. Signed-off-by: Isaku Yamahata --- arch_init.c |2 +- arch_init.h |2 ++ vl.c|4 ++-- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/arch_init.c b/arch_init.c index bd4e61e..2a53f58

[PATCH v2 00/41] postcopy live migration

2012-06-04 Thread Isaku Yamahata
| V V migration completes exit() Isaku Yamahata (41): arch_init: export sort_ram_list() and ram_save_block() arch_init: export RAM_SAVE_xxx flags for postcopy arch_init/ram_save: introduce constant for ram

[PATCH v2 06/41] arch_init: refactor ram_save_block()

2012-06-04 Thread Isaku Yamahata
Signed-off-by: Isaku Yamahata --- Chnages v1 -> v2: - don't refer last_block which can be NULL. And avoid possible infinite loop. --- arch_init.c | 82 +- arch_init.h |1 + 2 files changed, 48 insertions(+), 35 deletions(

  1   2   >