All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/14] XSA-277 followup
@ 2018-11-21 13:21 Andrew Cooper
  2018-11-21 13:21 ` [PATCH 01/14] x86/soft-reset: Drop gfn reference after calling get_gfn_query() Andrew Cooper
                   ` (15 more replies)
  0 siblings, 16 replies; 59+ messages in thread
From: Andrew Cooper @ 2018-11-21 13:21 UTC (permalink / raw)
  To: Xen-devel
  Cc: Kevin Tian, Stefano Stabellini, Wei Liu, Jun Nakajima,
	Razvan Cojocaru, George Dunlap, Andrew Cooper, Tim Deegan,
	Julien Grall, Tamas K Lengyel, Jan Beulich, Boris Ostrovsky,
	Brian Woods, Suravee Suthikulpanit, Paul Durrant,
	Roger Pau Monné

This covers various fixes related to XSA-277 which weren't in security
supported areas, and associated cleanup.

The biggest issue noticed here is that altp2m's use of hardware #VE support
will cause general memory corruption if the guest ever balloons out the VEINFO
page.  The only safe way I think of doing this is for Xen to alloc annonymous
domheap pages for the VEINFO, and for the guest to map them in a similar way
to the shared info and grant table frames.

Andrew Cooper (14):
  x86/soft-reset: Drop gfn reference after calling get_gfn_query()
  x86/mem-sharing: Don't leave the altp2m lock held when nominating a page
  AMD/IOMMU: Fix multiple reference counting errors
  x86/p2m: Fix locking in p2m_altp2m_lazy_copy()
  x86/p2m: Don't overwrite p2m_altp2m_lazy_copy()'s callers p2m pointer
  x86/hvm: Make the altp2m locking easier to follow
  x86/p2m: Coding style cleanup
  xen/memory: Drop ARM put_gfn() stub
  x86/p2m: Switch the two_gfns infrastructure to using gfn_t
  x86/mm: Switch {get,put}_gfn() infrastructure to using gfn_t
  xen/mm: Switch mfn_to_virt()/virt_to_mfn() to using mfn_t
  xen/gnttab: Drop gnttab_create_{shared,status}_page()
  xen/gnttab: Simplify gnttab_map_frame()
  xen/gnttab: Minor improvements to arch header files

 xen/arch/arm/alternative.c                |   4 -
 xen/arch/arm/cpuerrata.c                  |   4 -
 xen/arch/arm/domain_build.c               |   4 -
 xen/arch/arm/livepatch.c                  |   4 -
 xen/arch/arm/mm.c                         |   6 -
 xen/arch/arm/setup.c                      |   4 +-
 xen/arch/x86/cpu/mcheck/mcaction.c        |   2 +-
 xen/arch/x86/cpu/mcheck/mce.c             |  14 +-
 xen/arch/x86/cpu/mcheck/vmce.c            |   4 +-
 xen/arch/x86/cpu/mcheck/vmce.h            |   2 +-
 xen/arch/x86/debug.c                      |   6 +-
 xen/arch/x86/domain.c                     |  23 ++--
 xen/arch/x86/domain_page.c                |  10 +-
 xen/arch/x86/domctl.c                     |   8 +-
 xen/arch/x86/guest/xen.c                  |   2 +-
 xen/arch/x86/hvm/dm.c                     |  12 +-
 xen/arch/x86/hvm/dom0_build.c             |   4 +-
 xen/arch/x86/hvm/emulate.c                |  16 +--
 xen/arch/x86/hvm/grant_table.c            |   4 +-
 xen/arch/x86/hvm/hvm.c                    |  50 +++----
 xen/arch/x86/hvm/mtrr.c                   |   2 +-
 xen/arch/x86/hvm/svm/svm.c                |   2 +-
 xen/arch/x86/hvm/vmx/vmx.c                |   7 +-
 xen/arch/x86/mm.c                         |  25 ++--
 xen/arch/x86/mm/hap/hap.c                 |   2 +-
 xen/arch/x86/mm/hap/nested_hap.c          |   6 +-
 xen/arch/x86/mm/mem_access.c              |   5 +-
 xen/arch/x86/mm/mem_sharing.c             |  33 ++---
 xen/arch/x86/mm/p2m.c                     | 115 ++++++++--------
 xen/arch/x86/mm/shadow/common.c           |   4 +-
 xen/arch/x86/mm/shadow/multi.c            |  68 +++++-----
 xen/arch/x86/mm/shadow/types.h            |   4 -
 xen/arch/x86/numa.c                       |   2 +-
 xen/arch/x86/pv/descriptor-tables.c       |   2 +-
 xen/arch/x86/pv/dom0_build.c              |   5 +-
 xen/arch/x86/pv/shim.c                    |   3 -
 xen/arch/x86/setup.c                      |  10 +-
 xen/arch/x86/srat.c                       |   2 +-
 xen/arch/x86/tboot.c                      |   4 +-
 xen/arch/x86/x86_64/mm.c                  |  10 +-
 xen/common/domctl.c                       |   2 +-
 xen/common/efi/boot.c                     |   7 +-
 xen/common/grant_table.c                  |  46 ++++---
 xen/common/memory.c                       |  39 ++++--
 xen/common/page_alloc.c                   |  10 +-
 xen/common/tmem.c                         |   2 +-
 xen/common/trace.c                        |  20 +--
 xen/common/xenoprof.c                     |   4 -
 xen/drivers/acpi/osl.c                    |   2 +-
 xen/drivers/passthrough/amd/iommu_guest.c | 218 +++++++++++++++++++-----------
 xen/include/asm-arm/grant_table.h         |  18 +--
 xen/include/asm-arm/mm.h                  |   8 +-
 xen/include/asm-x86/grant_table.h         |  23 +---
 xen/include/asm-x86/guest_pt.h            |   4 -
 xen/include/asm-x86/mm.h                  |   2 +-
 xen/include/asm-x86/p2m.h                 | 128 ++++++++++--------
 xen/include/asm-x86/page.h                |   4 +-
 xen/include/xen/domain_page.h             |   6 +-
 58 files changed, 533 insertions(+), 504 deletions(-)

-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

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

end of thread, other threads:[~2019-01-31 15:59 UTC | newest]

Thread overview: 59+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-21 13:21 [PATCH 00/14] XSA-277 followup Andrew Cooper
2018-11-21 13:21 ` [PATCH 01/14] x86/soft-reset: Drop gfn reference after calling get_gfn_query() Andrew Cooper
2018-11-22 14:45   ` Jan Beulich
2018-11-21 13:21 ` [PATCH 02/14] x86/mem-sharing: Don't leave the altp2m lock held when nominating a page Andrew Cooper
2018-11-21 16:56   ` Tamas K Lengyel
2018-11-22 14:46   ` Jan Beulich
2018-11-21 13:21 ` [PATCH 03/14] AMD/IOMMU: Fix multiple reference counting errors Andrew Cooper
2018-11-22 14:51   ` Jan Beulich
2018-11-22 17:46     ` Andrew Cooper
2018-11-23  8:23       ` Jan Beulich
2018-11-23 16:03         ` Andrew Cooper
2018-11-26  9:05           ` Jan Beulich
2019-01-31 15:59   ` Woods, Brian
2018-11-21 13:21 ` [PATCH 04/14] x86/p2m: Fix locking in p2m_altp2m_lazy_copy() Andrew Cooper
2018-11-21 13:59   ` Razvan Cojocaru
2018-11-22 15:01   ` Jan Beulich
2018-12-05 19:53     ` Andrew Cooper
2018-11-21 13:21 ` [PATCH 05/14] x86/p2m: Don't overwrite p2m_altp2m_lazy_copy()'s callers p2m pointer Andrew Cooper
2018-11-21 14:07   ` Razvan Cojocaru
2018-11-22 15:03   ` Jan Beulich
2018-11-21 13:21 ` [PATCH 06/14] x86/hvm: Make the altp2m locking easier to follow Andrew Cooper
2018-11-21 14:43   ` Razvan Cojocaru
2018-11-22 15:08   ` Jan Beulich
2018-11-21 13:21 ` [PATCH 07/14] x86/p2m: Coding style cleanup Andrew Cooper
2018-11-22 15:12   ` Jan Beulich
2018-11-21 13:21 ` [PATCH 08/14] xen/memory: Drop ARM put_gfn() stub Andrew Cooper
2018-11-22 14:07   ` Julien Grall
2018-11-22 15:15   ` Jan Beulich
2018-11-21 13:21 ` [PATCH 09/14] x86/p2m: Switch the two_gfns infrastructure to using gfn_t Andrew Cooper
2018-11-21 17:06   ` Tamas K Lengyel
2018-11-22 15:17   ` Jan Beulich
2018-11-21 13:21 ` [PATCH 10/14] x86/mm: Switch {get, put}_gfn() " Andrew Cooper
2018-11-21 14:48   ` Razvan Cojocaru
2018-11-21 16:12   ` Paul Durrant
2018-11-22 15:34   ` Jan Beulich
2018-11-23  2:58   ` Tian, Kevin
2018-11-26 15:51   ` Woods, Brian
2018-11-21 13:21 ` [PATCH 11/14] xen/mm: Switch mfn_to_virt()/virt_to_mfn() to using mfn_t Andrew Cooper
2018-11-22 14:32   ` Julien Grall
2018-11-22 15:44   ` Jan Beulich
2018-11-22 15:49     ` Andrew Cooper
2018-11-21 13:21 ` [PATCH 12/14] xen/gnttab: Drop gnttab_create_{shared, status}_page() Andrew Cooper
2018-11-22 14:35   ` Julien Grall
2018-11-22 15:47   ` Jan Beulich
2018-11-21 13:21 ` [PATCH 13/14] xen/gnttab: Simplify gnttab_map_frame() Andrew Cooper
2018-11-22 14:36   ` Julien Grall
2018-11-22 15:48   ` Jan Beulich
2018-11-21 13:21 ` [PATCH 14/14] xen/gnttab: Minor improvements to arch header files Andrew Cooper
2018-11-22 15:51   ` Jan Beulich
2018-11-22 17:56   ` Andrew Cooper
2019-01-30 20:04     ` Julien Grall
2019-01-30 20:05       ` Andrew Cooper
2018-11-21 17:19 ` [PATCH 00/14] XSA-277 followup Tamas K Lengyel
2018-11-21 21:22   ` Andrew Cooper
2018-11-21 22:42     ` Tamas K Lengyel
2018-11-22  0:08       ` Andrew Cooper
2018-11-26 17:48         ` Tamas K Lengyel
2018-11-23 15:46     ` Roger Pau Monné
2019-01-30 18:36 ` Pings for 4.12 " Andrew Cooper

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.