[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support
From: |
Laurent Vivier |
Subject: |
Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support |
Date: |
Wed, 22 Feb 2017 17:43:22 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 |
On 06/02/2017 18:32, Dr. David Alan Gilbert (git) wrote:
> From: "Dr. David Alan Gilbert" <address@hidden>
>
> Hi,
> The existing postcopy code, and the userfault kernel
> code that supports it, only works for normal anonymous memory.
> Kernel support for userfault on hugetlbfs is working
> it's way upstream; it's in the linux-mm tree,
> You can get a version at:
> git://git.kernel.org/pub/scm/linux/kernel/git/andrea/aa.git
> on the origin/userfault branch.
>
> Note that while this code supports arbitrary sized hugepages,
> it doesn't make sense with pages above the few-MB region,
> so while 2MB is fine, 1GB is probably a bad idea;
> this code waits for and transmits whole huge pages, and a
> 1GB page would take about 1 second to transfer over a 10Gbps
> link - which is way too long to pause the destination for.
>
> Dave
>
> Dr. David Alan Gilbert (16):
> postcopy: Transmit ram size summary word
> postcopy: Transmit and compare individual page sizes
> postcopy: Chunk discards for hugepages
> exec: ram_block_discard_range
> postcopy: enhance ram_block_discard_range for hugepages
> Fold postcopy_ram_discard_range into ram_discard_range
> postcopy: Record largest page size
> postcopy: Plumb pagesize down into place helpers
> postcopy: Use temporary for placing zero huge pages
> postcopy: Load huge pages in one go
> postcopy: Mask fault addresses to huge page boundary
> postcopy: Send whole huge pages
> postcopy: Allow hugepages
> postcopy: Update userfaultfd.h header
> postcopy: Check for userfault+hugepage feature
> postcopy: Add doc about hugepages and postcopy
>
> docs/migration.txt | 13 ++++
> exec.c | 83 +++++++++++++++++++++++
> include/exec/cpu-common.h | 2 +
> include/exec/memory.h | 1 -
> include/migration/migration.h | 3 +
> include/migration/postcopy-ram.h | 13 ++--
> linux-headers/linux/userfaultfd.h | 81 +++++++++++++++++++---
> migration/migration.c | 1 +
> migration/postcopy-ram.c | 138
> +++++++++++++++++---------------------
> migration/ram.c | 109 ++++++++++++++++++------------
> migration/savevm.c | 32 ++++++---
> migration/trace-events | 2 +-
> 12 files changed, 328 insertions(+), 150 deletions(-)
>
Tested-by: Laurent Vivier <address@hidden>
On ppc64le with 16MB hugepage size and kernel 4.10 from aa.git/userfault
Laurent
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, (continued)
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Dr. David Alan Gilbert, 2017/02/13
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Alexey Perevalov, 2017/02/14
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Dr. David Alan Gilbert, 2017/02/14
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Alexey Perevalov, 2017/02/21
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Dr. David Alan Gilbert, 2017/02/21
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Alexey Perevalov, 2017/02/27
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Dr. David Alan Gilbert, 2017/02/27
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Andrea Arcangeli, 2017/02/27
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Daniel P. Berrange, 2017/02/27
- Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Alexey Perevalov, 2017/02/27
Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support,
Laurent Vivier <=
Re: [Qemu-devel] [PATCH v2 00/16] Postcopy: Hugepage support, Dr. David Alan Gilbert, 2017/02/24