From: Arianna Avanzini <avanzini.arianna@gmail.com>
To: xen-devel@lists.xen.org
Cc: Ian.Campbell@eu.citrix.com, paolo.valente@unimore.it,
keir@xen.org, stefano.stabellini@eu.citrix.com,
Ian.Jackson@eu.citrix.com, dario.faggioli@citrix.com,
tim@xen.org, julien.grall@citrix.com, etrudeau@broadcom.com,
andrew.cooper3@citrix.com, JBeulich@suse.com,
avanzini.arianna@gmail.com, viktor.kleinik@globallogic.com,
andrii.tseglytskyi@globallogic.com
Subject: [PATCH v11 00/14] Implement the XEN_DOMCTL_memory_mapping hypercall for ARM
Date: Sun, 24 Aug 2014 22:29:53 +0200 [thread overview]
Message-ID: <1408912207-28146-1-git-send-email-avanzini.arianna@gmail.com> (raw)
Hello,
here is the eleventh version of my implementation proposal for the DOMCTL
memory_mapping for the ARM architecture. As usual, I'll try to keep this
as short as I can by just going through the most relevant changes. A more
detailed changelog is in the description of each of the commits, while an
extensive summary of the patch series' genesis can be found in the last
full cover letter ([1]).
Please note that this patchset includes a contribution from Andrii Tseglytskyi,
as you may also see from the shortlog below.
Patch 0001 has been fixed according to suggestions given by Julien Grall and
approved by Ian Campbell. Now it handles even level 3 mappings. Also, as
suggested by Andrew Cooper, the printk uses a XENLOG_G_WARNING loglevel so
that it can be rate-limited appropriately.
Patch 0002 has also been changed according to directives provided by Julien
Grall. Now partially-mapped memory regions are unmapped regardless of their
being I/O-memory or not.
Patch 0008 has been fixed according to directive from Julien Grall.
Patch 0010 has been added to allow FLASK to handle the memory_mapping case
also on ARM architecture, therefore preventing wrong error messages from
being printed, as indicated by Julien Grall.
A new patch 0011, contributed by Andrii Tseglytskyi, has been merged into
the series. It adds a FLASK policy rule to allow a domU to access previously-
mapped I/O-memory regions.
Patch 0012 has been modified according to suggestions provided by Ian Campbell.
The VGA-related bits have been moved to a libxl_pci helper. Non-functional
changes have been split into patch 0013 to facilitate review. A leftover debug
print has been removed.
As usual, 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/
Andrii Tseglytskyi (1):
flask/policy: allow domU to use previously-mapped I/O-memory
Arianna Avanzini (13):
arch/arm: add consistency check to REMOVE p2m changes
arch/arm: unmap partially-mapped 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
xsm/flask: avoid spurious error messages when mapping I/O-memory
tools/libxl: explicitly grant access to needed I/O-memory ranges
tools/libxl: cleanup the do_pci_add() function
xen/common: do not implicitly permit access to mapped I/O memory
docs/man/xl.cfg.pod.5 | 18 ++-
tools/flask/policy/policy/modules/xen/xen.te | 1 +
tools/libxc/xc_domain.c | 10 ++
tools/libxl/libxl.h | 10 ++
tools/libxl/libxl_create.c | 28 +++-
tools/libxl/libxl_internal.h | 3 +
tools/libxl/libxl_pci.c | 213 +++++++++++++++++----------
tools/libxl/libxl_types.idl | 4 +
tools/libxl/xl_cmdimpl.c | 17 ++-
xen/arch/arm/p2m.c | 44 +++++-
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 ++
xen/xsm/flask/hooks.c | 2 +-
18 files changed, 385 insertions(+), 186 deletions(-)
create mode 100644 xen/include/xen/p2m-common.h
--
2.1.0
next reply other threads:[~2014-08-24 20:29 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-24 20:29 Arianna Avanzini [this message]
2014-08-24 20:29 ` [PATCH v11 01/14] arch/arm: add consistency check to REMOVE p2m changes Arianna Avanzini
2014-08-27 14:46 ` Julien Grall
2014-08-24 20:29 ` [PATCH v11 02/14] arch/arm: unmap partially-mapped memory regions Arianna Avanzini
2014-08-27 16:35 ` Julien Grall
2014-08-28 9:19 ` Arianna Avanzini
2014-08-29 19:19 ` Julien Grall
2014-08-24 20:29 ` [PATCH v11 03/14] arch/x86: warn if to-be-removed mapping does not exist Arianna Avanzini
2014-08-24 20:29 ` [PATCH v11 04/14] arch/x86: cleanup memory_mapping DOMCTL Arianna Avanzini
2014-08-24 20:29 ` [PATCH v11 05/14] xen/common: add ARM stub for the function memory_type_changed() Arianna Avanzini
2014-08-24 20:29 ` [PATCH v11 06/14] xen/x86: factor out map and unmap from the memory_mapping DOMCTL Arianna Avanzini
2014-08-24 20:30 ` [PATCH v11 07/14] xen/common: move the memory_mapping DOMCTL hypercall to common code Arianna Avanzini
2014-08-24 20:30 ` [PATCH v11 08/14] tools/libxl: parse optional start gfn from the iomem config option Arianna Avanzini
2014-08-24 20:30 ` [PATCH v11 09/14] tools/libxl: handle the iomem parameter with the memory_mapping hcall Arianna Avanzini
2014-08-24 20:30 ` [PATCH v11 10/14] xsm/flask: avoid spurious error messages when mapping I/O-memory Arianna Avanzini
2014-08-27 16:40 ` Julien Grall
2014-08-24 20:30 ` [PATCH v11 11/14] flask/policy: allow domU to use previously-mapped I/O-memory Arianna Avanzini
2014-08-24 20:30 ` [PATCH v11 12/14] tools/libxl: explicitly grant access to needed I/O-memory ranges Arianna Avanzini
2014-08-24 20:30 ` [PATCH v11 13/14] tools/libxl: cleanup the do_pci_add() function Arianna Avanzini
2014-08-24 20:30 ` [PATCH v11 14/14] xen/common: do not implicitly permit access to mapped I/O memory Arianna Avanzini
2014-08-29 13:41 ` [PATCH v11 00/14] Implement the XEN_DOMCTL_memory_mapping hypercall for ARM Andrii Tseglytskyi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1408912207-28146-1-git-send-email-avanzini.arianna@gmail.com \
--to=avanzini.arianna@gmail.com \
--cc=Ian.Campbell@eu.citrix.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=JBeulich@suse.com \
--cc=andrew.cooper3@citrix.com \
--cc=andrii.tseglytskyi@globallogic.com \
--cc=dario.faggioli@citrix.com \
--cc=etrudeau@broadcom.com \
--cc=julien.grall@citrix.com \
--cc=keir@xen.org \
--cc=paolo.valente@unimore.it \
--cc=stefano.stabellini@eu.citrix.com \
--cc=tim@xen.org \
--cc=viktor.kleinik@globallogic.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).