[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 04/11] xen/arm: remove xen_dma_ops
On Mon, 26 Aug 2019, Christoph Hellwig wrote: > arm and arm64 can just use xen_swiotlb_dma_ops directly like x86, no > need for a pointer indirection. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > Reviewed-by: Julien Grall <julien.grall@xxxxxxx> Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx> > --- > arch/arm/mm/dma-mapping.c | 3 ++- > arch/arm/xen/mm.c | 4 ---- > arch/arm64/mm/dma-mapping.c | 3 ++- > include/xen/arm/hypervisor.h | 2 -- > 4 files changed, 4 insertions(+), 8 deletions(-) > > diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c > index 738097396445..2661cad36359 100644 > --- a/arch/arm/mm/dma-mapping.c > +++ b/arch/arm/mm/dma-mapping.c > @@ -35,6 +35,7 @@ > #include <asm/mach/map.h> > #include <asm/system_info.h> > #include <asm/dma-contiguous.h> > +#include <xen/swiotlb-xen.h> > > #include "dma.h" > #include "mm.h" > @@ -2360,7 +2361,7 @@ void arch_setup_dma_ops(struct device *dev, u64 > dma_base, u64 size, > > #ifdef CONFIG_XEN > if (xen_initial_domain()) > - dev->dma_ops = xen_dma_ops; > + dev->dma_ops = &xen_swiotlb_dma_ops; > #endif > dev->archdata.dma_ops_setup = true; > } > diff --git a/arch/arm/xen/mm.c b/arch/arm/xen/mm.c > index 14210ebdea1a..9b3a6c0ca681 100644 > --- a/arch/arm/xen/mm.c > +++ b/arch/arm/xen/mm.c > @@ -163,16 +163,12 @@ void xen_destroy_contiguous_region(phys_addr_t pstart, > unsigned int order) > } > EXPORT_SYMBOL_GPL(xen_destroy_contiguous_region); > > -const struct dma_map_ops *xen_dma_ops; > -EXPORT_SYMBOL(xen_dma_ops); > - > int __init xen_mm_init(void) > { > struct gnttab_cache_flush cflush; > if (!xen_initial_domain()) > return 0; > xen_swiotlb_init(1, false); > - xen_dma_ops = &xen_swiotlb_dma_ops; > > cflush.op = 0; > cflush.a.dev_bus_addr = 0; > diff --git a/arch/arm64/mm/dma-mapping.c b/arch/arm64/mm/dma-mapping.c > index bd2b039f43a6..4b244a037349 100644 > --- a/arch/arm64/mm/dma-mapping.c > +++ b/arch/arm64/mm/dma-mapping.c > @@ -8,6 +8,7 @@ > #include <linux/cache.h> > #include <linux/dma-noncoherent.h> > #include <linux/dma-iommu.h> > +#include <xen/swiotlb-xen.h> > > #include <asm/cacheflush.h> > > @@ -64,6 +65,6 @@ void arch_setup_dma_ops(struct device *dev, u64 dma_base, > u64 size, > > #ifdef CONFIG_XEN > if (xen_initial_domain()) > - dev->dma_ops = xen_dma_ops; > + dev->dma_ops = &xen_swiotlb_dma_ops; > #endif > } > diff --git a/include/xen/arm/hypervisor.h b/include/xen/arm/hypervisor.h > index 2982571f7cc1..43ef24dd030e 100644 > --- a/include/xen/arm/hypervisor.h > +++ b/include/xen/arm/hypervisor.h > @@ -19,8 +19,6 @@ static inline enum paravirt_lazy_mode > paravirt_get_lazy_mode(void) > return PARAVIRT_LAZY_NONE; > } > > -extern const struct dma_map_ops *xen_dma_ops; > - > #ifdef CONFIG_XEN > void __init xen_early_init(void); > #else > -- > 2.20.1 > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |