X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fsh%2Fmm%2Fconsistent.c;h=df3a9e452cc55321c238143b05190557401bb867;hb=987b0145d94eecf292d8b301228356f44611ab7c;hp=ee73e30263af947b683e2833bb88e52806151f21;hpb=f7ed79d23a47594e7834d66a8f14449796d4f3e6;p=linux-2.6.git diff --git a/arch/sh/mm/consistent.c b/arch/sh/mm/consistent.c index ee73e3026..df3a9e452 100644 --- a/arch/sh/mm/consistent.c +++ b/arch/sh/mm/consistent.c @@ -23,7 +23,6 @@ void *consistent_alloc(gfp_t gfp, size_t size, dma_addr_t *handle) page = alloc_pages(gfp, order); if (!page) return NULL; - split_page(page, order); ret = page_address(page); *handle = virt_to_phys(ret); @@ -38,6 +37,8 @@ void *consistent_alloc(gfp_t gfp, size_t size, dma_addr_t *handle) end = page + (1 << order); while (++page < end) { + set_page_count(page, 1); + /* Free any unused pages */ if (page >= free) { __free_page(page);