summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDanny Holman <dholman@gymli.org>2024-02-16 12:30:49 -0600
committerDanny Holman <dholman@gymli.org>2024-02-16 12:30:49 -0600
commit1d40d14e09c8c22ffbdf5a5cad95ae552587ce53 (patch)
treeab419012553bbbb9b1589aafc8ea865cc9dc7daf /include
parent19b5c8699f0d201a8ffe41594d966d143320260d (diff)
include: kernel: move list.h to a data struct directory
Move list.h into a designated directory for data structure definitions. Signed-off-by: Danny Holman <dholman@gymli.org>
Diffstat (limited to 'include')
-rw-r--r--include/kernel/data/list.h (renamed from include/kernel/list.h)15
1 files changed, 8 insertions, 7 deletions
diff --git a/include/kernel/list.h b/include/kernel/data/list.h
index cc78a4f..b61cfaa 100644
--- a/include/kernel/list.h
+++ b/include/kernel/data/list.h
@@ -1,5 +1,5 @@
-#ifndef LIST_H
-#define LIST_H
+#ifndef KERNEL_LIST_H
+#define KERNEL_LIST_H
#include <stddef.h>
@@ -9,12 +9,13 @@ struct list_head {
};
static inline void list_add(struct list_head *new, struct list_head *head) {
- new->prev = head;
- new->next = head->next;
+ struct list_head *temp = head;
+ while (temp->next != NULL)
+ temp = temp->next;
- head->next = new;
- if (head->prev != NULL)
- head->prev->next = new;
+ temp->next = new;
+ new->prev = temp;
+ new->next = NULL;
}
static inline void list_del(struct list_head *item) {