Re: [PATCH 1/2] mm/ARM: dma: fix conflicting types for'arm_dma_zone_size'

From: Russell King - ARM Linux
Date: Tue Dec 10 2013 - 16:26:16 EST


On Tue, Dec 10, 2013 at 02:29:57PM -0500, Santosh Shilimkar wrote:
> diff --git a/arch/arm/include/asm/dma.h b/arch/arm/include/asm/dma.h
> index 58b8c6a..1439b80 100644
> --- a/arch/arm/include/asm/dma.h
> +++ b/arch/arm/include/asm/dma.h
> @@ -8,7 +8,7 @@
> #define MAX_DMA_ADDRESS 0xffffffffUL
> #else
> #define MAX_DMA_ADDRESS ({ \
> - extern unsigned long arm_dma_zone_size; \
> + extern phys_addr_t arm_dma_zone_size; \
> arm_dma_zone_size ? \
> (PAGE_OFFSET + arm_dma_zone_size) : 0xffffffffUL; })

This is wrong. Take a moment to look at it more closely. What does
"PAGE_OFFSET" tell you about what its returning?

What happens if arm_dma_zone_size is greater than 1GB when PAGE_OFFSET
is at the default setting of 3GB?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/