Re: [Intel-gfx] [PATCH v2] dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro
Hi Marek, Thanks! On 20 April 2017 at 13:36, Marek Szyprowski wrote: > Hi All, > > On 2017-04-20 09:51, Daniel Vetter wrote: >> >> On Wed, Apr 19, 2017 at 01:36:10PM -0600, Logan Gunthorpe wrote: >>> >>> Seeing the kunmap_atomic dma_buf_ops share the same name with a macro >>> in highmem.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 >>> Reviewed-by: Sinclair Yeh >> >> Acked-by: Daniel Vetter >> >> Probably simplest if we pull this in through the drm-misc tree for 4.12. >> Can we have an ack for the v4l side for that pls? > > > For the V4L2/videobuf2: > Acked-by: Marek Szyprowski > I will queue it up for drm-misc-fixes so it gets into 4.12. > > >> Thanks, Daniel Best, Sumit. >>> >>> --- >>> >>> Changes since v1: >>> >>> - Added the missing tegra driver (noticed by kbuild robot) >>> - Rebased off of drm-intel-next to get the i915 selftest that is new >>> - Fixed nits Sinclair pointed out. >>> >>> 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/i915/selftests/mock_dmabuf.c | 8 >>> drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 8 >>> drivers/gpu/drm/tegra/gem.c| 8 >>> 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 >>> +++--- >>> 14 files changed, 61 insertions(+), 61 deletions(-) >>> >>> diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c >>> index f72aaac..512bdbc 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 = { >>>
Re: [Intel-gfx] [PATCH v2] dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro
Hi All, On 2017-04-20 09:51, Daniel Vetter wrote: On Wed, Apr 19, 2017 at 01:36:10PM -0600, Logan Gunthorpe wrote: Seeing the kunmap_atomic dma_buf_ops share the same name with a macro in highmem.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 Reviewed-by: Sinclair Yeh Acked-by: Daniel Vetter Probably simplest if we pull this in through the drm-misc tree for 4.12. Can we have an ack for the v4l side for that pls? For the V4L2/videobuf2: Acked-by: Marek Szyprowski Thanks, Daniel --- Changes since v1: - Added the missing tegra driver (noticed by kbuild robot) - Rebased off of drm-intel-next to get the i915 selftest that is new - Fixed nits Sinclair pointed out. 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/i915/selftests/mock_dmabuf.c | 8 drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 8 drivers/gpu/drm/tegra/gem.c| 8 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 +++--- 14 files changed, 61 insertions(+), 61 deletions(-) diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c index f72aaac..512bdbc 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,
Re: [Intel-gfx] [PATCH v2] dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro
Hi Logan, Thanks for the patch. On 20 April 2017 at 13:21, Daniel Vetter wrote: > On Wed, Apr 19, 2017 at 01:36:10PM -0600, Logan Gunthorpe wrote: >> Seeing the kunmap_atomic dma_buf_ops share the same name with a macro >> in highmem.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 >> Reviewed-by: Sinclair Yeh > > Acked-by: Daniel Vetter Acked-by: Sumit Semwal > > Probably simplest if we pull this in through the drm-misc tree for 4.12. > Can we have an ack for the v4l side for that pls? > > Thanks, Daniel > >> --- >> >> Changes since v1: >> >> - Added the missing tegra driver (noticed by kbuild robot) >> - Rebased off of drm-intel-next to get the i915 selftest that is new >> - Fixed nits Sinclair pointed out. >> >> 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/i915/selftests/mock_dmabuf.c | 8 >> drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 8 >> drivers/gpu/drm/tegra/gem.c| 8 >> 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 +++--- >> 14 files changed, 61 insertions(+), 61 deletions(-) >> >> diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c >> index f72aaac..512bdbc 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 = armad
Re: [Intel-gfx] [PATCH v2] dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro
On Wed, Apr 19, 2017 at 01:36:10PM -0600, Logan Gunthorpe wrote: > Seeing the kunmap_atomic dma_buf_ops share the same name with a macro > in highmem.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 > Reviewed-by: Sinclair Yeh Acked-by: Daniel Vetter Probably simplest if we pull this in through the drm-misc tree for 4.12. Can we have an ack for the v4l side for that pls? Thanks, Daniel > --- > > Changes since v1: > > - Added the missing tegra driver (noticed by kbuild robot) > - Rebased off of drm-intel-next to get the i915 selftest that is new > - Fixed nits Sinclair pointed out. > > 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/i915/selftests/mock_dmabuf.c | 8 > drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 8 > drivers/gpu/drm/tegra/gem.c| 8 > 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 +++--- > 14 files changed, 61 insertions(+), 61 deletions(-) > > diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c > index f72aaac..512bdbc 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_