From 781711a93e8aae756e8ae07acef185a6dfe552b8 Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Tue, 10 Jun 2008 12:34:45 +0200 Subject: [PATCH] ALSA: emu10k1 - Fix page allocation with GFP_DMA Added the missing GFP_ATOMIC to page_alloc when called with GFP_DMA. GFP_KERNEL often results in stalls for ZONE_DMA, so GFP_ATOMIC is more prgmatic. Signed-off-by: Takashi Iwai Signed-off-by: Jaroslav Kysela --- sound/pci/emu10k1/memory.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sound/pci/emu10k1/memory.c b/sound/pci/emu10k1/memory.c index 128eaca..42943b4 100644 --- a/sound/pci/emu10k1/memory.c +++ b/sound/pci/emu10k1/memory.c @@ -466,7 +466,7 @@ static int synth_alloc_pages(struct snd_emu10k1 *emu, struct snd_emu10k1_memblk __GFP_NOWARN); if (!p || (page_to_pfn(p) & ~(emu->dma_mask >> PAGE_SHIFT))) /* try to allocate from <16MB zone */ - p = alloc_page(GFP_DMA | + p = alloc_page(GFP_ATOMIC | GFP_DMA | __GFP_NORETRY | /* no OOM-killer */ __GFP_NOWARN); if (!p) { -- 2.7.4