All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andres Lagar-Cavilla <andres@lagarcavilla.org>
To: xen-devel@lists.xensource.com
Cc: andres@gridcentric.ca, keir.xen@gmail.com, tim@xen.org,
	JBeulich@suse.com, adin@gridcentric.ca
Subject: [PATCH 0 of 9] x86/mm: Memory Sharing Overhaul V2
Date: Fri, 09 Dec 2011 15:22:27 -0500	[thread overview]
Message-ID: <patchbomb.1323462147@xdev.gridcentric.ca> (raw)

This patch series proposes a comprehensive overhaul of the
memory sharing code. We include

- Clean ups.
- A reworked locking discipline. We introduce the use of per
 page locks to protect additions and removals of gfns to
 shared pages. We use RCU to manage a global list of shared
 pages used for auditing. The end result is the removal of
 the sharing global lock.
- New features:
 + Polling stats via console.
 + More stats: frames that are shared, pages that are saved.
   due to sharing
 + New sharing domctl to add a shared page directly to a whole
   in the physmap.
 + New sharing domctl to perform audits.
Relevant tools patches sent in a separate series.

A consequence of our modifications is a change to the sharing
API. While we refresh the only user of the sharing API in the 
tree, we want to make sure we are not affecting any other
users of the sharing API.

Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Signed-off-by: Adin Scannell <adin@scannell.ca>

 xen/arch/x86/mm.c                 |    6 +-
 xen/arch/x86/mm/mem_sharing.c     |   91 +++--
 xen/arch/x86/mm/mem_sharing.c     |  560 +++++++++++++++++++------------------
 xen/include/asm-x86/mem_sharing.h |   19 +-
 xen/include/asm-x86/mm.h          |   11 +-
 xen/include/public/domctl.h       |    3 +
 xen/arch/x86/mm/mem_sharing.c     |   57 +++-
 xen/include/public/domctl.h       |    9 +
 xen/arch/x86/mm.c                 |    6 -
 xen/arch/x86/mm/mem_sharing.c     |   29 +
 xen/arch/x86/x86_64/compat/mm.c   |    6 +
 xen/arch/x86/x86_64/mm.c          |    7 +
 xen/include/asm-x86/mem_sharing.h |    1 +
 xen/include/public/memory.h       |    1 +
 xen/arch/x86/mm.c                 |   74 +----
 xen/arch/x86/mm/mem_sharing.c     |  280 +++++++++++++++++-
 xen/arch/x86/mm/mm-locks.h        |   31 +-
 xen/include/asm-x86/mm.h          |   28 +-
 xen/arch/x86/mm/mem_sharing.c     |  104 +++++++
 xen/include/public/domctl.h       |    3 +-
 xen/arch/ia64/xen/mm.c            |    6 +
 xen/arch/x86/mm/mem_sharing.c     |    8 +
 xen/common/keyhandler.c           |    7 +-
 xen/include/xen/mm.h              |    3 +
 xen/arch/x86/mm/mem_sharing.c     |   15 +-
 xen/include/public/domctl.h       |    1 +
 xen/arch/x86/mm/mem_sharing.c     |   83 ++---
 xen/arch/x86/mm/mm-locks.h        |   18 -
 xen/include/asm-x86/mem_sharing.h |    3 +-
 29 files changed, 957 insertions(+), 513 deletions(-)

             reply	other threads:[~2011-12-09 20:22 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-09 20:22 Andres Lagar-Cavilla [this message]
2011-12-09 20:22 ` [PATCH 1 of 9] x86/mm: Code style fixes in mem_sharing.c Andres Lagar-Cavilla
2011-12-09 20:22 ` [PATCH 2 of 9] x86/mm: Eliminate hash table in sharing code as index of shared mfns Andres Lagar-Cavilla
2011-12-09 20:22 ` [PATCH 3 of 9] x86/mm: Update mem sharing interface to (re)allow sharing of grants Andres Lagar-Cavilla
2011-12-09 20:22 ` [PATCH 4 of 9] x86/mm: Check how many mfns are shared, in addition to how many are saved Andres Lagar-Cavilla
2011-12-09 20:22 ` [PATCH 5 of 9] x86/mm: Add per-page locking for memory sharing, when audits are disabled Andres Lagar-Cavilla
2011-12-12  9:29   ` Jan Beulich
2011-12-13  4:29     ` Andres Lagar-Cavilla
2011-12-09 20:22 ` [PATCH 6 of 9] x86/mm: New domctl: add a shared page to the physmap Andres Lagar-Cavilla
2011-12-12  9:32   ` Jan Beulich
2011-12-09 20:22 ` [PATCH 7 of 9] Add the ability to poll stats about shared memory via the console Andres Lagar-Cavilla
2011-12-09 20:22 ` [PATCH 8 of 9] x86/mm: New domctl: Perform sharing audit Andres Lagar-Cavilla
2011-12-12  9:33   ` Jan Beulich
2011-12-13  4:22     ` Andres Lagar-Cavilla
2011-12-13  7:51       ` Jan Beulich
2011-12-09 20:22 ` [PATCH 9 of 9] x86/mm: use RCU in mem sharing audit list, eliminate global lock completely Andres Lagar-Cavilla
  -- strict thread matches above, loose matches on Subject: below --
2011-12-09 20:21 [PATCH 0 of 9] x86/mm: Memory Sharing Overhaul V2 Andres Lagar-Cavilla

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=patchbomb.1323462147@xdev.gridcentric.ca \
    --to=andres@lagarcavilla.org \
    --cc=JBeulich@suse.com \
    --cc=adin@gridcentric.ca \
    --cc=andres@gridcentric.ca \
    --cc=keir.xen@gmail.com \
    --cc=tim@xen.org \
    --cc=xen-devel@lists.xensource.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.