Re: [Intel-gfx] [PATCH] dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro
Minor nits, otherwise the vmwgfx part, Reviewed-by: Sinclair Yeh On Tue, Apr 18, 2017 at 06:17:00PM -0600, Logan Gunthorpe wrote: > Seeing the kunmap_atomic dma_buf_op shares the same name with a macro s^ > in higmem.h, the former can be aliased if any dma-buf user includes h^ > that header. > > I'm personally trying to include highmem.h inside scatterlist.h and this > breaks the dma-buf code proper. > > Christoph Hellwig suggested [1] renaming it and pushing this patch ASAP. > > To maintain consistency I've renamed all four of kmap* and kunmap* to be > map* and unmap*. (Even though only kmap_atomic presently conflicts.) > > [1] > https://urldefense.proofpoint.com/v2/url?u=https-3A__www.spinics.net_lists_target-2Ddevel_msg15070.html&d=DwIBAg&c=uilaK90D4TOVoH58JNXRgQ&r=HaJ2a6NYExoV0cntAYcoqA&m=QP_jolGTC4ofBnHRnAs0tFIXHnVWaTT0AdMyCL9SM64&s=un2hxBL1283iOTtJeJnvyyvtAu1d5Imyh5Q7AzljrfQ&e= > > > Signed-off-by: Logan Gunthorpe > --- > drivers/dma-buf/dma-buf.c | 16 > drivers/gpu/drm/armada/armada_gem.c| 8 > drivers/gpu/drm/drm_prime.c| 8 > drivers/gpu/drm/i915/i915_gem_dmabuf.c | 8 > drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 8 > drivers/gpu/drm/tegra/gem.c| 4 ++-- > drivers/gpu/drm/udl/udl_dmabuf.c | 8 > drivers/gpu/drm/vmwgfx/vmwgfx_prime.c | 8 > drivers/media/v4l2-core/videobuf2-dma-contig.c | 4 ++-- > drivers/media/v4l2-core/videobuf2-dma-sg.c | 4 ++-- > drivers/media/v4l2-core/videobuf2-vmalloc.c| 4 ++-- > drivers/staging/android/ion/ion.c | 8 > include/linux/dma-buf.h| 22 +++--- > 13 files changed, 55 insertions(+), 55 deletions(-) > > diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c > index 0007b79..7cc2bfe 100644 > --- a/drivers/dma-buf/dma-buf.c > +++ b/drivers/dma-buf/dma-buf.c > @@ -405,8 +405,8 @@ struct dma_buf *dma_buf_export(const struct > dma_buf_export_info *exp_info) > || !exp_info->ops->map_dma_buf > || !exp_info->ops->unmap_dma_buf > || !exp_info->ops->release > - || !exp_info->ops->kmap_atomic > - || !exp_info->ops->kmap > + || !exp_info->ops->map_atomic > + || !exp_info->ops->map > || !exp_info->ops->mmap)) { > return ERR_PTR(-EINVAL); > } > @@ -872,7 +872,7 @@ void *dma_buf_kmap_atomic(struct dma_buf *dmabuf, > unsigned long page_num) > { > WARN_ON(!dmabuf); > > - return dmabuf->ops->kmap_atomic(dmabuf, page_num); > + return dmabuf->ops->map_atomic(dmabuf, page_num); > } > EXPORT_SYMBOL_GPL(dma_buf_kmap_atomic); > > @@ -889,8 +889,8 @@ void dma_buf_kunmap_atomic(struct dma_buf *dmabuf, > unsigned long page_num, > { > WARN_ON(!dmabuf); > > - if (dmabuf->ops->kunmap_atomic) > - dmabuf->ops->kunmap_atomic(dmabuf, page_num, vaddr); > + if (dmabuf->ops->unmap_atomic) > + dmabuf->ops->unmap_atomic(dmabuf, page_num, vaddr); > } > EXPORT_SYMBOL_GPL(dma_buf_kunmap_atomic); > > @@ -907,7 +907,7 @@ void *dma_buf_kmap(struct dma_buf *dmabuf, unsigned long > page_num) > { > WARN_ON(!dmabuf); > > - return dmabuf->ops->kmap(dmabuf, page_num); > + return dmabuf->ops->map(dmabuf, page_num); > } > EXPORT_SYMBOL_GPL(dma_buf_kmap); > > @@ -924,8 +924,8 @@ void dma_buf_kunmap(struct dma_buf *dmabuf, unsigned long > page_num, > { > WARN_ON(!dmabuf); > > - if (dmabuf->ops->kunmap) > - dmabuf->ops->kunmap(dmabuf, page_num, vaddr); > + if (dmabuf->ops->unmap) > + dmabuf->ops->unmap(dmabuf, page_num, vaddr); > } > EXPORT_SYMBOL_GPL(dma_buf_kunmap); > > diff --git a/drivers/gpu/drm/armada/armada_gem.c > b/drivers/gpu/drm/armada/armada_gem.c > index 1597458..d6c2a5d 100644 > --- a/drivers/gpu/drm/armada/armada_gem.c > +++ b/drivers/gpu/drm/armada/armada_gem.c > @@ -529,10 +529,10 @@ static const struct dma_buf_ops > armada_gem_prime_dmabuf_ops = { > .map_dma_buf= armada_gem_prime_map_dma_buf, > .unmap_dma_buf = armada_gem_prime_unmap_dma_buf, > .release= drm_gem_dmabuf_release, > - .kmap_atomic= armada_gem_dmabuf_no_kmap, > - .kunmap_atomic = armada_gem_dmabuf_no_kunmap, > - .kmap = armada_gem_dmabuf_no_kmap, > - .kunmap = armada_gem_dmabuf_no_kunmap, > + .map_atomic = armada_gem_dmabuf_no_kmap, > + .unmap_atomic = armada_gem_dmabuf_no_kunmap, > + .map= armada_gem_dmabuf_no_kmap, > + .unmap = armada_gem_dmabuf_no_kunmap, > .mmap = armada_gem_dmabuf_mmap, > }; > > diff --git a/drivers/gpu/drm/drm_prime.c b/d
Re: [Intel-gfx] [PATCH] dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro
Hi Logan, [auto build test ERROR on linus/master] [also build test ERROR on v4.11-rc7 next-20170418] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Logan-Gunthorpe/dma-buf-Rename-dma-ops-to-prevent-conflict-with-kunmap_atomic-macro/20170419-082521 config: arm64-defconfig (attached as .config) compiler: aarch64-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705 reproduce: wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree make.cross ARCH=arm64 All errors (new ones prefixed by >>): >> drivers/gpu/drm/tegra/gem.c:115:2: error: unknown field 'map' specified in >> initializer .map = tegra_bo_kmap, ^ >> drivers/gpu/drm/tegra/gem.c:116:2: error: unknown field 'unmap' specified in >> initializer .unmap = tegra_bo_kunmap, ^ >> drivers/gpu/drm/tegra/gem.c:622:2: error: unknown field 'kmap_atomic' >> specified in initializer .kmap_atomic = tegra_gem_prime_kmap_atomic, ^ >> drivers/gpu/drm/tegra/gem.c:622:17: error: initialization from incompatible >> pointer type [-Werror=incompatible-pointer-types] .kmap_atomic = tegra_gem_prime_kmap_atomic, ^~~ drivers/gpu/drm/tegra/gem.c:622:17: note: (near initialization for 'tegra_gem_prime_dmabuf_ops.begin_cpu_access') >> drivers/gpu/drm/tegra/gem.c:623:2: error: unknown field 'kunmap_atomic' >> specified in initializer .kunmap_atomic = tegra_gem_prime_kunmap_atomic, ^ drivers/gpu/drm/tegra/gem.c:623:19: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] .kunmap_atomic = tegra_gem_prime_kunmap_atomic, ^ drivers/gpu/drm/tegra/gem.c:623:19: note: (near initialization for 'tegra_gem_prime_dmabuf_ops.end_cpu_access') >> drivers/gpu/drm/tegra/gem.c:624:2: error: unknown field 'kmap' specified in >> initializer .kmap = tegra_gem_prime_kmap, ^ >> drivers/gpu/drm/tegra/gem.c:625:2: error: unknown field 'kunmap' specified >> in initializer .kunmap = tegra_gem_prime_kunmap, ^ cc1: some warnings being treated as errors vim +/map +115 drivers/gpu/drm/tegra/gem.c 109 .get = tegra_bo_get, 110 .put = tegra_bo_put, 111 .pin = tegra_bo_pin, 112 .unpin = tegra_bo_unpin, 113 .mmap = tegra_bo_mmap, 114 .munmap = tegra_bo_munmap, > 115 .map = tegra_bo_kmap, > 116 .unmap = tegra_bo_kunmap, 117 }; 118 119 static int tegra_bo_iommu_map(struct tegra_drm *tegra, struct tegra_bo *bo) --- 0-DAY kernel test infrastructureOpen Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation .config.gz Description: application/gzip ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
[Intel-gfx] [PATCH] dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro
Seeing the kunmap_atomic dma_buf_op shares the same name with a macro in higmem.h, the former can be aliased if any dma-buf user includes that header. I'm personally trying to include highmem.h inside scatterlist.h and this breaks the dma-buf code proper. Christoph Hellwig suggested [1] renaming it and pushing this patch ASAP. To maintain consistency I've renamed all four of kmap* and kunmap* to be map* and unmap*. (Even though only kmap_atomic presently conflicts.) [1] https://www.spinics.net/lists/target-devel/msg15070.html Signed-off-by: Logan Gunthorpe --- drivers/dma-buf/dma-buf.c | 16 drivers/gpu/drm/armada/armada_gem.c| 8 drivers/gpu/drm/drm_prime.c| 8 drivers/gpu/drm/i915/i915_gem_dmabuf.c | 8 drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 8 drivers/gpu/drm/tegra/gem.c| 4 ++-- drivers/gpu/drm/udl/udl_dmabuf.c | 8 drivers/gpu/drm/vmwgfx/vmwgfx_prime.c | 8 drivers/media/v4l2-core/videobuf2-dma-contig.c | 4 ++-- drivers/media/v4l2-core/videobuf2-dma-sg.c | 4 ++-- drivers/media/v4l2-core/videobuf2-vmalloc.c| 4 ++-- drivers/staging/android/ion/ion.c | 8 include/linux/dma-buf.h| 22 +++--- 13 files changed, 55 insertions(+), 55 deletions(-) diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c index 0007b79..7cc2bfe 100644 --- a/drivers/dma-buf/dma-buf.c +++ b/drivers/dma-buf/dma-buf.c @@ -405,8 +405,8 @@ struct dma_buf *dma_buf_export(const struct dma_buf_export_info *exp_info) || !exp_info->ops->map_dma_buf || !exp_info->ops->unmap_dma_buf || !exp_info->ops->release - || !exp_info->ops->kmap_atomic - || !exp_info->ops->kmap + || !exp_info->ops->map_atomic + || !exp_info->ops->map || !exp_info->ops->mmap)) { return ERR_PTR(-EINVAL); } @@ -872,7 +872,7 @@ void *dma_buf_kmap_atomic(struct dma_buf *dmabuf, unsigned long page_num) { WARN_ON(!dmabuf); - return dmabuf->ops->kmap_atomic(dmabuf, page_num); + return dmabuf->ops->map_atomic(dmabuf, page_num); } EXPORT_SYMBOL_GPL(dma_buf_kmap_atomic); @@ -889,8 +889,8 @@ void dma_buf_kunmap_atomic(struct dma_buf *dmabuf, unsigned long page_num, { WARN_ON(!dmabuf); - if (dmabuf->ops->kunmap_atomic) - dmabuf->ops->kunmap_atomic(dmabuf, page_num, vaddr); + if (dmabuf->ops->unmap_atomic) + dmabuf->ops->unmap_atomic(dmabuf, page_num, vaddr); } EXPORT_SYMBOL_GPL(dma_buf_kunmap_atomic); @@ -907,7 +907,7 @@ void *dma_buf_kmap(struct dma_buf *dmabuf, unsigned long page_num) { WARN_ON(!dmabuf); - return dmabuf->ops->kmap(dmabuf, page_num); + return dmabuf->ops->map(dmabuf, page_num); } EXPORT_SYMBOL_GPL(dma_buf_kmap); @@ -924,8 +924,8 @@ void dma_buf_kunmap(struct dma_buf *dmabuf, unsigned long page_num, { WARN_ON(!dmabuf); - if (dmabuf->ops->kunmap) - dmabuf->ops->kunmap(dmabuf, page_num, vaddr); + if (dmabuf->ops->unmap) + dmabuf->ops->unmap(dmabuf, page_num, vaddr); } EXPORT_SYMBOL_GPL(dma_buf_kunmap); diff --git a/drivers/gpu/drm/armada/armada_gem.c b/drivers/gpu/drm/armada/armada_gem.c index 1597458..d6c2a5d 100644 --- a/drivers/gpu/drm/armada/armada_gem.c +++ b/drivers/gpu/drm/armada/armada_gem.c @@ -529,10 +529,10 @@ static const struct dma_buf_ops armada_gem_prime_dmabuf_ops = { .map_dma_buf= armada_gem_prime_map_dma_buf, .unmap_dma_buf = armada_gem_prime_unmap_dma_buf, .release= drm_gem_dmabuf_release, - .kmap_atomic= armada_gem_dmabuf_no_kmap, - .kunmap_atomic = armada_gem_dmabuf_no_kunmap, - .kmap = armada_gem_dmabuf_no_kmap, - .kunmap = armada_gem_dmabuf_no_kunmap, + .map_atomic = armada_gem_dmabuf_no_kmap, + .unmap_atomic = armada_gem_dmabuf_no_kunmap, + .map= armada_gem_dmabuf_no_kmap, + .unmap = armada_gem_dmabuf_no_kunmap, .mmap = armada_gem_dmabuf_mmap, }; diff --git a/drivers/gpu/drm/drm_prime.c b/drivers/gpu/drm/drm_prime.c index 25aa455..48ffd25 100644 --- a/drivers/gpu/drm/drm_prime.c +++ b/drivers/gpu/drm/drm_prime.c @@ -402,10 +402,10 @@ static const struct dma_buf_ops drm_gem_prime_dmabuf_ops = { .map_dma_buf = drm_gem_map_dma_buf, .unmap_dma_buf = drm_gem_unmap_dma_buf, .release = drm_gem_dmabuf_release, - .kmap = drm_gem_dmabuf_kmap, - .kmap_atomic = drm_gem_dmabuf_kmap_atomic, - .kunmap = drm_gem_dmabuf_kunmap, - .kunmap_atomic = drm_gem_dmabuf_kunmap_atomic, + .map