All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v10 00/12] Implement the XEN_DOMCTL_memory_mapping hypercall for ARM
@ 2014-07-28 22:11 Arianna Avanzini
  2014-07-28 22:11 ` [PATCH v10 01/12] arch/arm: add consistency check to REMOVE p2m changes Arianna Avanzini
                   ` (12 more replies)
  0 siblings, 13 replies; 34+ messages in thread
From: Arianna Avanzini @ 2014-07-28 22:11 UTC (permalink / raw)
  To: xen-devel
  Cc: Ian.Campbell, paolo.valente, keir, stefano.stabellini,
	Ian.Jackson, dario.faggioli, tim, julien.grall, etrudeau,
	andrew.cooper3, JBeulich, avanzini.arianna, viktor.kleinik

Hello,

here I am finally with the tenth version of my implementation proposal for the
memory_mapping DOMCTL for the ARM architecture. As I did for the previous
versions, I'll try to keep this cover letter as short as I can by listing here
only the most relevant changes, while a more detailed description can be found
in the description and changelog that comes with each of the patches. More
detailed information about the patch series' genesis can be found in the last
full cover letter ([1]).
Please note that the second and third patches of the v9 series have been merged
by Ian Campbell ([2]) as they resulted in an interface change that would have
clashed with other upcoming merges.

Patch 0001 has been fixed according to directives given by Julien Grall and
Ian Campbell; the main change is in the fact that now the ARM-related code
handling the removal of an I/O-memory mapping follows a behavior which matches
the one introduced for x86 by patch 0003: in case the given machine frame
number is mapped to an unexpected guest frame number, it emits a warning and
still destroys the mapping.

Patch 0002 has been modified according to suggestions given by Ian Campbell;
now in case that the insertion of a new I/O-memory mapping fails (even if only
partially) the whole range is unmapped.

Coding style issues existing in patch 0006 and pointed out by Jan Beulich have
been hopefully addressed here.

A patch 0010 has been added that moves libxl's PCI-related macros, previously
kept in the libxl_pci.c file, to a header file.

After some discussion involving Ian Campbell, Jan Beulich and Sander Eikelenboom
patch 0011 has been changed according to directives from Ian Campbell. Now the
I/O-memory areas needed to passthrough a VGA device in addition to PCI-related
ones are made accessible to any guest having gfx_passthru set to true in its
config and at least one passthru PCI device having a device class of 0x030000
(which should identify it as a VGA device).

The code has again been tested on a cubieboard2, with Linux v3.15-rc3 as a dom0
and ERIKA Enterprise ([3]) as a domU. The x86 bits have been tested on an x86_64
machine with Linux 3.15.0-rc5 as both dom0 and domU.
Any feedback about this new version of the patchset is more than welcome,
Arianna

[1] http://lists.xen.org/archives/html/xen-devel/2014-03/msg01724.html
[2] http://markmail.org/message/7t6erxfy7pgorakb
[3] http://erika.tuxfamily.org/drupal/

Arianna Avanzini (12):
  arch/arm: add consistency check to REMOVE p2m changes
  arch/arm: unmap partially-mapped I/O-memory regions
  arch/x86: warn if to-be-removed mapping does not exist
  arch/x86: cleanup memory_mapping DOMCTL
  xen/common: add ARM stub for the function memory_type_changed()
  xen/x86: factor out map and unmap from the memory_mapping DOMCTL
  xen/common: move the memory_mapping DOMCTL hypercall to common code
  tools/libxl: parse optional start gfn from the iomem config option
  tools/libxl: handle the iomem parameter with the memory_mapping hcall
  tools/libxl: move PCI-related macros in a header file
  tools/libxl: explicitly grant access to needed I/O-memory ranges
  xen/common: do not implicitly permit access to mapped I/O memory

 docs/man/xl.cfg.pod.5        | 18 +++++++---
 tools/libxc/xc_domain.c      | 10 ++++++
 tools/libxl/libxl.h          | 10 ++++++
 tools/libxl/libxl_create.c   | 77 +++++++++++++++++++++++++++++++++++++++++
 tools/libxl/libxl_internal.h |  1 +
 tools/libxl/libxl_pci.c      | 33 ++++++------------
 tools/libxl/libxl_pci.h      | 10 ++++++
 tools/libxl/libxl_types.idl  |  4 +++
 tools/libxl/xl_cmdimpl.c     | 18 ++++++----
 xen/arch/arm/p2m.c           | 82 ++++++++++++++++++++++++++++++++------------
 xen/arch/x86/domctl.c        | 76 ----------------------------------------
 xen/arch/x86/mm/p2m.c        | 57 +++++++++++++++++++++++++++---
 xen/common/domctl.c          | 54 +++++++++++++++++++++++++++--
 xen/common/memory.c          |  2 +-
 xen/include/asm-arm/p2m.h    | 13 ++++---
 xen/include/asm-x86/p2m.h    |  3 +-
 xen/include/xen/p2m-common.h | 16 +++++++++
 17 files changed, 337 insertions(+), 147 deletions(-)
 create mode 100644 tools/libxl/libxl_pci.h
 create mode 100644 xen/include/xen/p2m-common.h

-- 
2.0.3

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

end of thread, other threads:[~2014-08-23 17:36 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-07-28 22:11 [PATCH v10 00/12] Implement the XEN_DOMCTL_memory_mapping hypercall for ARM Arianna Avanzini
2014-07-28 22:11 ` [PATCH v10 01/12] arch/arm: add consistency check to REMOVE p2m changes Arianna Avanzini
2014-07-29 11:55   ` Julien Grall
2014-07-29 12:01     ` Ian Campbell
2014-07-29 12:02     ` Andrew Cooper
2014-07-28 22:11 ` [PATCH v10 02/12] arch/arm: unmap partially-mapped I/O-memory regions Arianna Avanzini
2014-07-29 12:00   ` Julien Grall
2014-07-28 22:12 ` [PATCH v10 03/12] arch/x86: warn if to-be-removed mapping does not exist Arianna Avanzini
2014-07-28 22:12 ` [PATCH v10 04/12] arch/x86: cleanup memory_mapping DOMCTL Arianna Avanzini
2014-07-28 22:12 ` [PATCH v10 05/12] xen/common: add ARM stub for the function memory_type_changed() Arianna Avanzini
2014-07-28 22:12 ` [PATCH v10 06/12] xen/x86: factor out map and unmap from the memory_mapping DOMCTL Arianna Avanzini
2014-07-29  7:27   ` Jan Beulich
2014-07-29 12:02   ` Julien Grall
2014-07-28 22:12 ` [PATCH v10 07/12] xen/common: move the memory_mapping DOMCTL hypercall to common code Arianna Avanzini
2014-07-30 15:59   ` Julien Grall
2014-07-28 22:12 ` [PATCH v10 08/12] tools/libxl: parse optional start gfn from the iomem config option Arianna Avanzini
2014-08-04 13:39   ` Julien Grall
2014-07-28 22:12 ` [PATCH v10 09/12] tools/libxl: handle the iomem parameter with the memory_mapping hcall Arianna Avanzini
2014-07-28 22:12 ` [PATCH v10 10/12] tools/libxl: move PCI-related macros in a header file Arianna Avanzini
2014-07-28 22:12 ` [PATCH v10 11/12] tools/libxl: explicitly grant access to needed I/O-memory ranges Arianna Avanzini
2014-07-30 11:33   ` Ian Campbell
2014-07-28 22:12 ` [PATCH v10 12/12] xen/common: do not implicitly permit access to mapped I/O memory Arianna Avanzini
2014-07-29  7:29   ` Jan Beulich
2014-08-18 19:50 ` [PATCH v10 00/12] Implement the XEN_DOMCTL_memory_mapping hypercall for ARM Andrii Tseglytskyi
2014-08-20 18:50   ` Arianna Avanzini
2014-08-20 19:15     ` Andrii Tseglytskyi
2014-08-21 15:43       ` Andrii Tseglytskyi
2014-08-22 14:25         ` Arianna Avanzini
2014-08-22 18:27           ` Andrii Tseglytskyi
2014-08-22 18:36             ` Arianna Avanzini
2014-08-22 19:31               ` Andrii Tseglytskyi
2014-08-22 23:51                 ` Stefano Stabellini
2014-08-23 12:07                   ` Arianna Avanzini
2014-08-23 17:36                     ` Andrii Tseglytskyi

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.