[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v10 00/12] Implement the XEN_DOMCTL_memory_mapping hypercall for ARM
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 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |