[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH v4 00/31] x86: refactor mm.c



This series is basically all patches in v3 rebased on top of staging, since the
security issues blocking v3 are now published.

I also added BUG() in pv_{alloc,free}_page_type stubs.

The last patch to move the code comment is dropped for now.

The code can be found at:

   https://xenbits.xen.org/git-http/people/liuw/xen.git wip.split-mm-v4

Wei.

Wei Liu (31):
  x86/mm: carve out create_grant_pv_mapping
  x86/mm: carve out replace_grant_pv_mapping
  x86/mm: split HVM grant table code to hvm/grant_table.c
  x86/mm: lift PAGE_CACHE_ATTRS to page.h
  x86/mm: document the return values from get_page_from_l*e
  x86: move pv_emul_is_mem_write to pv/emulate.c
  x86/mm: move and rename guest_get_eff{,kern}_l1e
  x86/mm: export get_page_from_mfn
  x86/mm: rename and move update_intpte
  x86/mm: move {un,}adjust_guest_* to pv/mm.h
  x86/mm: split out writable pagetable emulation code
  x86/mm: split out readonly MMIO emulation code
  x86/mm: remove the unused inclusion of pv/emulate.h
  x86/mm: move and rename guest_{,un}map_l1e
  x86/mm: split out PV grant table code
  x86/mm: split out descriptor table code
  x86/mm: move compat descriptor handling code
  x86/mm: move and rename map_ldt_shadow_page
  x86/mm: factor out pv_arch_init_memory
  x86/mm: move l4 table setup code
  x86/mm: add "pv_" prefix to new_guest_cr3
  x86: add pv_ prefix to {alloc,free}_page_type
  x86/mm: export more get/put page functions
  x86/mm: move and add pv_ prefix to create_pae_xen_mappings
  x86/mm: move disallow_mask variable and macros
  x86/mm: move pv_{alloc,free}_page_type
  x86/mm: move and add pv_ prefix to invalidate_shadow_ldt
  x86/mm: move PV hypercalls to pv/mm-hypercalls.c
  x86/mm: remove the now unused inclusion of pv/mm.h
  x86/mm: use put_page_type_preemptible in put_page_from_l{2,3}e
  x86/mm: move {get,put}_page_from_l{2,3,4}e

 xen/arch/x86/domain.c                 |   14 +-
 xen/arch/x86/hvm/Makefile             |    1 +
 xen/arch/x86/hvm/grant_table.c        |   89 +
 xen/arch/x86/mm.c                     | 4389 ++++-----------------------------
 xen/arch/x86/pv/Makefile              |    6 +
 xen/arch/x86/pv/descriptor-tables.c   |  270 ++
 xen/arch/x86/pv/dom0_build.c          |    3 +-
 xen/arch/x86/pv/domain.c              |    3 +-
 xen/arch/x86/pv/emul-mmio-op.c        |  166 ++
 xen/arch/x86/pv/emul-priv-op.c        |    3 +-
 xen/arch/x86/pv/emul-ptwr-op.c        |  327 +++
 xen/arch/x86/pv/emulate.c             |    7 +
 xen/arch/x86/pv/emulate.h             |    5 +
 xen/arch/x86/pv/grant_table.c         |  398 +++
 xen/arch/x86/pv/mm-hypercalls.c       | 1463 +++++++++++
 xen/arch/x86/pv/mm.c                  | 1034 ++++++++
 xen/arch/x86/pv/mm.h                  |    6 +
 xen/arch/x86/traps.c                  |    5 +-
 xen/arch/x86/x86_64/compat/mm.c       |   39 -
 xen/include/asm-x86/grant_table.h     |   26 +-
 xen/include/asm-x86/hvm/grant_table.h |   61 +
 xen/include/asm-x86/mm.h              |   35 +-
 xen/include/asm-x86/page.h            |    2 +
 xen/include/asm-x86/processor.h       |    5 -
 xen/include/asm-x86/pv/grant_table.h  |   60 +
 xen/include/asm-x86/pv/mm.h           |  187 ++
 xen/include/asm-x86/pv/processor.h    |   42 +
 27 files changed, 4612 insertions(+), 4034 deletions(-)
 create mode 100644 xen/arch/x86/hvm/grant_table.c
 create mode 100644 xen/arch/x86/pv/descriptor-tables.c
 create mode 100644 xen/arch/x86/pv/emul-mmio-op.c
 create mode 100644 xen/arch/x86/pv/emul-ptwr-op.c
 create mode 100644 xen/arch/x86/pv/grant_table.c
 create mode 100644 xen/arch/x86/pv/mm-hypercalls.c
 create mode 100644 xen/arch/x86/pv/mm.c
 create mode 100644 xen/arch/x86/pv/mm.h
 create mode 100644 xen/include/asm-x86/hvm/grant_table.h
 create mode 100644 xen/include/asm-x86/pv/grant_table.h
 create mode 100644 xen/include/asm-x86/pv/mm.h
 create mode 100644 xen/include/asm-x86/pv/processor.h

-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.