ARM: 8437/1: dma-mapping: fix build warning with new DMA_ERROR_CODE definition
authorAndre Przywara <andre.przywara@arm.com>
Mon, 14 Sep 2015 16:49:02 +0000 (17:49 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Wed, 16 Sep 2015 22:58:46 +0000 (23:58 +0100)
commit90cde5584a34e210850728bebee4c6fb1a7124ba
tree418d9b536c7c584f7437d50ae633e4e7a2e6a616
parent12fc7306e6ffae4e86680892f2286063d7d6eae7
ARM: 8437/1: dma-mapping: fix build warning with new DMA_ERROR_CODE definition

Commit 96231b2686b5: ("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: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mm/dma-mapping.c