All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RFC 00/20] Change parts of the shadow interface to be domain based
@ 2015-02-12 17:15 Andrew Cooper
  2015-02-12 17:16 ` [PATCH 01/20] x86/shadow: Whitespace cleanup Andrew Cooper
                   ` (21 more replies)
  0 siblings, 22 replies; 29+ messages in thread
From: Andrew Cooper @ 2015-02-12 17:15 UTC (permalink / raw)
  To: Xen-devel; +Cc: Andrew Cooper, Keir Fraser, Jan Beulich, Tim Deegan

The purpose of this series is to prevent toolstack entry points into the
shadow code from passing d->vcpu[0] for actions which are inherenly domain
wide.  It also fixes the fact that shadow heuristics were being applied to
vcpu 0 for toolstack-initiated actions.

This series is composed mostly of mechanical changes.  The only patches which
have a practical difference on shadow execution are patches 4 and 20

The entire series has been compile tested at each changeset, for both
shadow-paging=y and n.  It has also been tested internally in XenServer, but
appears to have gotten caught up in some collateral damage from an unrelated
merge.  I am rerunning the tests.

This series can be found as in the shadow-dom-v1 branch on

  git://xenbits.xen.org/people/andrewcoop/xen.git


Andrew Cooper (20):
  x86/shadow: Whitespace cleanup
  x86/shadow: Rename hash_foreach() to hash_vcpu_foreach()
  x86/shadow: Introduce 'd' pointers and clean up use of 'v->domain'
  x86/shadow: Only apply shadow heuristics when in guest context
  x86/shadow: Alter shadow_hash_{lookup,insert,delete}() to take a domain
  x86/shadow: Alter *_shadow_status() and make_fl1_shadow() to take a domain
  x86/shadow: Alter sh_type_{is_pinnable,has_up_pointer}() to take a domain
  x86/shadow: Alter OOS functions to take a domain
  x86/shadow: Alter shadow_{pro,de}mote() to take a domain
  x86/shadow: Alter sh_put_ref() and shadow destroy functions to take a domain
  x86/shadow: Alter sh_get_ref() and sh_{,un}pin() to take a domain
  x86/shadow: Alter shadow_set_l?e() to take a domain
  x86/shadow: Alter sh_{clear_shadow_entry,remove_shadow_via_pointer}() to take a domain
  x86/shadow: Alter sh_remove_l?_shadow() to take a domain
  x86/shadow: Alter shadow_unhook{_???}_mappings() to take a domain
  x86/shadow: Alter sh_rm_write_access_from_???() to take a domain
  x86/shadow: Alter sh_remove_{all_}shadows{,_and_parents}() to take a domain
  x86/shadow: Alter sh_{remove_all_mappings,rm_mappings_from_l1}() to take a domain
  x86/shadow: Alter sh_remove_write_access to take a domain
  x86/shadow: Cleanup of vcpu handling

 xen/arch/x86/hvm/hvm.c           |    2 +-
 xen/arch/x86/mm.c                |    4 +-
 xen/arch/x86/mm/shadow/common.c  |  769 +++++++++++++------------
 xen/arch/x86/mm/shadow/multi.c   | 1180 +++++++++++++++++++-------------------
 xen/arch/x86/mm/shadow/multi.h   |   64 +--
 xen/arch/x86/mm/shadow/private.h |  154 ++---
 xen/arch/x86/mm/shadow/types.h   |   42 +-
 xen/include/asm-x86/shadow.h     |    8 +-
 8 files changed, 1140 insertions(+), 1083 deletions(-)

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

end of thread, other threads:[~2015-02-19 15:33 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-12 17:15 [PATCH RFC 00/20] Change parts of the shadow interface to be domain based Andrew Cooper
2015-02-12 17:16 ` [PATCH 01/20] x86/shadow: Whitespace cleanup Andrew Cooper
2015-02-12 17:16 ` [PATCH 02/20] x86/shadow: Rename hash_foreach() to hash_vcpu_foreach() Andrew Cooper
2015-02-12 17:16 ` [PATCH 03/20] x86/shadow: Introduce 'd' pointers and clean up use of 'v->domain' Andrew Cooper
2015-02-12 17:16 ` [PATCH 04/20] x86/shadow: Only apply shadow heuristics when in guest context Andrew Cooper
2015-02-19 13:10   ` Tim Deegan
2015-02-19 14:18     ` Andrew Cooper
2015-02-19 15:33     ` [PATCH v2 04/20] x86/shadow: Change the gating of shadow heuristics Andrew Cooper
2015-02-12 17:16 ` [PATCH 05/20] x86/shadow: Alter shadow_hash_{lookup, insert, delete}() to take a domain Andrew Cooper
2015-02-12 17:16 ` [PATCH 06/20] x86/shadow: Alter *_shadow_status() and make_fl1_shadow() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 07/20] x86/shadow: Alter sh_type_{is_pinnable, has_up_pointer}() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 08/20] x86/shadow: Alter OOS functions " Andrew Cooper
2015-02-12 17:16 ` [PATCH 09/20] x86/shadow: Alter shadow_{pro, de}mote() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 10/20] x86/shadow: Alter sh_put_ref() and shadow destroy functions " Andrew Cooper
2015-02-12 17:16 ` [PATCH 11/20] x86/shadow: Alter sh_get_ref() and sh_{, un}pin() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 12/20] x86/shadow: Alter shadow_set_l?e() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 13/20] x86/shadow: Alter sh_{clear_shadow_entry, remove_shadow_via_pointer}() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 14/20] x86/shadow: Alter sh_remove_l?_shadow() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 15/20] x86/shadow: Alter shadow_unhook{_???}_mappings() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 16/20] x86/shadow: Alter sh_rm_write_access_from_???() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 17/20] x86/shadow: Alter sh_remove_{all_}shadows{, _and_parents}() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 18/20] x86/shadow: Alter sh_{remove_all_mappings, rm_mappings_from_l1}() " Andrew Cooper
2015-02-12 17:16 ` [PATCH 19/20] x86/shadow: Alter sh_remove_write_access " Andrew Cooper
2015-02-12 17:16 ` [PATCH 20/20] x86/shadow: Cleanup of vcpu handling Andrew Cooper
2015-02-13 11:42 ` [PATCH RFC 00/20] Change parts of the shadow interface to be domain based Andrew Cooper
2015-02-16 12:29 ` Tim Deegan
2015-02-16 13:35   ` Andrew Cooper
2015-02-16 18:28     ` Tim Deegan
2015-02-19 12:35       ` 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.