xref: /kvmtool/include/linux/types.h (revision c8058b88379ef2e72f184ee2be186d99a12beabd)
1886c5381SPekka Enberg #ifndef LINUX_TYPES_H
2886c5381SPekka Enberg #define LINUX_TYPES_H
3886c5381SPekka Enberg 
470f44c74SCyrill Gorcunov #include <kvm/compiler.h>
5d4e7505cSMatt Evans #define __SANE_USERSPACE_TYPES__	/* For PPC64, to get LL64 types */
6*c8058b88SAndreas Herrmann #include <asm/types.h>
7886c5381SPekka Enberg 
898ee79f4SPrasad Joshi typedef __u64 u64;
998ee79f4SPrasad Joshi typedef __s64 s64;
1098ee79f4SPrasad Joshi 
1198ee79f4SPrasad Joshi typedef __u32 u32;
1298ee79f4SPrasad Joshi typedef __s32 s32;
1398ee79f4SPrasad Joshi 
1498ee79f4SPrasad Joshi typedef __u16 u16;
1598ee79f4SPrasad Joshi typedef __s16 s16;
1698ee79f4SPrasad Joshi 
1798ee79f4SPrasad Joshi typedef __u8  u8;
1898ee79f4SPrasad Joshi typedef __s8  s8;
1998ee79f4SPrasad Joshi 
2086835cedSPrasad Joshi #ifdef __CHECKER__
2186835cedSPrasad Joshi #define __bitwise__ __attribute__((bitwise))
2286835cedSPrasad Joshi #else
2386835cedSPrasad Joshi #define __bitwise__
2486835cedSPrasad Joshi #endif
2586835cedSPrasad Joshi #ifdef __CHECK_ENDIAN__
2686835cedSPrasad Joshi #define __bitwise __bitwise__
2786835cedSPrasad Joshi #else
2886835cedSPrasad Joshi #define __bitwise
2986835cedSPrasad Joshi #endif
3086835cedSPrasad Joshi 
3186835cedSPrasad Joshi 
3286835cedSPrasad Joshi typedef __u16 __bitwise __le16;
3386835cedSPrasad Joshi typedef __u16 __bitwise __be16;
3486835cedSPrasad Joshi typedef __u32 __bitwise __le32;
3586835cedSPrasad Joshi typedef __u32 __bitwise __be32;
3686835cedSPrasad Joshi typedef __u64 __bitwise __le64;
3786835cedSPrasad Joshi typedef __u64 __bitwise __be64;
3886835cedSPrasad Joshi 
39c1b3d8d8SSasha Levin struct list_head {
40c1b3d8d8SSasha Levin 	struct list_head *next, *prev;
41c1b3d8d8SSasha Levin };
42c1b3d8d8SSasha Levin 
43c1b3d8d8SSasha Levin struct hlist_head {
44c1b3d8d8SSasha Levin 	struct hlist_node *first;
45c1b3d8d8SSasha Levin };
46c1b3d8d8SSasha Levin 
47c1b3d8d8SSasha Levin struct hlist_node {
48c1b3d8d8SSasha Levin 	struct hlist_node *next, **pprev;
49c1b3d8d8SSasha Levin };
50c1b3d8d8SSasha Levin 
51886c5381SPekka Enberg #endif /* LINUX_TYPES_H */
52