diff options
Diffstat (limited to 'tools/include/linux')
| -rw-r--r-- | tools/include/linux/list.h | 29 | ||||
| -rw-r--r-- | tools/include/linux/poison.h | 1 |
2 files changed, 30 insertions, 0 deletions
diff --git a/tools/include/linux/list.h b/tools/include/linux/list.h new file mode 100644 index 000000000000..76b014c96893 --- /dev/null +++ b/tools/include/linux/list.h | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | #include <linux/kernel.h> | ||
| 2 | #include <linux/types.h> | ||
| 3 | |||
| 4 | #include "../../../include/linux/list.h" | ||
| 5 | |||
| 6 | #ifndef TOOLS_LIST_H | ||
| 7 | #define TOOLS_LIST_H | ||
| 8 | /** | ||
| 9 | * list_del_range - deletes range of entries from list. | ||
| 10 | * @begin: first element in the range to delete from the list. | ||
| 11 | * @end: last element in the range to delete from the list. | ||
| 12 | * Note: list_empty on the range of entries does not return true after this, | ||
| 13 | * the entries is in an undefined state. | ||
| 14 | */ | ||
| 15 | static inline void list_del_range(struct list_head *begin, | ||
| 16 | struct list_head *end) | ||
| 17 | { | ||
| 18 | begin->prev->next = end->next; | ||
| 19 | end->next->prev = begin->prev; | ||
| 20 | } | ||
| 21 | |||
| 22 | /** | ||
| 23 | * list_for_each_from - iterate over a list from one of its nodes | ||
| 24 | * @pos: the &struct list_head to use as a loop cursor, from where to start | ||
| 25 | * @head: the head for your list. | ||
| 26 | */ | ||
| 27 | #define list_for_each_from(pos, head) \ | ||
| 28 | for (; pos != (head); pos = pos->next) | ||
| 29 | #endif | ||
diff --git a/tools/include/linux/poison.h b/tools/include/linux/poison.h new file mode 100644 index 000000000000..0c27bdf14233 --- /dev/null +++ b/tools/include/linux/poison.h | |||
| @@ -0,0 +1 @@ | |||
| #include "../../../include/linux/poison.h" | |||
