summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJammy Zhou <Jammy.Zhou@amd.com>2015-07-13 16:49:42 +0800
committerMarek Olšák <marek.olsak@amd.com>2015-07-22 13:53:25 +0200
commitc1d7bf5d6589afc6e98f4f1504110b25f7419eb8 (patch)
treebed6e51d9a9a3f2cfaac1bde40b6b20117bac67d
parentbdbdb149ff68fe45d7c2421f9f69b2f986556fbe (diff)
drm: fix the ALIGN macro to avoid value clamp
If the value is 64bit, but the alignment is 32bit type, the high 32bit will be clamped with previous definition Signed-off-by: Jammy Zhou <Jammy.Zhou@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com>
-rw-r--r--util_math.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/util_math.h b/util_math.h
index b8de0f86..3bc5f644 100644
--- a/util_math.h
+++ b/util_math.h
@@ -27,6 +27,7 @@
#define MIN2( A, B ) ( (A)<(B) ? (A) : (B) )
#define MAX2( A, B ) ( (A)>(B) ? (A) : (B) )
-#define ALIGN( value, alignment ) ( ((value) + (alignment) - 1) & ~((alignment) - 1) )
+#define __align_mask(value, mask) (((value) + (mask)) & ~(mask))
+#define ALIGN(value, alignment) __align_mask(value, (typeof(value))((alignment) - 1))
#endif /*_UTIL_MATH_H_*/