Commit | Line | Data |
---|---|---|
4920c9ac CM |
1 | #ifndef __KERNCOMPAT |
2 | #define __KERNCOMPAT | |
3 | #define gfp_t int | |
4 | #define get_cpu_var(p) (p) | |
5 | #define __get_cpu_var(p) (p) | |
6 | #define BITS_PER_LONG 64 | |
7 | #define __GFP_BITS_SHIFT 20 | |
8 | #define __GFP_BITS_MASK ((int)((1 << __GFP_BITS_SHIFT) - 1)) | |
eb60ceac | 9 | #define GFP_KERNEL 0 |
4920c9ac CM |
10 | #define __read_mostly |
11 | #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) | |
4920c9ac CM |
12 | #define PAGE_SHIFT 12 |
13 | #define ULONG_MAX (~0UL) | |
14 | #define BUG() abort() | |
bb492bb0 CM |
15 | #ifdef __CHECKER__ |
16 | #define __force __attribute__((force)) | |
17 | #define __bitwise__ __attribute__((bitwise)) | |
18 | #else | |
19 | #define __force | |
20 | #define __bitwise__ | |
21 | #endif | |
4920c9ac CM |
22 | |
23 | typedef unsigned int u32; | |
7cf75962 | 24 | typedef unsigned long long u64; |
4920c9ac CM |
25 | typedef unsigned char u8; |
26 | typedef unsigned short u16; | |
27 | ||
28 | typedef unsigned long pgoff_t; | |
29 | ||
30 | #include <stdio.h> | |
31 | #include <stdlib.h> | |
32 | #include <string.h> | |
33 | ||
34 | struct vma_shared { int prio_tree_node; }; | |
35 | struct vm_area_struct { | |
36 | unsigned long vm_pgoff; | |
37 | unsigned long vm_start; | |
38 | unsigned long vm_end; | |
39 | struct vma_shared shared; | |
40 | }; | |
41 | ||
42 | struct page { | |
43 | unsigned long index; | |
44 | }; | |
45 | ||
46 | static inline void preempt_enable(void) { do {; } while(0);} | |
47 | static inline void preempt_disable(void) { do {; } while(0);} | |
48 | ||
49 | static inline void __set_bit(int bit, unsigned long *map) { | |
50 | unsigned long *p = map + bit / BITS_PER_LONG; | |
51 | bit = bit & (BITS_PER_LONG -1); | |
52 | *p |= 1UL << bit; | |
53 | } | |
54 | ||
55 | static inline int test_bit(int bit, unsigned long *map) { | |
56 | unsigned long *p = map + bit / BITS_PER_LONG; | |
57 | bit = bit & (BITS_PER_LONG -1); | |
58 | return *p & (1UL << bit) ? 1 : 0; | |
59 | } | |
60 | ||
61 | static inline void __clear_bit(int bit, unsigned long *map) { | |
62 | unsigned long *p = map + bit / BITS_PER_LONG; | |
63 | bit = bit & (BITS_PER_LONG -1); | |
64 | *p &= ~(1UL << bit); | |
65 | } | |
66 | #define BUG_ON(c) do { if (c) abort(); } while (0) | |
67 | ||
68 | #define container_of(ptr, type, member) ({ \ | |
69 | const typeof( ((type *)0)->member ) *__mptr = (ptr); \ | |
70 | (type *)( (char *)__mptr - __builtin_offsetof(type,member) );}) | |
71 | ||
72 | #endif | |
73 | ||
74 | #define ENOMEM 5 | |
75 | #define EEXIST 6 | |
bb492bb0 CM |
76 | |
77 | #define __CHECK_ENDIAN__ | |
78 | #ifdef __CHECK_ENDIAN__ | |
79 | #define __bitwise __bitwise__ | |
80 | #else | |
81 | #define __bitwise | |
82 | #endif | |
83 | ||
84 | typedef u16 __bitwise __le16; | |
85 | typedef u16 __bitwise __be16; | |
86 | typedef u32 __bitwise __le32; | |
87 | typedef u32 __bitwise __be32; | |
88 | typedef u64 __bitwise __le64; | |
89 | typedef u64 __bitwise __be64; | |
90 | ||
91 | #define cpu_to_le64(x) ((__force __le64)(u64)(x)) | |
92 | #define le64_to_cpu(x) ((__force u64)(__le64)(x)) | |
93 | #define cpu_to_le32(x) ((__force __le32)(u32)(x)) | |
94 | #define le32_to_cpu(x) ((__force u32)(__le32)(x)) | |
95 | #define cpu_to_le16(x) ((__force __le16)(u16)(x)) | |
96 | #define le16_to_cpu(x) ((__force u16)(__le16)(x)) |