All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andres Lagar-Cavilla <andres@lagarcavilla.org>
To: xen-devel@lists.xensource.com
Cc: olaf@aepfle.de, George.Dunlap@eu.citrix.com,
	andres@gridcentric.ca, tim@xen.org, keir.xen@gmail.com,
	adin@gridcentric.ca
Subject: [PATCH 0 of 5] p2m synchronization groundwork
Date: Mon, 07 Nov 2011 22:28:28 -0500	[thread overview]
Message-ID: <patchbomb.1320722908@xdev.gridcentric.ca> (raw)

This patch series lays the groundwork for improving the synchronization
of primitives accessing the p2m.

This is a partial repost of the patches emailed previously as a RFC. 
These patches are now intended for committing to the tree.

We change the API for accessing the p2m to a family of functions
get_gfn/put_gfn. The name intends to reflect the fact that even lookups
are meant to obtain exclusive access to a p2m entry, and that said access
should be relinquished (put_gfn) when done.

The patches, however, alter little functionality. The API name change 
does not involve yet additional locking or ref-counting. They will, however,
throw a "barrier" that will force any new commits to conform to the new API.

Patches are based off 24066:54a5e994a241. Should the new XENMEM calls be 
accepted before this, the series needs to be updated to also change the API
there.

Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>

 xen/arch/x86/mm/mm-locks.h         |   27 ++++-
 xen/arch/x86/mm/mm-locks.h         |   46 +++++++++++
 xen/arch/x86/mm/mm-locks.h         |   12 ++
 xen/arch/x86/mm/p2m-pod.c          |   40 ++++++---
 xen/include/asm-x86/domain.h       |    3 +
 xen/include/asm-x86/p2m.h          |    5 +
 xen/arch/x86/mm/p2m.c              |   38 +++++++++
 xen/include/asm-x86/p2m.h          |   40 +---------
 xen/arch/x86/cpu/mcheck/vmce.c     |    9 +-
 xen/arch/x86/debug.c               |   17 ++-
 xen/arch/x86/domain.c              |   27 +++++-
 xen/arch/x86/domctl.c              |   15 ++-
 xen/arch/x86/hvm/emulate.c         |   29 ++++++-
 xen/arch/x86/hvm/hvm.c             |  133 +++++++++++++++++++++++++------
 xen/arch/x86/hvm/mtrr.c            |    2 +-
 xen/arch/x86/hvm/nestedhvm.c       |    2 +-
 xen/arch/x86/hvm/stdvga.c          |    4 +-
 xen/arch/x86/hvm/svm/nestedsvm.c   |   12 +-
 xen/arch/x86/hvm/svm/svm.c         |   11 +-
 xen/arch/x86/hvm/viridian.c        |    8 +-
 xen/arch/x86/hvm/vmx/vmx.c         |   15 ++-
 xen/arch/x86/hvm/vmx/vvmx.c        |   13 ++-
 xen/arch/x86/mm.c                  |  153 +++++++++++++++++++++++++++++-------
 xen/arch/x86/mm/guest_walk.c       |   30 +++++-
 xen/arch/x86/mm/hap/guest_walk.c   |   16 ++-
 xen/arch/x86/mm/hap/nested_hap.c   |   15 ++-
 xen/arch/x86/mm/mem_event.c        |   23 ++++-
 xen/arch/x86/mm/mem_sharing.c      |   27 +++++-
 xen/arch/x86/mm/p2m-pod.c          |   19 ++-
 xen/arch/x86/mm/p2m-pt.c           |    6 +-
 xen/arch/x86/mm/p2m.c              |   34 ++++---
 xen/arch/x86/mm/shadow/common.c    |    6 +-
 xen/arch/x86/mm/shadow/multi.c     |   85 ++++++++++++++-----
 xen/arch/x86/mm/shadow/types.h     |   10 +-
 xen/arch/x86/physdev.c             |    8 +-
 xen/arch/x86/traps.c               |   19 +++-
 xen/common/grant_table.c           |   30 +++++-
 xen/common/memory.c                |   13 ++-
 xen/common/tmem_xen.c              |   21 +++-
 xen/include/asm-ia64/mm.h          |    2 +
 xen/include/asm-x86/guest_pt.h     |    6 +-
 xen/include/asm-x86/hvm/hvm.h      |    5 +-
 xen/include/asm-x86/hvm/vmx/vvmx.h |    1 +
 xen/include/asm-x86/p2m.h          |   38 ++++++--
 44 files changed, 799 insertions(+), 276 deletions(-)

             reply	other threads:[~2011-11-08  3:28 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-08  3:28 Andres Lagar-Cavilla [this message]
2011-11-08  3:28 ` [PATCH 1 of 5] Refactor mm-lock ordering constructs Andres Lagar-Cavilla
2011-11-08  3:28 ` [PATCH 2 of 5] Declare an order-enforcing construct for external locks used in the mm layer Andres Lagar-Cavilla
2011-11-08  3:28 ` [PATCH 3 of 5] Enforce ordering constraints for the page alloc lock in the PoD code Andres Lagar-Cavilla
2011-11-08  3:28 ` [PATCH 4 of 5] Refactor p2m get_entry accessor Andres Lagar-Cavilla
2011-11-08  3:28 ` [PATCH 5 of 5] Modify naming of queries into the p2m Andres Lagar-Cavilla
2011-11-10 12:26   ` Tim Deegan
2011-11-10 13:54     ` Andres Lagar-Cavilla
2011-11-10 16:47     ` Andres Lagar-Cavilla
2011-11-10 12:27 ` [PATCH 0 of 5] p2m synchronization groundwork Tim Deegan

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.1320722908@xdev.gridcentric.ca \
    --to=andres@lagarcavilla.org \
    --cc=George.Dunlap@eu.citrix.com \
    --cc=adin@gridcentric.ca \
    --cc=andres@gridcentric.ca \
    --cc=keir.xen@gmail.com \
    --cc=olaf@aepfle.de \
    --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.