All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0 of 5] p2m synchronization groundwork
@ 2011-11-08  3:28 Andres Lagar-Cavilla
  2011-11-08  3:28 ` [PATCH 1 of 5] Refactor mm-lock ordering constructs Andres Lagar-Cavilla
                   ` (5 more replies)
  0 siblings, 6 replies; 10+ messages in thread
From: Andres Lagar-Cavilla @ 2011-11-08  3:28 UTC (permalink / raw)
  To: xen-devel; +Cc: olaf, George.Dunlap, andres, tim, keir.xen, adin

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(-)

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

end of thread, other threads:[~2011-11-10 16:47 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-08  3:28 [PATCH 0 of 5] p2m synchronization groundwork Andres Lagar-Cavilla
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

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.