Patchwork arch/sparc/mm: Use GFP_KERNEL

login
register
mail settings
Submitter Julia Lawall
Date Aug. 1, 2010, 9:09 a.m.
Message ID <Pine.LNX.4.64.1008011109260.21594@ask.diku.dk>
Download mbox | patch
Permalink /patch/60444/
State Accepted
Delegated to: David Miller
Headers show

Comments

Julia Lawall - Aug. 1, 2010, 9:09 a.m.
From: Julia Lawall <julia@diku.dk>

GFP_ATOMIC is not needed here, as evidenced by the other two uses of
GFP_KERNEL in the same function.

The semantic match that finds this problem is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@@ identifier f; @@

*f(...,GFP_ATOMIC,...)
... when != spin_unlock(...)
    when != read_unlock(...)
    when != write_unlock(...)
    when != read_unlock_irq(...)
    when != write_unlock_irq(...)
    when != read_unlock_irqrestore(...)
    when != write_unlock_irqrestore(...)
    when != spin_unlock_irq(...)
    when != spin_unlock_irqrestore(...)
*f(...,GFP_KERNEL,...)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>

---
 arch/sparc/mm/iommu.c               |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller - Aug. 2, 2010, 11:04 p.m.
From: Julia Lawall <julia@diku.dk>
Date: Sun, 1 Aug 2010 11:09:44 +0200 (CEST)

> From: Julia Lawall <julia@diku.dk>
> 
> GFP_ATOMIC is not needed here, as evidenced by the other two uses of
> GFP_KERNEL in the same function.
> 
> The semantic match that finds this problem is as follows:
> (http://coccinelle.lip6.fr/)
 ...
> Signed-off-by: Julia Lawall <julia@diku.dk>

Applied, thanks Julia.
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/arch/sparc/mm/iommu.c b/arch/sparc/mm/iommu.c
index 7385806..07fc6a6 100644
--- a/arch/sparc/mm/iommu.c
+++ b/arch/sparc/mm/iommu.c
@@ -63,7 +63,7 @@  static void __init sbus_iommu_init(struct platform_device *op)
 	unsigned long *bitmap;
 	unsigned long tmp;
 
-	iommu = kmalloc(sizeof(struct iommu_struct), GFP_ATOMIC);
+	iommu = kmalloc(sizeof(struct iommu_struct), GFP_KERNEL);
 	if (!iommu) {
 		prom_printf("Unable to allocate iommu structure\n");
 		prom_halt();