Messages in this thread Patch in this message |  | | Date | Sun, 19 Jul 2015 14:20:14 +0200 | | From | Sowmini Varadhan <> | | Subject | [PATCH] iommu-common: Do not use 64 bit constant 0xffffffffffffffffl for computing align_mask |
| |
Using a 64 bit constant generates "warning: integer constant is too large for 'long' type" on 32 bit platforms. Instead use ~0l to get the desired effect.
Detected by Andrew Morton who has confirmed that this patch fixes the warning on i386/gcc-4.4.3, i386/gcc-4.4.0 and arm/gcc-4.4.4.
Signed-off-by: Sowmini Varadhan <sowmini.varadhan@oracle.com> --- lib/iommu-common.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/lib/iommu-common.c b/lib/iommu-common.c index df30632..fd1297d 100644 --- a/lib/iommu-common.c +++ b/lib/iommu-common.c @@ -119,7 +119,7 @@ unsigned long iommu_tbl_range_alloc(struct device *dev, unsigned long align_mask = 0; if (align_order > 0) - align_mask = 0xffffffffffffffffl >> (64 - align_order); + align_mask = ~0l >> (64 - align_order); /* Sanity check */ if (unlikely(npages == 0)) { -- 1.7.1
|  |