X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=sound%2Fcore%2Fmemalloc.c;h=19b3dcbb09c23bdaad0192e53877116501275490;hb=b4103333d7904310d34de18d85e51e3d74f00a3b;hp=129abab5ce98a42fcd3a96fc587abe0da6e31ec9;hpb=53b2ec5518aa2623e8c0cb36f1c304a797988a46;p=powerpc.git diff --git a/sound/core/memalloc.c b/sound/core/memalloc.c index 129abab5ce..19b3dcbb09 100644 --- a/sound/core/memalloc.c +++ b/sound/core/memalloc.c @@ -43,10 +43,6 @@ MODULE_DESCRIPTION("Memory allocator for ALSA system."); MODULE_LICENSE("GPL"); -#ifndef SNDRV_CARDS -#define SNDRV_CARDS 8 -#endif - /* */ @@ -197,6 +193,7 @@ void *snd_malloc_pages(size_t size, gfp_t gfp_flags) snd_assert(size > 0, return NULL); snd_assert(gfp_flags != 0, return NULL); + gfp_flags |= __GFP_COMP; /* compound page lets parts be mapped */ pg = get_order(size); if ((res = (void *) __get_free_pages(gfp_flags, pg)) != NULL) { mark_pages(virt_to_page(res), pg); @@ -241,6 +238,7 @@ static void *snd_malloc_dev_pages(struct device *dev, size_t size, dma_addr_t *d snd_assert(dma != NULL, return NULL); pg = get_order(size); gfp_flags = GFP_KERNEL + | __GFP_COMP /* compound page lets parts be mapped */ | __GFP_NORETRY /* don't trigger OOM-killer */ | __GFP_NOWARN; /* no stack trace print - this call is non-critical */ res = dma_alloc_coherent(dev, PAGE_SIZE << pg, dma, gfp_flags);