All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 00/15] Postcopy: Hugepage support
@ 2017-01-06 18:28 Dr. David Alan Gilbert (git)
  2017-01-06 18:28 ` [Qemu-devel] [PATCH 01/15] postcopy: Transmit and compare individual page sizes Dr. David Alan Gilbert (git)
                   ` (16 more replies)
  0 siblings, 17 replies; 47+ messages in thread
From: Dr. David Alan Gilbert (git) @ 2017-01-06 18:28 UTC (permalink / raw)
  To: qemu-devel, quintela, amit.shah; +Cc: aarcange

From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

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 just gone into 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 (currently at ref 7284072f).

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 (15):
  postcopy: Transmit and compare individual page sizes
  postcopy: Transmit ram size summary word
  postcopy: Chunk discards for hugepages
  Fold postcopy_ram_discard_range into ram_discard_range
  postcopy: enhance ram_discard_range for hugepages
  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                            |  13 ++++
 include/exec/cpu-common.h         |   1 +
 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          | 139 +++++++++++++++++---------------------
 migration/ram.c                   | 110 ++++++++++++++++++++++++------
 migration/savevm.c                |  32 ++++++---
 migration/trace-events            |   2 +-
 12 files changed, 280 insertions(+), 129 deletions(-)

-- 
2.9.3

^ permalink raw reply	[flat|nested] 47+ messages in thread

end of thread, other threads:[~2017-01-31 16:20 UTC | newest]

Thread overview: 47+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-06 18:28 [Qemu-devel] [PATCH 00/15] Postcopy: Hugepage support Dr. David Alan Gilbert (git)
2017-01-06 18:28 ` [Qemu-devel] [PATCH 01/15] postcopy: Transmit and compare individual page sizes Dr. David Alan Gilbert (git)
     [not found]   ` <CGME20170125080145eucas1p2a0b06b64d9687cc3d2efcbaf0bd925a1@eucas1p2.samsung.com>
2017-01-25  8:01     ` [Qemu-devel] [01/15] " Alexey Perevalov
2017-01-25 18:38       ` Dr. David Alan Gilbert
2017-01-25  9:47   ` [Qemu-devel] [PATCH 01/15] " Juan Quintela
2017-01-25 16:15     ` Dr. David Alan Gilbert
2017-01-06 18:28 ` [Qemu-devel] [PATCH 02/15] postcopy: Transmit ram size summary word Dr. David Alan Gilbert (git)
2017-01-25  9:53   ` Juan Quintela
2017-01-25 16:18     ` Dr. David Alan Gilbert
2017-01-06 18:28 ` [Qemu-devel] [PATCH 03/15] postcopy: Chunk discards for hugepages Dr. David Alan Gilbert (git)
2017-01-25 10:44   ` Juan Quintela
2017-01-06 18:28 ` [Qemu-devel] [PATCH 04/15] Fold postcopy_ram_discard_range into ram_discard_range Dr. David Alan Gilbert (git)
2017-01-25 10:08   ` Juan Quintela
2017-01-25 16:43     ` Dr. David Alan Gilbert
2017-01-06 18:28 ` [Qemu-devel] [PATCH 05/15] postcopy: enhance ram_discard_range for hugepages Dr. David Alan Gilbert (git)
2017-01-25 10:14   ` Juan Quintela
2017-01-30 18:49     ` Dr. David Alan Gilbert
2017-01-30 19:19       ` Juan Quintela
2017-01-06 18:28 ` [Qemu-devel] [PATCH 06/15] postcopy: Record largest page size Dr. David Alan Gilbert (git)
2017-01-25 10:17   ` Juan Quintela
2017-01-30 16:36     ` Dr. David Alan Gilbert
2017-01-30 19:22       ` Juan Quintela
2017-01-06 18:28 ` [Qemu-devel] [PATCH 07/15] postcopy: Plumb pagesize down into place helpers Dr. David Alan Gilbert (git)
2017-01-25 10:25   ` Juan Quintela
2017-01-27 15:49     ` Dr. David Alan Gilbert
2017-01-06 18:28 ` [Qemu-devel] [PATCH 08/15] postcopy: Use temporary for placing zero huge pages Dr. David Alan Gilbert (git)
2017-01-25 10:29   ` Juan Quintela
2017-01-06 18:28 ` [Qemu-devel] [PATCH 09/15] postcopy: Load huge pages in one go Dr. David Alan Gilbert (git)
2017-01-25 10:31   ` Juan Quintela
2017-01-06 18:28 ` [Qemu-devel] [PATCH 10/15] postcopy: Mask fault addresses to huge page boundary Dr. David Alan Gilbert (git)
2017-01-31 13:20   ` Juan Quintela
2017-01-06 18:28 ` [Qemu-devel] [PATCH 11/15] postcopy: Send whole huge pages Dr. David Alan Gilbert (git)
2017-01-31 13:20   ` Juan Quintela
2017-01-06 18:28 ` [Qemu-devel] [PATCH 12/15] postcopy: Allow hugepages Dr. David Alan Gilbert (git)
2017-01-31 13:21   ` Juan Quintela
2017-01-06 18:28 ` [Qemu-devel] [PATCH 13/15] postcopy: Update userfaultfd.h header Dr. David Alan Gilbert (git)
2017-01-31 13:22   ` Juan Quintela
2017-01-06 18:28 ` [Qemu-devel] [PATCH 14/15] postcopy: Check for userfault+hugepage feature Dr. David Alan Gilbert (git)
2017-01-31 13:24   ` Juan Quintela
2017-01-31 16:20     ` Dr. David Alan Gilbert
2017-01-06 18:28 ` [Qemu-devel] [PATCH 15/15] postcopy: Add doc about hugepages and postcopy Dr. David Alan Gilbert (git)
2017-01-31 13:25   ` Juan Quintela
2017-01-06 18:51 ` [Qemu-devel] [PATCH 00/15] Postcopy: Hugepage support no-reply
2017-01-06 18:59   ` Dr. David Alan Gilbert
2017-01-09  0:55     ` Fam Zheng
2017-01-09  9:03       ` Dr. David Alan Gilbert
2017-01-06 19:02 ` no-reply

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.