public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Christian König" <christian.koenig@amd.com>
To: Lucas De Marchi <lucas.demarchi@intel.com>,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org
Cc: srinivas.kandagatla@linaro.org, gregkh@linuxfoundation.org,
	sumit.semwal@linaro.org, daniel.vetter@ffwll.ch,
	airlied@linux.ie, lyude@redhat.com, tzimmermann@suse.de,
	linux-media@vger.kernel.org, nouveau@lists.freedesktop.org
Subject: Re: [PATCH 00/14] Rename dma-buf-map
Date: Fri, 28 Jan 2022 09:41:14 +0100	[thread overview]
Message-ID: <a45a8cef-f5e7-604c-64f1-e893ec9ba8af@amd.com> (raw)
In-Reply-To: <20220128083626.3012259-1-lucas.demarchi@intel.com>

Rule #1 is to never ever break the build.

Because of this all those patches needs to be squashed into a single one 
as far as I can see.

Regards,
Christian.

Am 28.01.22 um 09:36 schrieb Lucas De Marchi:
> Motivation for this started in
> https://lore.kernel.org/lkml/20220126203702.1784589-1-lucas.demarchi@intel.com/
> when trying to extend the dma-buf-map API to cover new use cases: help a
> single driver with allocations and sharing code paths for IO and system
> memory. I'm leaving the API additions aside and first renaming the
> interface as requested.
>
> There are already some users in tree outside the context of dma-buf
> importer/exporter. So before extending the API, let's dissociate it from
> dma-buf.
>
> The iosys-map.h is introduced in the first patch in a way that allows
> the conversion of each driver to happen separately. After all the
> conversions are done we can remove the old one, which is the last patch.
> Another possible way is to squash everything and merge together,
> but I believe this would make much harder for review.
>
> The conversion was done with the following semantic patch:
>
> 	@r1@
> 	@@
> 	- struct dma_buf_map
> 	+ struct iosys_map
>
> 	@r2@
> 	@@
> 	(
> 	- DMA_BUF_MAP_INIT_VADDR
> 	+ IOSYS_MAP_INIT_VADDR
> 	|
> 	- dma_buf_map_set_vaddr
> 	+ iosys_map_set_vaddr
> 	|
> 	- dma_buf_map_set_vaddr_iomem
> 	+ iosys_map_set_vaddr_iomem
> 	|
> 	- dma_buf_map_is_equal
> 	+ iosys_map_is_equal
> 	|
> 	- dma_buf_map_is_null
> 	+ iosys_map_is_null
> 	|
> 	- dma_buf_map_is_set
> 	+ iosys_map_is_set
> 	|
> 	- dma_buf_map_clear
> 	+ iosys_map_clear
> 	|
> 	- dma_buf_map_memcpy_to
> 	+ iosys_map_memcpy_to
> 	|
> 	- dma_buf_map_incr
> 	+ iosys_map_incr
> 	)
>
> 	@@
> 	@@
> 	- #include <linux/dma-buf-map.h>
> 	+ #include <linux/iosys-map.h>
>
> and then some files had their includes adjusted so we can build
> everything on each commit in this series. Also some comments were update
> to remove mentions to dma-buf-map. Simply doing a sed to rename didn't
> work as dma-buf has some APIs using the dma_buf_map prefix.
>
> Once finalized, I think most of this, if not all, could go through the
> drm-misc-next branch. I split i915, msm, nouveau, and radeon in their
> own patches in case it's preferred to take those through their own
> trees.
>
> Lucas De Marchi
>
> Lucas De Marchi (14):
>    iosys-map: Introduce renamed dma-buf-map
>    misc: fastrpc: Replace dma-buf-map with iosys-map
>    dma-buf: Replace dma-buf-map with iosys-map
>    media: Replace dma-buf-map with iosys-map
>    drm/ttm: Replace dma-buf-map with iosys-map
>    drm: Replace dma-buf-map with iosys-map in drivers
>    drm/i915: Replace dma-buf-map with iosys-map
>    drm/msm: Replace dma-buf-map with iosys-map
>    drm/nouveau: Replace dma-buf-map with iosys-map
>    drm/tegra: Replace dma-buf-map with iosys-map
>    drm/radeon: Replace dma-buf-map with iosys-map
>    drm: Replace dma-buf-map with iosys-map in common code
>    Documentation: Refer to iosys-map instead of dma-buf-map
>    dma-buf-map: Remove API in favor of iosys-map
>
>   Documentation/driver-api/dma-buf.rst          |   4 +-
>   Documentation/gpu/todo.rst                    |  20 +-
>   MAINTAINERS                                   |   2 +-
>   drivers/dma-buf/dma-buf.c                     |  22 +-
>   drivers/dma-buf/heaps/cma_heap.c              |  10 +-
>   drivers/dma-buf/heaps/system_heap.c           |  10 +-
>   drivers/gpu/drm/ast/ast_drv.h                 |   2 +-
>   drivers/gpu/drm/ast/ast_mode.c                |   8 +-
>   drivers/gpu/drm/drm_cache.c                   |  18 +-
>   drivers/gpu/drm/drm_client.c                  |   9 +-
>   drivers/gpu/drm/drm_fb_helper.c               |  12 +-
>   drivers/gpu/drm/drm_gem.c                     |  12 +-
>   drivers/gpu/drm/drm_gem_cma_helper.c          |   9 +-
>   drivers/gpu/drm/drm_gem_framebuffer_helper.c  |  16 +-
>   drivers/gpu/drm/drm_gem_shmem_helper.c        |  15 +-
>   drivers/gpu/drm/drm_gem_ttm_helper.c          |   4 +-
>   drivers/gpu/drm/drm_gem_vram_helper.c         |  25 +-
>   drivers/gpu/drm/drm_internal.h                |   6 +-
>   drivers/gpu/drm/drm_mipi_dbi.c                |   8 +-
>   drivers/gpu/drm/drm_prime.c                   |   4 +-
>   drivers/gpu/drm/etnaviv/etnaviv_drv.h         |   2 +-
>   drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c   |   8 +-
>   drivers/gpu/drm/gud/gud_pipe.c                |   4 +-
>   drivers/gpu/drm/hyperv/hyperv_drm_modeset.c   |   5 +-
>   drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c    |   8 +-
>   .../drm/i915/gem/selftests/i915_gem_dmabuf.c  |   6 +-
>   .../gpu/drm/i915/gem/selftests/mock_dmabuf.c  |   6 +-
>   drivers/gpu/drm/lima/lima_gem.c               |   3 +-
>   drivers/gpu/drm/lima/lima_sched.c             |   4 +-
>   drivers/gpu/drm/mediatek/mtk_drm_gem.c        |   7 +-
>   drivers/gpu/drm/mediatek/mtk_drm_gem.h        |   5 +-
>   drivers/gpu/drm/mgag200/mgag200_mode.c        |   4 +-
>   drivers/gpu/drm/msm/msm_drv.h                 |   4 +-
>   drivers/gpu/drm/msm/msm_gem_prime.c           |   6 +-
>   drivers/gpu/drm/nouveau/nouveau_gem.c         |   2 +
>   drivers/gpu/drm/panfrost/panfrost_perfcnt.c   |  13 +-
>   drivers/gpu/drm/qxl/qxl_display.c             |   8 +-
>   drivers/gpu/drm/qxl/qxl_draw.c                |   6 +-
>   drivers/gpu/drm/qxl/qxl_drv.h                 |  10 +-
>   drivers/gpu/drm/qxl/qxl_object.c              |   8 +-
>   drivers/gpu/drm/qxl/qxl_object.h              |   4 +-
>   drivers/gpu/drm/qxl/qxl_prime.c               |   4 +-
>   drivers/gpu/drm/radeon/radeon_gem.c           |   1 +
>   drivers/gpu/drm/rockchip/rockchip_drm_gem.c   |   9 +-
>   drivers/gpu/drm/rockchip/rockchip_drm_gem.h   |   5 +-
>   drivers/gpu/drm/tegra/gem.c                   |  10 +-
>   drivers/gpu/drm/tiny/cirrus.c                 |   8 +-
>   drivers/gpu/drm/tiny/gm12u320.c               |   7 +-
>   drivers/gpu/drm/ttm/ttm_bo_util.c             |  16 +-
>   drivers/gpu/drm/ttm/ttm_resource.c            |  26 +-
>   drivers/gpu/drm/ttm/ttm_tt.c                  |   6 +-
>   drivers/gpu/drm/udl/udl_modeset.c             |   3 +-
>   drivers/gpu/drm/vboxvideo/vbox_mode.c         |   4 +-
>   drivers/gpu/drm/virtio/virtgpu_prime.c        |   1 +
>   drivers/gpu/drm/vkms/vkms_composer.c          |   4 +-
>   drivers/gpu/drm/vkms/vkms_drv.h               |   6 +-
>   drivers/gpu/drm/vkms/vkms_plane.c             |   2 +-
>   drivers/gpu/drm/vkms/vkms_writeback.c         |   2 +-
>   drivers/gpu/drm/xen/xen_drm_front_gem.c       |   7 +-
>   drivers/gpu/drm/xen/xen_drm_front_gem.h       |   6 +-
>   .../common/videobuf2/videobuf2-dma-contig.c   |   8 +-
>   .../media/common/videobuf2/videobuf2-dma-sg.c |   9 +-
>   .../common/videobuf2/videobuf2-vmalloc.c      |  11 +-
>   drivers/misc/fastrpc.c                        |   4 +-
>   include/drm/drm_cache.h                       |   6 +-
>   include/drm/drm_client.h                      |   7 +-
>   include/drm/drm_gem.h                         |   6 +-
>   include/drm/drm_gem_atomic_helper.h           |   6 +-
>   include/drm/drm_gem_cma_helper.h              |   6 +-
>   include/drm/drm_gem_framebuffer_helper.h      |   8 +-
>   include/drm/drm_gem_shmem_helper.h            |  12 +-
>   include/drm/drm_gem_ttm_helper.h              |   6 +-
>   include/drm/drm_gem_vram_helper.h             |   9 +-
>   include/drm/drm_prime.h                       |   6 +-
>   include/drm/ttm/ttm_bo_api.h                  |  10 +-
>   include/drm/ttm/ttm_kmap_iter.h               |  10 +-
>   include/drm/ttm/ttm_resource.h                |   6 +-
>   include/linux/dma-buf-map.h                   | 266 ------------------
>   include/linux/dma-buf.h                       |  12 +-
>   include/linux/iosys-map.h                     | 257 +++++++++++++++++
>   80 files changed, 579 insertions(+), 552 deletions(-)
>   delete mode 100644 include/linux/dma-buf-map.h
>   create mode 100644 include/linux/iosys-map.h
>


  parent reply	other threads:[~2022-01-28  8:41 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-28  8:36 [PATCH 00/14] Rename dma-buf-map Lucas De Marchi
2022-01-28  8:36 ` [PATCH 01/14] iosys-map: Introduce renamed dma-buf-map Lucas De Marchi
2022-01-28  8:53   ` Thomas Zimmermann
2022-01-28  9:24     ` Lucas De Marchi
2022-01-28  9:39       ` Thomas Zimmermann
2022-01-28 22:26         ` Daniel Vetter
2022-01-28  8:36 ` [PATCH 02/14] misc: fastrpc: Replace dma-buf-map with iosys-map Lucas De Marchi
2022-01-28  8:36 ` [PATCH 03/14] dma-buf: " Lucas De Marchi
2022-01-28  8:36 ` [PATCH 04/14] media: " Lucas De Marchi
2022-01-28  8:36 ` [PATCH 05/14] drm/ttm: " Lucas De Marchi
2022-01-28  8:36 ` [PATCH 06/14] drm: Replace dma-buf-map with iosys-map in drivers Lucas De Marchi
2022-01-28  8:36 ` [PATCH 07/14] drm/i915: Replace dma-buf-map with iosys-map Lucas De Marchi
2022-01-28  8:36 ` [PATCH 08/14] drm/msm: " Lucas De Marchi
2022-01-28  8:36 ` [PATCH 09/14] drm/nouveau: " Lucas De Marchi
2022-01-28 19:17   ` Lyude Paul
2022-01-28  8:36 ` [PATCH 10/14] drm/tegra: " Lucas De Marchi
2022-01-28  8:36 ` [PATCH 11/14] drm/radeon: " Lucas De Marchi
2022-01-28  8:36 ` [PATCH 12/14] drm: Replace dma-buf-map with iosys-map in common code Lucas De Marchi
2022-01-28  8:36 ` [PATCH 13/14] Documentation: Refer to iosys-map instead of dma-buf-map Lucas De Marchi
2022-01-28  8:36 ` [PATCH 14/14] dma-buf-map: Remove API in favor of iosys-map Lucas De Marchi
2022-01-28  8:41 ` Christian König [this message]
2022-01-28  9:12   ` [PATCH 00/14] Rename dma-buf-map Lucas De Marchi
2022-01-28  9:22     ` Christian König
2022-01-28  9:40       ` Lucas De Marchi
2022-01-28  9:48         ` Christian König
2022-02-01  0:36           ` Lucas De Marchi
2022-02-01  7:46             ` Christian König
2022-02-01  8:08               ` Thomas Zimmermann
2022-02-01 22:08               ` Lucas De Marchi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a45a8cef-f5e7-604c-64f1-e893ec9ba8af@amd.com \
    --to=christian.koenig@amd.com \
    --cc=airlied@linux.ie \
    --cc=daniel.vetter@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=lucas.demarchi@intel.com \
    --cc=lyude@redhat.com \
    --cc=nouveau@lists.freedesktop.org \
    --cc=srinivas.kandagatla@linaro.org \
    --cc=sumit.semwal@linaro.org \
    --cc=tzimmermann@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox