• A
    ARM: 8437/1: dma-mapping: fix build warning with new DMA_ERROR_CODE definition · 90cde558
    Andre Przywara 提交于
    Commit 96231b26: ("ARM: 8419/1: dma-mapping: harmonize definition
    of DMA_ERROR_CODE") changed the definition of DMA_ERROR_CODE to use
    dma_addr_t, which makes the compiler barf on assigning this to an
    "int" variable on ARM with LPAE enabled:
    *************
    In file included from /src/linux/include/linux/dma-mapping.h:86:0,
                     from /src/linux/arch/arm/mm/dma-mapping.c:21:
    /src/linux/arch/arm/mm/dma-mapping.c: In function '__iommu_create_mapping':
    /src/linux/arch/arm/include/asm/dma-mapping.h:16:24: warning:
    overflow in implicit constant conversion [-Woverflow]
     #define DMA_ERROR_CODE (~(dma_addr_t)0x0)
                            ^
    /src/linux/arch/arm/mm/dma-mapping.c:1252:15: note: in expansion of
    macro DMA_ERROR_CODE'
      int i, ret = DMA_ERROR_CODE;
                   ^
    *************
    
    Remove the actually unneeded initialization of "ret" in
    __iommu_create_mapping() and move the variable declaration inside the
    for-loop to make the scope of this variable more clear.
    Signed-off-by: NAndre Przywara <andre.przywara@arm.com>
    Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
    90cde558
dma-mapping.c 55.7 KB