Re: [PATCH] dma-mapping: Use 'bitmap_zalloc()' when applicable

2021-10-27 Thread Christoph Hellwig
Thanks, applied.
___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu


Re: [PATCH] dma-mapping: Use 'bitmap_zalloc()' when applicable

2021-10-24 Thread Christophe JAILLET

Le 24/10/2021 à 19:54, Joe Perches a écrit :

On Sun, 2021-10-24 at 19:40 +0200, Christophe JAILLET wrote:

'dma_mem->bitmap' is a bitmap. So use 'bitmap_zalloc()' to simplify code,
improve the semantic and avoid some open-coded arithmetic in allocator
arguments.


There is a cocci script for some of these.

https://lore.kernel.org/all/08b89608cfb1280624d1a89ead6547069f9a4c31.ca...@perches.com/



Hi Joe,

yes I know.
As it is public, I guess that new comers may have seen it and want to 
propose patches based on your cocci script.


So, for now, I'm more focused on things that are not spotted by your 
script. I look for places where the size computation is not done within 
the kmalloc() or eq. function.


CJ
___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Re: [PATCH] dma-mapping: Use 'bitmap_zalloc()' when applicable

2021-10-24 Thread Joe Perches
On Sun, 2021-10-24 at 19:40 +0200, Christophe JAILLET wrote:
> 'dma_mem->bitmap' is a bitmap. So use 'bitmap_zalloc()' to simplify code,
> improve the semantic and avoid some open-coded arithmetic in allocator
> arguments.

There is a cocci script for some of these.

https://lore.kernel.org/all/08b89608cfb1280624d1a89ead6547069f9a4c31.ca...@perches.com/


___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu


[PATCH] dma-mapping: Use 'bitmap_zalloc()' when applicable

2021-10-24 Thread Christophe JAILLET
'dma_mem->bitmap' is a bitmap. So use 'bitmap_zalloc()' to simplify code,
improve the semantic and avoid some open-coded arithmetic in allocator
arguments.

Also change the corresponding 'kfree()' into 'bitmap_free()' to keep
consistency.

Signed-off-by: Christophe JAILLET 
---
 kernel/dma/coherent.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/kernel/dma/coherent.c b/kernel/dma/coherent.c
index 25fc85a7aebe..375fb3c9538d 100644
--- a/kernel/dma/coherent.c
+++ b/kernel/dma/coherent.c
@@ -40,7 +40,6 @@ static struct dma_coherent_mem 
*dma_init_coherent_memory(phys_addr_t phys_addr,
 {
struct dma_coherent_mem *dma_mem;
int pages = size >> PAGE_SHIFT;
-   int bitmap_size = BITS_TO_LONGS(pages) * sizeof(long);
void *mem_base;
 
if (!size)
@@ -53,7 +52,7 @@ static struct dma_coherent_mem 
*dma_init_coherent_memory(phys_addr_t phys_addr,
dma_mem = kzalloc(sizeof(struct dma_coherent_mem), GFP_KERNEL);
if (!dma_mem)
goto out_unmap_membase;
-   dma_mem->bitmap = kzalloc(bitmap_size, GFP_KERNEL);
+   dma_mem->bitmap = bitmap_zalloc(pages, GFP_KERNEL);
if (!dma_mem->bitmap)
goto out_free_dma_mem;
 
@@ -81,7 +80,7 @@ static void dma_release_coherent_memory(struct 
dma_coherent_mem *mem)
return;
 
memunmap(mem->virt_base);
-   kfree(mem->bitmap);
+   bitmap_free(mem->bitmap);
kfree(mem);
 }
 
-- 
2.30.2

___
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu