* [PATCH v3] sparc32: dma_alloc_coherent must honour gfp flags
@ 2014-09-10 12:17 Daniel Hellstrom
2014-09-10 21:03 ` David Miller
2014-09-11 19:51 ` Daniel Hellstrom
0 siblings, 2 replies; 3+ messages in thread
From: Daniel Hellstrom @ 2014-09-10 12:17 UTC (permalink / raw)
To: sparclinux
dma_zalloc_coherent() calls dma_alloc_coherent(__GFP_ZERO)
but the sparc32 implementations sbus_alloc_coherent() and
pci32_alloc_coherent() doesn't take the gfp flags into
account.
Tested on the SPARC32/LEON GRETH Ethernet driver which fails
due to dma_alloc_coherent(__GFP_ZERO) returns non zeroed
pages.
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
---
arch/sparc/kernel/ioport.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/sparc/kernel/ioport.c b/arch/sparc/kernel/ioport.c
index 2096468..6cacf2d 100644
--- a/arch/sparc/kernel/ioport.c
+++ b/arch/sparc/kernel/ioport.c
@@ -278,7 +278,8 @@ static void *sbus_alloc_coherent(struct device *dev, size_t len,
}
order = get_order(len_total);
- if ((va = __get_free_pages(GFP_KERNEL|__GFP_COMP, order)) = 0)
+ va = __get_free_pages(gfp, order);
+ if (va = 0)
goto err_nopages;
if ((res = kzalloc(sizeof(struct resource), GFP_KERNEL)) = NULL)
@@ -443,7 +444,7 @@ static void *pci32_alloc_coherent(struct device *dev, size_t len,
}
order = get_order(len_total);
- va = (void *) __get_free_pages(GFP_KERNEL, order);
+ va = (void *) __get_free_pages(gfp, order);
if (va = NULL) {
printk("pci_alloc_consistent: no %ld pages\n", len_total>>PAGE_SHIFT);
goto err_nopages;
--
1.7.0.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v3] sparc32: dma_alloc_coherent must honour gfp flags
2014-09-10 12:17 [PATCH v3] sparc32: dma_alloc_coherent must honour gfp flags Daniel Hellstrom
@ 2014-09-10 21:03 ` David Miller
2014-09-11 19:51 ` Daniel Hellstrom
1 sibling, 0 replies; 3+ messages in thread
From: David Miller @ 2014-09-10 21:03 UTC (permalink / raw)
To: sparclinux
From: Daniel Hellstrom <daniel@gaisler.com>
Date: Wed, 10 Sep 2014 14:17:52 +0200
> dma_zalloc_coherent() calls dma_alloc_coherent(__GFP_ZERO)
> but the sparc32 implementations sbus_alloc_coherent() and
> pci32_alloc_coherent() doesn't take the gfp flags into
> account.
>
> Tested on the SPARC32/LEON GRETH Ethernet driver which fails
> due to dma_alloc_coherent(__GFP_ZERO) returns non zeroed
> pages.
>
> Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Applied, thanks Daniel.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v3] sparc32: dma_alloc_coherent must honour gfp flags
2014-09-10 12:17 [PATCH v3] sparc32: dma_alloc_coherent must honour gfp flags Daniel Hellstrom
2014-09-10 21:03 ` David Miller
@ 2014-09-11 19:51 ` Daniel Hellstrom
1 sibling, 0 replies; 3+ messages in thread
From: Daniel Hellstrom @ 2014-09-11 19:51 UTC (permalink / raw)
To: sparclinux
On 09/10/2014 11:03 PM, David Miller wrote:
> From: Daniel Hellstrom<daniel@gaisler.com>
> Date: Wed, 10 Sep 2014 14:17:52 +0200
>
>> dma_zalloc_coherent() calls dma_alloc_coherent(__GFP_ZERO)
>> but the sparc32 implementations sbus_alloc_coherent() and
>> pci32_alloc_coherent() doesn't take the gfp flags into
>> account.
>>
>> Tested on the SPARC32/LEON GRETH Ethernet driver which fails
>> due to dma_alloc_coherent(__GFP_ZERO) returns non zeroed
>> pages.
>>
>> Signed-off-by: Daniel Hellstrom<daniel@gaisler.com>
> Applied, thanks Daniel.
Thanks! I think this is subject for the stable branches.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-09-11 19:51 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-10 12:17 [PATCH v3] sparc32: dma_alloc_coherent must honour gfp flags Daniel Hellstrom
2014-09-10 21:03 ` David Miller
2014-09-11 19:51 ` Daniel Hellstrom
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.