Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 447f6a95 authored by Sowmini Varadhan's avatar Sowmini Varadhan Committed by Linus Torvalds
Browse files

lib/iommu-common.c: do not use 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 ~0ul and
BITS_PER_LONG.

Detected by Andrew Morton on ARMD.

Signed-off-by: default avatarSowmini Varadhan <sowmini.varadhan@oracle.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: David S. Miller <davem@davemloft.net>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 3e810ae2
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -119,7 +119,7 @@ unsigned long iommu_tbl_range_alloc(struct device *dev,
	unsigned long align_mask = 0;
	unsigned long align_mask = 0;


	if (align_order > 0)
	if (align_order > 0)
		align_mask = 0xffffffffffffffffl >> (64 - align_order);
		align_mask = ~0ul >> (BITS_PER_LONG - align_order);


	/* Sanity check */
	/* Sanity check */
	if (unlikely(npages == 0)) {
	if (unlikely(npages == 0)) {