Just FYI: >I tried the alternative solution and made IOMMU_PAGE_SHIFT an ULL >but that did not help. The type of (X << Y) is independent of the type of Y. Which means that these (unchanged) defines: > #define PSYCHO_IOMMU_TAG_WRITE (0x1UL << 21UL) > #define PSYCHO_IOMMU_TAG_STREAM (0x1UL << 20UL) > #define PSYCHO_IOMMU_TAG_SIZE (0x1UL << 19UL) have extra ULs in them. (Harmlessly, though.) (I think some truly ancient versions of gcc, perhaps 1.x or 2.x, accidentally used the type of Y in computing a type for X<<Y, which might be where this started.) Chris -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html