| .. | .. |
|---|
| 11 | 11 | |
|---|
| 12 | 12 | #include <linux/compiler.h> |
|---|
| 13 | 13 | #include <linux/types.h> |
|---|
| 14 | +#include <linux/list.h> |
|---|
| 14 | 15 | #include <linux/printk.h> |
|---|
| 15 | 16 | #include <linux/bug.h> |
|---|
| 16 | 17 | #include <errno.h> |
|---|
| .. | .. |
|---|
| 109 | 110 | const typeof( ((type *)0)->member ) *__mptr = (ptr); \ |
|---|
| 110 | 111 | (type *)( (char *)__mptr - offsetof(type,member) );}) |
|---|
| 111 | 112 | |
|---|
| 112 | | -#define uninitialized_var(x) x = x |
|---|
| 113 | | - |
|---|
| 114 | 113 | # ifndef likely |
|---|
| 115 | 114 | # define likely(x) (__builtin_expect(!!(x), 1)) |
|---|
| 116 | 115 | # endif |
|---|
| .. | .. |
|---|
| 127 | 126 | #define dev_err(dev, format, ...) fprintf (stderr, format, ## __VA_ARGS__) |
|---|
| 128 | 127 | #define dev_warn(dev, format, ...) fprintf (stderr, format, ## __VA_ARGS__) |
|---|
| 129 | 128 | |
|---|
| 130 | | -#define WARN_ON_ONCE(cond) ((cond) ? fprintf (stderr, "WARNING\n") : 0) |
|---|
| 129 | +#define WARN_ON_ONCE(cond) (unlikely(cond) ? fprintf (stderr, "WARNING\n") : 0) |
|---|
| 131 | 130 | |
|---|
| 132 | 131 | #define min(x, y) ({ \ |
|---|
| 133 | 132 | typeof(x) _min1 = (x); \ |
|---|
| 134 | 133 | typeof(y) _min2 = (y); \ |
|---|
| 135 | 134 | (void) (&_min1 == &_min2); \ |
|---|
| 136 | 135 | _min1 < _min2 ? _min1 : _min2; }) |
|---|
| 137 | | - |
|---|
| 138 | | -/* TODO: empty stubs for now. Broken but enough for virtio_ring.c */ |
|---|
| 139 | | -#define list_add_tail(a, b) do {} while (0) |
|---|
| 140 | | -#define list_del(a) do {} while (0) |
|---|
| 141 | | -#define list_for_each_entry(a, b, c) while (0) |
|---|
| 142 | | -/* end of stubs */ |
|---|
| 143 | 136 | |
|---|
| 144 | 137 | #endif /* KERNEL_H */ |
|---|