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

Re: [Xen-devel] [PATCH v3 0/3] map grant refs at pfn = mfn



On Fri, 1 Aug 2014, Thomas Leonard wrote:
> On 24/07/14 14:30, Stefano Stabellini wrote:
> > Hi all,
> > this patch series introduces a second p2m mapping of grant reference on
> > ARM at guest physical address == machine address of the grant ref.  It
> > is safe because dom0 is already mapped 1:1. We export
> > XENFEAT_grant_map_identity to signal the guest that this second p2m
> > mapping is
> > available.
> > 
> > One reason for wanting the second p2m mapping is to avoid tracking mfn
> > to pfn mappings in the guest kernel. Since the same mfn can be granted
> > multiple times to the backend, finding the right pfn corresponding to a
> > given mfn can be difficult and expensive. Providing a second mapping at
> > a known address allow the kernel to access the page without knowing the
> > pfn.
> 
> Is there a version of these patches for Xen 4.4 that I can test? The
> restriction on duplicate pages is causing trouble for networking on Mirage too
> (http://roscidus.com/blog/blog/2014/07/28/my-first-unikernel/#tcp-retransmissions).

The backport is non-trivial because
552710b388630dfa461932940a998e120c42277d is missing from 4.4,
nonetheless it wasn't too hard to port:

  git://xenbits.xen.org/people/sstabellini/xen-unstable.git 
grant_map_identity_4.4



> > Changes in v3:
> > - add "introduce is_domain_direct_mapped(d) as (0) on x86";
> > - use p2m_iommu types in arch_grant_(un)map_page_identity;
> > - call arch_grant_(un)map_page_identity functions from
> > arm_smmu_(un)map_page;
> > - introduce gnttab_need_identity_mapping;
> > - check gnttab_need_identity_mapping in __gnttab_map_grant_ref and
> > __gnttab_unmap_common.
> > 
> > 
> > 
> > Stefano Stabellini (3):
> >        xen/x86: introduce is_domain_direct_mapped(d) as (0) on x86
> >        xen: introduce arch_grant_(un)map_page_identity
> >        xen/arm: introduce XENFEAT_grant_map_identity
> > 
> >   xen/arch/arm/p2m.c                 |   22 ++++++++++++++++++++++
> >   xen/common/grant_table.c           |   35
> > +++++++++++++++++++++++++++--------
> >   xen/common/kernel.c                |    3 +++
> >   xen/drivers/passthrough/arm/smmu.c |   13 ++-----------
> >   xen/include/asm-arm/grant_table.h  |    3 +++
> >   xen/include/asm-arm/p2m.h          |    4 ++++
> >   xen/include/asm-x86/domain.h       |    1 +
> >   xen/include/asm-x86/grant_table.h  |    2 ++
> >   xen/include/asm-x86/p2m.h          |   13 +++++++++++++
> >   xen/include/public/features.h      |    3 +++
> >   10 files changed, 80 insertions(+), 19 deletions(-)
> > 
> 
> 
> -- 
> Dr Thomas Leonard        http://0install.net/
> GPG: 9242 9807 C985 3C07 44A6  8B9A AE07 8280 59A5 3CC1
> GPG: DA98 25AE CAD0 8975 7CDA  BD8E 0713 3F96 CA74 D8BA
> 

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


 


Rackspace

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