summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Elder <alex.elder@linaro.org>2014-01-23 15:54:00 -0800
committerMaciej Wereski <m.wereski@partner.samsung.com>2015-04-17 16:29:54 +0200
commit38cf4cb93ba3e6d402969cf47a3d0fed3d3f6d17 (patch)
treeac20147991752d9e98ad35717a4d44ed02a01cf0
parenta9e185a169c283fc2e6abcc53e1f796d6207a6ec (diff)
downloadlinux-3.10-38cf4cb93ba3e6d402969cf47a3d0fed3d3f6d17.tar.gz
linux-3.10-38cf4cb93ba3e6d402969cf47a3d0fed3d3f6d17.tar.bz2
linux-3.10-38cf4cb93ba3e6d402969cf47a3d0fed3d3f6d17.zip
kernel.h: define u8, s8, u32, etc. limits
Create constants that define the maximum and minimum values representable by the kernel types u8, s8, u16, s16, and so on. Signed-off-by: Alex Elder <elder@linaro.org> Cc: Sage Weil <sage@inktank.com> Cc: David Miller <davem@davemloft.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--include/linux/kernel.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/linux/kernel.h b/include/linux/kernel.h
index e9ef6d6b51d..341551c7b4c 100644
--- a/include/linux/kernel.h
+++ b/include/linux/kernel.h
@@ -29,6 +29,19 @@
#define ULLONG_MAX (~0ULL)
#define SIZE_MAX (~(size_t)0)
+#define U8_MAX ((u8)~0U)
+#define S8_MAX ((s8)(U8_MAX>>1))
+#define S8_MIN ((s8)(-S8_MAX - 1))
+#define U16_MAX ((u16)~0U)
+#define S16_MAX ((s16)(U16_MAX>>1))
+#define S16_MIN ((s16)(-S16_MAX - 1))
+#define U32_MAX ((u32)~0U)
+#define S32_MAX ((s32)(U32_MAX>>1))
+#define S32_MIN ((s32)(-S32_MAX - 1))
+#define U64_MAX ((u64)~0ULL)
+#define S64_MAX ((s64)(U64_MAX>>1))
+#define S64_MIN ((s64)(-S64_MAX - 1))
+
#define STACK_MAGIC 0xdeadbeef
#define REPEAT_BYTE(x) ((~0ul / 0xff) * (x))