Index: kernel/generic/include/adt/list.h
===================================================================
--- kernel/generic/include/adt/list.h	(revision 1066041e4e1803c9b6506af8a869b03669a25957)
+++ kernel/generic/include/adt/list.h	(revision e8471b96a1978ca7e8a7ad8a1fb935a55264087b)
@@ -51,4 +51,10 @@
 } list_t;
 
+
+extern int list_member(const link_t *, const list_t *);
+extern void list_splice(list_t *, link_t *);
+extern unsigned int list_count(const list_t *);
+
+
 /** Declare and initialize statically allocated list.
  *
@@ -301,53 +307,17 @@
 }
 
-/** Moves items of one list into another after the specified item.
- * 
- * Inserts all items of @a list after item at @a pos in another list. 
- * Both lists may be empty. 
- * 
- * @param list Source list to move after pos.
- * @param pos Source items will be placed after this item.
- */
-NO_TRACE static inline void list_splice(list_t *list, link_t *pos)
-{
-	link_t *pos_next = pos->next;
-	
-	if (!list_empty(list)) {
-		link_t *first = list->head.next;
-		link_t *last = list->head.prev;
-
-		pos->next = first;
-		first->prev = pos;
-
-		last->next = pos_next;
-		pos_next->prev = last;
-		
-		list_initialize(list);
-	}
-}
-
-/** Moves all items of list @a src to the end of list @a dest.
- * 
- * Both lists may be empty.
- * 
- * @param src Source list to move. Becomes empty.
- * @param dest Items of src will be inserted at the end of this list, ie
- *             after all items of src.
- */
-NO_TRACE static inline void list_append_list(list_t *src, list_t *dest)
-{
-	list_splice(src, dest->head.prev);
-}
-
-/** Moves all items of list @a src to the beginning of list @a dest.
- * 
- * Both lists may be empty.
- * 
- * @param src Source list to move. Becomes empty.
- * @param dest Items of src will be inserted at the beginning of this list.
- */
-NO_TRACE static inline void list_prepend_list(list_t *src, list_t *dest)
-{
-	list_splice(src, &dest->head);
+/** Concatenate two lists
+ *
+ * Concatenate lists @a list1 and @a list2, producing a single
+ * list @a list1 containing items from both (in @a list1, @a list2
+ * order) and empty list @a list2.
+ *
+ * @param list1		First list and concatenated output
+ * @param list2 	Second list and empty output.
+ *
+ */
+NO_TRACE static inline void list_concat(list_t *list1, list_t *list2)
+{
+	list_splice(list2, list1->head.prev);
 }
 
@@ -375,8 +345,4 @@
 }
 
-extern int list_member(const link_t *, const list_t *);
-extern void list_concat(list_t *, list_t *);
-extern unsigned int list_count(const list_t *);
-
 #endif
 
