--- linux/include/linux/list.h~ 2001-12-21 17:42:03.000000000 +0000 +++ linux/include/linux/list.h 2004-06-14 23:41:33.000000000 +0100 @@ -105,6 +105,29 @@ } /** + * list_move - delete from one list and add as another's head + * @list: the entry to move + * @head: the head that will precede our entry + */ +static inline void list_move(struct list_head *list, struct list_head *head) +{ + __list_del(list->prev, list->next); + list_add(list, head); +} + +/** + * list_move_tail - delete from one list and add as another's tail + * @list: the entry to move + * @head: the head that will follow our entry + */ +static inline void list_move_tail(struct list_head *list, + struct list_head *head) +{ + __list_del(list->prev, list->next); + list_add_tail(list, head); +} + +/** * list_empty - tests whether a list is empty * @head: the list to test. */