Merge tag 'v4.4.72' into linux-linaro-lsk-v4.4
[firefly-linux-kernel-4.4.55.git] / include / linux / stddef.h
1 #ifndef _LINUX_STDDEF_H
2 #define _LINUX_STDDEF_H
3
4 #include <uapi/linux/stddef.h>
5
6 #undef NULL
7 #define NULL ((void *)0)
8
9 enum {
10         false   = 0,
11         true    = 1
12 };
13
14 #undef offsetof
15 #ifdef __compiler_offsetof
16 #define offsetof(TYPE, MEMBER)  __compiler_offsetof(TYPE, MEMBER)
17 #else
18 #define offsetof(TYPE, MEMBER)  ((size_t)&((TYPE *)0)->MEMBER)
19 #endif
20
21 /**
22  * offsetofend(TYPE, MEMBER)
23  *
24  * @TYPE: The type of the structure
25  * @MEMBER: The member within the structure to get the end offset of
26  */
27 #define offsetofend(TYPE, MEMBER) \
28         (offsetof(TYPE, MEMBER) + sizeof(((TYPE *)0)->MEMBER))
29
30 #endif