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

Re: [Xen-devel] [PATCH v8 0/8] Allow setting up shared memory areas between VMs from xl config files



Hi, Julien.

On Wed, Oct 24, 2018 at 5:25 PM Julien Grall <julien.grall@xxxxxxx> wrote:
>
>
>
> On 10/24/18 3:15 PM, Oleksandr Tyshchenko wrote:
> > Hi, Stefano
> >
> > On Sat, Oct 20, 2018 at 12:07 AM Stefano Stabellini
> > <sstabellini@xxxxxxxxxx> wrote:
> >>
> >> Hi Wei,
> >>
> >> Any chances you can review this series soon? I would love for it to be
> >> merged before the 4.12 code freeze.
> >>
> >> FYI I am making progress upstreaming the device tree binding, they asked
> >> for a very minor change, which I am happy to include in the next version
> >> of the series:
> >>
> >> https://marc.info/?l=devicetree&m=153989826510707&w=2
> >>
> >>
> >> On Mon, 8 Oct 2018, Stefano Stabellini wrote:
> >>> Hi,
> >>>
> >>> This series implements a new xl config entry. Users can use the new
> >>> config entry to statically setup shared memory areas among VMs that
> >>> don't have grant table support so that they could communicate with each
> >>> other through the static shared memory areas.
> >>>
> >>> It was originally developed by Zhongze, I am just updating the last few
> >>> issued that were address during the last round of reviews in January. I
> >>> tested the feature on ARM and works fine.
> >>>
> >>> Cheers,
> >>>
> >>> Stefano
> >>>
> >>>
> >>> Main changes in v8:
> >>> - remove "add xen,dmabuf nodes" patch
> >>> - add "map reserved-memory regions as normal memory in dom0" patch
> >>> - send new device tree binding request to devicetree.org
> >>>
> >>>
> >>>
> >>> The following changes since commit 
> >>> 85b00385827e4e061b2ff38b549c03d0f1e66b6a:
> >>>
> >>>    xen/sched: Drop set_current_state() (2018-10-08 18:34:55 +0100)
> >>>
> >>> are available in the git repository at:
> >>>
> >>>    
> >>> http://xenbits.xenproject.org/git-http/people/sstabellini/xen-unstable.git
> >>>  share_mem-v8
> >>>
> >>> for you to fetch changes up to fc00e34ce9924b5915deacd881ae7cd6888510ba:
> >>>
> >>>    xen/arm: map reserved-memory regions as normal memory in dom0 
> >>> (2018-10-08 16:34:09 -0700)
> >>>
> >>> ----------------------------------------------------------------
> >>> Stefano Stabellini (2):
> >>>        xen/arm: export shared memory regions as reserved-memory on device 
> >>> tree
> >>>        xen/arm: map reserved-memory regions as normal memory in dom0
> >>>
> >>> Zhongze Liu (6):
> >>>        xen: xsm: flask: introduce XENMAPSPACE_gmfn_share for memory 
> >>> sharing
> >>>        libxl: introduce a new structure to represent static shared memory 
> >>> regions
> >>>        libxl: support mapping static shared memory areas during domain 
> >>> creation
> >>>        libxl: support unmapping static shared memory areas during domain 
> >>> destruction
> >>>        libxl:xl: add parsing code to parse "libxl_static_sshm" from xl 
> >>> config files
> >>>        docs: documentation about static shared memory regions
> >>>
> >>>   docs/man/xl-static-shm-configuration.pod.5 | 264 +++++++++++++++
> >>>   docs/man/xl.cfg.pod.5.in                   |   8 +
> >>>   docs/misc/xenstore-paths.markdown          |  47 +++
> >>>   tools/flask/policy/modules/xen.if          |   2 +
> >>>   tools/libxl/Makefile                       |   5 +-
> >>>   tools/libxl/libxl.h                        |   8 +
> >>>   tools/libxl/libxl_arch.h                   |   8 +-
> >>>   tools/libxl/libxl_arm.c                    |  76 ++++-
> >>>   tools/libxl/libxl_create.c                 |  27 ++
> >>>   tools/libxl/libxl_dom.c                    |   2 +-
> >>>   tools/libxl/libxl_domain.c                 |   5 +
> >>>   tools/libxl/libxl_internal.h               |  16 +
> >>>   tools/libxl/libxl_sshm.c                   | 512 
> >>> +++++++++++++++++++++++++++++
> >>>   tools/libxl/libxl_types.idl                |  32 +-
> >>>   tools/libxl/libxl_x86.c                    |  21 +-
> >>>   tools/libxl/libxlu_sshm.c                  | 206 ++++++++++++
> >>>   tools/libxl/libxlutil.h                    |   6 +
> >>>   tools/xl/xl_parse.c                        |  25 +-
> >>>   xen/arch/arm/domain_build.c                |   7 +
> >>>   xen/arch/arm/mm.c                          |   7 +-
> >>>   xen/include/public/memory.h                |   8 +
> >>>   xen/include/xsm/dummy.h                    |  14 +
> >>>   xen/include/xsm/xsm.h                      |   6 +
> >>>   xen/xsm/dummy.c                            |   1 +
> >>>   xen/xsm/flask/hooks.c                      |   9 +
> >>>   xen/xsm/flask/policy/access_vectors        |   5 +
> >>>   26 files changed, 1315 insertions(+), 12 deletions(-)
> >>>   create mode 100644 docs/man/xl-static-shm-configuration.pod.5
> >>>   create mode 100644 tools/libxl/libxl_sshm.c
> >>>   create mode 100644 tools/libxl/libxlu_sshm.c
> >>>
> >>
> >> _______________________________________________
> >> Xen-devel mailing list
> >> Xen-devel@xxxxxxxxxxxxxxxxxxxx
> >> https://lists.xenproject.org/mailman/listinfo/xen-devel
> >
> > I have question regarding format of "begin", "size" and "offset" properties.
> > Wouldn't be better to operate with page numbers rather than addresses
> > like it is done for "iomem"?
> >
> > I see that in many functions (libxl_sshm.c) these addresses are being
> > transformed into page numbers the first.
> > Moreover if the Xen shared memory feature can deal with 4K page
> > aligned addresses only, why we provide
> > possibility for user to set any addresses and then check them for
> > alignment rules?
>
> Arm supports multiple page granularity (4K, 16K, 64K). Xen is always
> using 4K today, but guest can use any page granularity. This makes quite
> confusing what is the page granularity used here.
>
> Also, we may want to boot Xen with different granularity in the future.
> So the best is to keep the address agnostic to the page granularity.
Thank you. Now I understand the reason.

>
> Cheers,
>
> --
> Julien Grall



--
Regards,

Oleksandr Tyshchenko

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

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