diff options
author | Richard Braun <rbraun@sceen.net> | 2017-08-27 17:18:54 +0200 |
---|---|---|
committer | Richard Braun <rbraun@sceen.net> | 2017-08-27 17:18:54 +0200 |
commit | 70f7512a01ba8f90aad6dbb4d285e279f0e17e64 (patch) | |
tree | a6215d6335ec42e33da4b6aadfa1b3c0be9c860b | |
parent | 93a8a5e35c4f5dc31316f034c83b34d25fa8bf08 (diff) |
Add TODO entries
-rw-r--r-- | Makefile.am | 1 | ||||
-rw-r--r-- | doc/intro.9.txt | 5 | ||||
-rw-r--r-- | kern/rbtree.h | 2 | ||||
-rw-r--r-- | kern/thread.c | 2 | ||||
-rw-r--r-- | kern/thread.h | 1 | ||||
-rw-r--r-- | kern/work.h | 2 | ||||
-rw-r--r-- | kern/xcall.c | 1 |
7 files changed, 11 insertions, 3 deletions
diff --git a/Makefile.am b/Makefile.am index 413ac6db..de3e5749 100644 --- a/Makefile.am +++ b/Makefile.am @@ -32,6 +32,7 @@ AM_CFLAGS += \ -fsigned-char \ -fno-common +# TODO Add option AM_CFLAGS += -fno-stack-protector AM_CFLAGS += -nostdlib diff --git a/doc/intro.9.txt b/doc/intro.9.txt index 7a486ede..5b7ee2b1 100644 --- a/doc/intro.9.txt +++ b/doc/intro.9.txt @@ -233,8 +233,7 @@ Priority inheritance can also be enabled for regular mutexes. Please read Victor Yodaiken's report {against-priority-inheritance} in order to fully understand the implications of relying on priority inheritance. -TODO X15 doesn't yet comply with all the requirements for hard real-time. -For that, it still needs a high resolution timer system. +TODO Separate man page with more description [[portability]] PORTABILITY @@ -267,6 +266,8 @@ the future. In addition, the machine-independent code assumes an almost completely relaxed memory model, but still expects no reordering between dependent loads. This model closely matches the ARM family of processors. +TODO Fix memory model description + [[posix_like_interface]] POSIX-LIKE INTERFACE -------------------- diff --git a/kern/rbtree.h b/kern/rbtree.h index 4ae8353f..3de240b6 100644 --- a/kern/rbtree.h +++ b/kern/rbtree.h @@ -265,6 +265,8 @@ rbtree_insert_slot(struct rbtree *tree, rbtree_slot_t slot, * Remove a node from a tree. * * After completion, the node is stale. + * + * TODO rbtree_replace. */ void rbtree_remove(struct rbtree *tree, struct rbtree_node *node); diff --git a/kern/thread.c b/kern/thread.c index 043f14de..e4d8f7cf 100644 --- a/kern/thread.c +++ b/kern/thread.c @@ -1861,7 +1861,7 @@ thread_lock_runq(struct thread *thread, unsigned long *flags) struct thread_runq *runq; for (;;) { - runq = thread->runq; + runq = thread->runq; /* TODO Atomic access */ spinlock_lock_intr_save(&runq->lock, flags); diff --git a/kern/thread.h b/kern/thread.h index e84300c9..a3f2670d 100644 --- a/kern/thread.h +++ b/kern/thread.h @@ -652,6 +652,7 @@ thread_intr_leave(void) } } +/* TODO Use in interrupt handlers instead of manual interrupt/preemption checks */ static inline void thread_assert_interrupted(void) { diff --git a/kern/work.h b/kern/work.h index a8df1f7e..2d7bd62f 100644 --- a/kern/work.h +++ b/kern/work.h @@ -46,6 +46,8 @@ typedef void (*work_fn_t)(struct work *); * This structure should be embedded in objects related to the work. It * stores the work function and is passed to it as its only parameter. * The function can then find the containing object with the structof macro. + * + * TODO Make private. */ struct work { struct work *next; diff --git a/kern/xcall.c b/kern/xcall.c index 44bd41f5..b5ed4b24 100644 --- a/kern/xcall.c +++ b/kern/xcall.c @@ -133,6 +133,7 @@ xcall_call(xcall_fn_t fn, void *arg, unsigned int cpu) thread_preempt_disable(); + /* TODO Fix to match interrupt context semantics */ if (cpu == cpu_id()) { unsigned long flags; |