lkml.org 
[lkml]   [2008]   [Apr]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 24/28] x86: unify gfp masks
    Date
    Use the same gfp masks for x86_64 and i386.
    It involves using HIGHMEM or DMA32 where necessary, for the sake
    of code compatibility, (no real effect), and using the NORETRY
    mask for i386.

    Signed-off-by: Glauber Costa <gcosta@redhat.com>
    ---
    arch/x86/kernel/pci-dma_32.c | 6 ++++--
    arch/x86/kernel/pci-dma_64.c | 2 ++
    2 files changed, 6 insertions(+), 2 deletions(-)

    diff --git a/arch/x86/kernel/pci-dma_32.c b/arch/x86/kernel/pci-dma_32.c
    index 11f100a..5450bd1 100644
    --- a/arch/x86/kernel/pci-dma_32.c
    +++ b/arch/x86/kernel/pci-dma_32.c
    @@ -79,7 +79,7 @@ void *dma_alloc_coherent(struct device *dev, size_t size,
    unsigned long dma_mask = 0;

    /* ignore region specifiers */
    - gfp &= ~(__GFP_DMA | __GFP_HIGHMEM);
    + gfp &= ~(__GFP_DMA | __GFP_HIGHMEM | __GFP_DMA32);

    if (dma_alloc_from_coherent_mem(dev, size, dma_handle, &ret))
    return ret;
    @@ -91,7 +91,9 @@ void *dma_alloc_coherent(struct device *dev, size_t size,
    if (dma_mask == 0)
    dma_mask = DMA_32BIT_MASK;

    - again:
    + /* Don't invoke OOM killer */
    + gfp |= __GFP_NORETRY;
    +again:
    page = dma_alloc_pages(dev, gfp, order);
    if (page == NULL)
    return NULL;
    diff --git a/arch/x86/kernel/pci-dma_64.c b/arch/x86/kernel/pci-dma_64.c
    index 13a31a4..b956f59 100644
    --- a/arch/x86/kernel/pci-dma_64.c
    +++ b/arch/x86/kernel/pci-dma_64.c
    @@ -49,6 +49,8 @@ dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle,
    unsigned long dma_mask = 0;
    u64 bus;

    + /* ignore region specifiers */
    + gfp &= ~(__GFP_DMA | __GFP_HIGHMEM | __GFP_DMA32);

    if (dma_alloc_from_coherent_mem(dev, size, dma_handle, &memory))
    return memory;
    --
    1.5.0.6


    \
     
     \ /
      Last update: 2008-04-08 18:43    [W:0.024 / U:192.064 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site