All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v7 00/12] x86: guest resource mapping
@ 2017-09-18 15:31 Paul Durrant
  2017-09-18 15:31 ` [PATCH v7 01/12] x86/mm: allow a privileged PV domain to map guest mfns Paul Durrant
                   ` (11 more replies)
  0 siblings, 12 replies; 62+ messages in thread
From: Paul Durrant @ 2017-09-18 15:31 UTC (permalink / raw)
  To: xen-devel
  Cc: Stefano Stabellini, Wei Liu, George Dunlap, Andrew Cooper,
	Ian Jackson, Tim Deegan, Paul Durrant, Jan Beulich

This series introduces support for direct mapping of guest resources.
The resources are:
 - Grant tables
 - IOREQ server pages

NOTE: This series is based on a master re-base of Juergen Gross's patch "xen: move
XENMAPSPACE_grant_table code into grant_table.c". For convenience the code is also available
on a branch at:

http://xenbits.xen.org/gitweb/?p=people/pauldu/xen.git;a=shortlog;h=refs/heads/ioreq11

v7:
 - Fixed assertion failure hit during domain destroy.

v6:
 - Responded to missed comments from Roger.

v5:
 - Responded to review comments from Wei.

v4:
 - Responded to further review comments from Roger.

v3:
 - Dropped original patch #1 since it is covered by Juergen's patch.
 - Added new xenforeignmemorycleanup patch (#4).
 - Replaced the patch introducing the ioreq server 'is_default' flag with one
   that changes the ioreq server list into an array (#8).

Paul Durrant (12):
  x86/mm: allow a privileged PV domain to map guest mfns
  x86/mm: add HYPERVISOR_memory_op to acquire guest resources
  tools/libxenforeignmemory: add support for resource mapping
  tools/libxenforeignmemory: reduce xenforeignmemory_restrict code
    footprint
  tools/libxenctrl: use new xenforeignmemory API to seed grant table
  x86/hvm/ioreq: rename .*pfn and .*gmfn to .*gfn
  x86/hvm/ioreq: use bool rather than bool_t
  x86/hvm/ioreq: maintain an array of ioreq servers rather than a list
  x86/hvm/ioreq: simplify code and use consistent naming
  x86/hvm/ioreq: use gfn_t in struct hvm_ioreq_page
  x86/hvm/ioreq: defer mapping gfns until they are actually requsted
  x86/hvm/ioreq: add a new mappable resource type...

 tools/include/xen-sys/Linux/privcmd.h              |  11 +
 tools/libs/devicemodel/core.c                      |  18 +-
 tools/libs/devicemodel/include/xendevicemodel.h    |  14 +-
 tools/libs/foreignmemory/Makefile                  |   2 +-
 tools/libs/foreignmemory/core.c                    |  53 ++
 tools/libs/foreignmemory/freebsd.c                 |   7 -
 .../libs/foreignmemory/include/xenforeignmemory.h  |  41 +
 tools/libs/foreignmemory/libxenforeignmemory.map   |   5 +
 tools/libs/foreignmemory/linux.c                   |  45 ++
 tools/libs/foreignmemory/minios.c                  |   7 -
 tools/libs/foreignmemory/netbsd.c                  |   7 -
 tools/libs/foreignmemory/private.h                 |  43 +-
 tools/libs/foreignmemory/solaris.c                 |   7 -
 tools/libxc/include/xc_dom.h                       |   8 +-
 tools/libxc/xc_dom_boot.c                          | 114 ++-
 tools/libxc/xc_sr_restore_x86_hvm.c                |  10 +-
 tools/libxc/xc_sr_restore_x86_pv.c                 |   2 +-
 tools/libxl/libxl_dom.c                            |   1 -
 tools/python/xen/lowlevel/xc/xc.c                  |   6 +-
 xen/arch/x86/hvm/dm.c                              |  11 +-
 xen/arch/x86/hvm/hvm.c                             |   8 +-
 xen/arch/x86/hvm/io.c                              |   4 +-
 xen/arch/x86/hvm/ioreq.c                           | 869 +++++++++++----------
 xen/arch/x86/mm.c                                  | 151 +++-
 xen/arch/x86/mm/p2m.c                              |   3 +-
 xen/common/grant_table.c                           |  56 +-
 xen/include/asm-x86/hvm/domain.h                   |  21 +-
 xen/include/asm-x86/hvm/ioreq.h                    |  24 +-
 xen/include/asm-x86/p2m.h                          |   3 +
 xen/include/public/hvm/dm_op.h                     |  46 +-
 xen/include/public/memory.h                        |  41 +-
 xen/include/xen/grant_table.h                      |   1 +
 32 files changed, 1081 insertions(+), 558 deletions(-)

---
Cc: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <george.dunlap@eu.citrix.com>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Tim Deegan <tim@xen.org>
Cc: Wei Liu <wei.liu2@citrix.com>

-- 
2.11.0


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

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

end of thread, other threads:[~2017-09-27 14:52 UTC | newest]

Thread overview: 62+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-18 15:31 [PATCH v7 00/12] x86: guest resource mapping Paul Durrant
2017-09-18 15:31 ` [PATCH v7 01/12] x86/mm: allow a privileged PV domain to map guest mfns Paul Durrant
2017-09-19 12:51   ` Paul Durrant
2017-09-19 13:05     ` Jan Beulich
2017-09-25 13:02   ` Jan Beulich
2017-09-25 13:29     ` Andrew Cooper
2017-09-25 14:03       ` Jan Beulich
2017-09-25 14:42     ` Paul Durrant
2017-09-25 14:49       ` Jan Beulich
2017-09-25 14:56         ` Paul Durrant
2017-09-25 15:30           ` Jan Beulich
2017-09-25 15:33             ` Paul Durrant
2017-09-27 11:18     ` Paul Durrant
2017-09-27 12:46       ` Jan Beulich
2017-09-27 12:49         ` Paul Durrant
2017-09-27 13:31           ` Jan Beulich
2017-09-27 14:22             ` Paul Durrant
2017-09-27 14:42               ` Jan Beulich
2017-09-27 14:47                 ` Paul Durrant
2017-09-18 15:31 ` [PATCH v7 02/12] x86/mm: add HYPERVISOR_memory_op to acquire guest resources Paul Durrant
2017-09-25 13:49   ` Jan Beulich
2017-09-25 14:53     ` Paul Durrant
2017-09-25 14:23   ` Jan Beulich
2017-09-25 15:00     ` Paul Durrant
2017-09-26 12:20       ` Paul Durrant
2017-09-26 12:35         ` Jan Beulich
2017-09-26 12:49           ` Paul Durrant
2017-09-27 11:34             ` Andrew Cooper
2017-09-27 12:56               ` Jan Beulich
2017-09-18 15:31 ` [PATCH v7 03/12] tools/libxenforeignmemory: add support for resource mapping Paul Durrant
2017-09-18 16:16   ` Ian Jackson
2017-09-19  8:19     ` Paul Durrant
2017-09-18 15:31 ` [PATCH v7 04/12] tools/libxenforeignmemory: reduce xenforeignmemory_restrict code footprint Paul Durrant
2017-09-18 15:31 ` [PATCH v7 05/12] tools/libxenctrl: use new xenforeignmemory API to seed grant table Paul Durrant
2017-09-18 15:31 ` [PATCH v7 06/12] x86/hvm/ioreq: rename .*pfn and .*gmfn to .*gfn Paul Durrant
2017-09-25 14:29   ` Jan Beulich
2017-09-25 14:32     ` Paul Durrant
2017-09-18 15:31 ` [PATCH v7 07/12] x86/hvm/ioreq: use bool rather than bool_t Paul Durrant
2017-09-25 14:30   ` Jan Beulich
2017-09-18 15:31 ` [PATCH v7 08/12] x86/hvm/ioreq: maintain an array of ioreq servers rather than a list Paul Durrant
2017-09-25 15:17   ` Jan Beulich
2017-09-26 10:55     ` Paul Durrant
2017-09-26 11:45       ` Jan Beulich
2017-09-26 12:12         ` Paul Durrant
2017-09-26 12:38           ` Jan Beulich
2017-09-26 12:41             ` Paul Durrant
2017-09-26 13:03               ` Jan Beulich
2017-09-26 13:11                 ` Paul Durrant
2017-09-18 15:31 ` [PATCH v7 09/12] x86/hvm/ioreq: simplify code and use consistent naming Paul Durrant
2017-09-25 15:26   ` Jan Beulich
2017-09-18 15:31 ` [PATCH v7 10/12] x86/hvm/ioreq: use gfn_t in struct hvm_ioreq_page Paul Durrant
2017-09-25 15:27   ` Jan Beulich
2017-09-18 15:31 ` [PATCH v7 11/12] x86/hvm/ioreq: defer mapping gfns until they are actually requsted Paul Durrant
2017-09-25 16:00   ` Jan Beulich
2017-09-25 16:04     ` Paul Durrant
2017-09-18 15:31 ` [PATCH v7 12/12] x86/hvm/ioreq: add a new mappable resource type Paul Durrant
2017-09-18 16:18   ` Roger Pau Monné
2017-09-19  8:14     ` Paul Durrant
2017-09-26 12:58   ` Jan Beulich
2017-09-26 13:05     ` Paul Durrant
2017-09-26 13:10       ` Jan Beulich
2017-09-26 13:12         ` Paul Durrant

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.