lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Thu, 21 Jul 2022 12:42:06 +0200
From:   Danilo Krummrich <dakr@...hat.com>
To:     Sam Ravnborg <sam@...nborg.org>
Cc:     daniel@...ll.ch, laurent.pinchart@...asonboard.com,
        airlied@...ux.ie, tzimmermann@...e.de, mripard@...nel.org,
        linux-kernel@...r.kernel.org, dri-devel@...ts.freedesktop.org
Subject: Re: [PATCH drm-misc-next v5 1/4] drm/fb: rename FB CMA helpers to FB
 DMA helpers

Hi Sam,

On 7/20/22 19:23, Sam Ravnborg wrote:
> Hi Danilo,
> 
> On Wed, Jul 20, 2022 at 05:31:25PM +0200, Danilo Krummrich wrote:
>> Rename "FB CMA" helpers to "FB DMA" helpers - considering the hierarchy
>> of APIs (mm/cma -> dma -> fb dma) calling them "FB DMA" seems to be
>> more applicable.
>>
>> Besides that, commit e57924d4ae80 ("drm/doc: Task to rename CMA helpers")
>> requests to rename the CMA helpers and implies that people seem to be
>> confused about the naming.
>>
>> In order to do this renaming the following script was used:
>>
>> ```
>> 	#!/bin/bash
>>
>> 	DIRS="drivers/gpu include/drm Documentation/gpu"
>>
>> 	REGEX_SYM_UPPER="[0-9A-Z_\-]"
>> 	REGEX_SYM_LOWER="[0-9a-z_\-]"
>>
>> 	REGEX_GREP_UPPER="(${REGEX_SYM_UPPER}*)(FB)_CMA_(${REGEX_SYM_UPPER}*)"
>> 	REGEX_GREP_LOWER="(${REGEX_SYM_LOWER}*)(fb)_cma_(${REGEX_SYM_LOWER}*)"
>>
>> 	REGEX_SED_UPPER="s/${REGEX_GREP_UPPER}/\1\2_DMA_\3/g"
>> 	REGEX_SED_LOWER="s/${REGEX_GREP_LOWER}/\1\2_dma_\3/g"
>>
>> 	# Find all upper case 'CMA' symbols and replace them with 'DMA'.
>> 	for ff in $(grep -REHl "${REGEX_GREP_UPPER}" $DIRS)
>> 	do
>> 	       sed -i -E "$REGEX_SED_UPPER" $ff
>> 	done
>>
>> 	# Find all lower case 'cma' symbols and replace them with 'dma'.
>> 	for ff in $(grep -REHl "${REGEX_GREP_LOWER}" $DIRS)
>> 	do
>> 	       sed -i -E "$REGEX_SED_LOWER" $ff
>> 	done
>>
>> 	# Replace all occurrences of 'CMA' / 'cma' in comments and
>> 	# documentation files with 'DMA' / 'dma'.
>> 	for ff in $(grep -RiHl " cma " $DIRS)
>> 	do
>> 		sed -i -E "s/ cma / dma /g" $ff
>> 		sed -i -E "s/ CMA / DMA /g" $ff
>> 	done
>> ```
>>
>> Only a few more manual modifications were needed, e.g. reverting the
>> following modifications in some DRM Kconfig files
>>
>>      -       select CMA if HAVE_DMA_CONTIGUOUS
>>      +       select DMA if HAVE_DMA_CONTIGUOUS
>>
>> as well as manually picking the occurrences of 'CMA'/'cma' in comments and
>> documentation which relate to "FB CMA", but not "GEM CMA".
>>
>> This patch is compile-time tested building a x86_64 kernel with
>> `make allyesconfig && make drivers/gpu/drm`.
>>
>> Acked-by: Thomas Zimmermann <tzimmermann@...e.de>
>> Reviewed-by: Laurent Pinchart <laurent.pinchart@...asonboard.com>
>> Signed-off-by: Danilo Krummrich <dakr@...hat.com>
> 
> For the most part I like the patch.
> But there is a few cases I would like to see fixed.
> 
> 
>> diff --git a/drivers/gpu/drm/arm/hdlcd_drv.c b/drivers/gpu/drm/arm/hdlcd_drv.c
>> index e89ae0ec60eb..fab18135f12b 100644
>> --- a/drivers/gpu/drm/arm/hdlcd_drv.c
>> +++ b/drivers/gpu/drm/arm/hdlcd_drv.c
>> @@ -25,7 +25,7 @@
>>   #include <drm/drm_crtc.h>
>>   #include <drm/drm_debugfs.h>
>>   #include <drm/drm_drv.h>
>> -#include <drm/drm_fb_cma_helper.h>
>> +#include <drm/drm_fb_dma_helper.h>
>>   #include <drm/drm_fb_helper.h>
>>   #include <drm/drm_gem_cma_helper.h>
>>   #include <drm/drm_gem_framebuffer_helper.h>
> 
> 
> The only change in the file above is the rename of the include file.
> This is a strong hint that the include is not needed and the correct fix
> is to drop the include. There are more cases like the above.

Yep, good catch.

> 
> This is a manual process on top of what you could automate, but then I
> suggest to identify them and remove the includes before you change the
> file name.
> 
> Or if anyone applies the patches then at least do it in a follow-up at
> the places will never be easier to spot.
> 
> So with this cleanup done either before or after this patch.

I'll add anther patch to remove the unused includes before doing the 
renaming.

> Acked-by: Sam Ravnborg <sam@...nborg.org>
> 
> 	Sam
> 

- Danilo

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ