From: Andrew Morton jermy fix tit 4 me Cc: Jeremy Fitzhardinge Signed-off-by: Andrew Morton --- diff -puN include/linux/dma-mapping.h~stop-using-dma_xxbit_mask-fix include/linux/dma-mapping.h --- a/include/linux/dma-mapping.h~stop-using-dma_xxbit_mask-fix +++ a/include/linux/dma-mapping.h @@ -13,7 +13,7 @@ enum dma_data_direction { DMA_NONE = 3, }; -#define DMA_BIT_MASK(n) ((1ULL<<(n))-1) +#define DMA_BIT_MASK(n) (((n) == 64) ? ~0ULL : ((1ULL<<(n))-1)) /* * NOTE: do not use the below macros in new code and do not add new definitions @@ -21,7 +21,7 @@ enum dma_data_direction { * * Instead, just open-code DMA_BIT_MASK(n) within your driver */ -#define DMA_64BIT_MASK (~0ULL) +#define DMA_64BIT_MASK DMA_BIT_MASK(64) #define DMA_48BIT_MASK DMA_BIT_MASK(48) #define DMA_47BIT_MASK DMA_BIT_MASK(47) #define DMA_40BIT_MASK DMA_BIT_MASK(40) _