From: Thomas Zimmermann <tzimmermann@suse.de>
To: "Christian König" <christian.koenig@amd.com>,
"Lucas De Marchi" <lucas.demarchi@intel.com>
Cc: airlied@linux.ie, daniel.vetter@ffwll.ch,
linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
srinivas.kandagatla@linaro.org, gregkh@linuxfoundation.org,
nouveau@lists.freedesktop.org, linux-media@vger.kernel.org
Subject: Re: [PATCH 00/14] Rename dma-buf-map
Date: Tue, 1 Feb 2022 09:08:00 +0100 [thread overview]
Message-ID: <bff9bd4c-522e-f57f-c487-675e3efdb2d7@suse.de> (raw)
In-Reply-To: <7a6533ae-9a42-06aa-3da6-0986a72c3392@amd.com>
[-- Attachment #1.1: Type: text/plain, Size: 13474 bytes --]
Hi
Am 01.02.22 um 08:46 schrieb Christian König:
[..]
>> 2) If renaming, would it still keep the same entry in
>> MAINTAINERS? Thomas suggested drivers core, but this all seem to be used
>> mainly on drm/, with just one exception.
>
> I would just add a complete new entry for this and use Thomas as
> maintainer (with his permission of course) and dri as mailing list.
Sure, no problem.
Best regards
Thomas
>
>>
>> 3) If renaming, do we have another preferred name?
>
> Nope, as Daniel said the name itself is only bikesheed. What is
> important is that we see this as functionality separated from the inter
> driver interface.
>
> Regards,
> Christian.
>
>>
>>
>> thanks
>> Lucas De Marchi
>>
>>>
>>>>
>>>> But as I said, I don't really have a preference. When crossing
>>>> subsystems one thing that is hard is that different people have
>>>> different
>>>> preferences on these things. At least squashing now is much easier than
>>>> if I had to split it
>>>>
>>>> Try to imagine how much complain I received on going the other way in
>>>> 25985edcedea6396277003854657b5f3cb31a628 with
>>>> 2463 files changed, 4252 insertions(+), 4252 deletions(-)
>>>
>>> Well exactly that is perfectly fine.
>>>
>>> What you do here is applying your personal hack which is absolutely
>>> not welcomed.
>>>
>>> Regards,
>>> Christian.
>>>
>>>> :)
>>>>
>>>>
>>>> Lucas De Marchi
>>>>
>>>>>
>>>>> Regards,
>>>>> Christian.
>>>>>
>>>>>> I built this series, full config with
>>>>>> CONFIG_COMPILE_TEST and doing:
>>>>>>
>>>>>> git rebase -i <base> -x "make -j$(nproc)"
>>>>>>
>>>>>> I split these patches in a way that wouldn't break the build on
>>>>>> purpose.
>>>>>> There were a couple that I couldn't build without cross compiling:
>>>>>> tegra
>>>>>> and rockchip. The others were ok.
>>>>>>
>>>>>> I'm not really against squashing everything in one to merge, though.
>>>>>> It will be hard on the conflicts later, but should get the job
>>>>>> done much
>>>>>> quicker.
>>>>>>
>>>>>> Lucas De Marchi
>>>>>>
>>>>>>>
>>>>>>> Regards,
>>>>>>> Christian.
>>>>>>>
>>>>>>> Am 28.01.22 um 09:36 schrieb Lucas De Marchi:
>>>>>>>> Motivation for this started in
>>>>>>>> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore.kernel.org%2Flkml%2F20220126203702.1784589-1-lucas.demarchi%40intel.com%2F&data=04%7C01%7Cchristian.koenig%40amd.com%7C01142fa3ce484040ade008d9e51aef5d%7C3dd8961fe4884e608e11a82d994e183d%7C0%7C0%7C637792726123940514%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=p8rR28Hn0yMTbwy%2F7bpiGyG9fAu9kG1VUzX2MF44mcs%3D&reserved=0
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> 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
>>>>>>>>
>>>>>>>
>>>>>
>>>
>
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]
next prev parent reply other threads:[~2022-02-01 8:08 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 ` [PATCH 00/14] Rename dma-buf-map Christian König
2022-01-28 9:12 ` 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 [this message]
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=bff9bd4c-522e-f57f-c487-675e3efdb2d7@suse.de \
--to=tzimmermann@suse.de \
--cc=airlied@linux.ie \
--cc=christian.koenig@amd.com \
--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=nouveau@lists.freedesktop.org \
--cc=srinivas.kandagatla@linaro.org \
/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;
as well as URLs for NNTP newsgroup(s).