|
20 | 20 |
|
21 | 21 | #define PAGE_SIZE getpagesize() |
22 | 22 | #define PAGE_MASK (~(PAGE_SIZE-1)) |
| 23 | +#define PAGE_ALIGN(x) ((x + PAGE_SIZE - 1) & PAGE_MASK) |
23 | 24 |
|
| 25 | +typedef unsigned long long phys_addr_t; |
24 | 26 | typedef unsigned long long dma_addr_t; |
25 | 27 | typedef size_t __kernel_size_t; |
26 | 28 | typedef unsigned int __wsum; |
@@ -57,13 +59,23 @@ static inline void *kzalloc(size_t s, gfp_t gfp) |
57 | 59 | return p; |
58 | 60 | } |
59 | 61 |
|
| 62 | +static inline void *alloc_pages_exact(size_t s, gfp_t gfp) |
| 63 | +{ |
| 64 | + return kmalloc(s, gfp); |
| 65 | +} |
| 66 | + |
60 | 67 | static inline void kfree(void *p) |
61 | 68 | { |
62 | 69 | if (p >= __kfree_ignore_start && p < __kfree_ignore_end) |
63 | 70 | return; |
64 | 71 | free(p); |
65 | 72 | } |
66 | 73 |
|
| 74 | +static inline void free_pages_exact(void *p, size_t s) |
| 75 | +{ |
| 76 | + kfree(p); |
| 77 | +} |
| 78 | + |
67 | 79 | static inline void *krealloc(void *p, size_t s, gfp_t gfp) |
68 | 80 | { |
69 | 81 | return realloc(p, s); |
@@ -105,6 +117,8 @@ static inline void free_page(unsigned long addr) |
105 | 117 | #define dev_err(dev, format, ...) fprintf (stderr, format, ## __VA_ARGS__) |
106 | 118 | #define dev_warn(dev, format, ...) fprintf (stderr, format, ## __VA_ARGS__) |
107 | 119 |
|
| 120 | +#define WARN_ON_ONCE(cond) ((cond) && fprintf (stderr, "WARNING\n")) |
| 121 | + |
108 | 122 | #define min(x, y) ({ \ |
109 | 123 | typeof(x) _min1 = (x); \ |
110 | 124 | typeof(y) _min2 = (y); \ |
|
0 commit comments