Update TODO list
This commit is contained in:
parent
d648f9c8b4
commit
baaa5f7cb8
43
TODO
43
TODO
@ -1,4 +1,4 @@
|
|||||||
NuttX TODO List (Last updated December 8, 2016)
|
NuttX TODO List (Last updated December 11, 2016)
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
This file summarizes known NuttX bugs, limitations, inconsistencies with
|
This file summarizes known NuttX bugs, limitations, inconsistencies with
|
||||||
@ -9,7 +9,7 @@ issues related to each board port.
|
|||||||
|
|
||||||
nuttx/:
|
nuttx/:
|
||||||
|
|
||||||
(13) Task/Scheduler (sched/)
|
(12) Task/Scheduler (sched/)
|
||||||
(1) SMP
|
(1) SMP
|
||||||
(1) Memory Management (mm/)
|
(1) Memory Management (mm/)
|
||||||
(1) Power Management (drivers/pm)
|
(1) Power Management (drivers/pm)
|
||||||
@ -165,45 +165,6 @@ o Task/Scheduler (sched/)
|
|||||||
incompatibilities could show up in porting some code).
|
incompatibilities could show up in porting some code).
|
||||||
Priority: Low
|
Priority: Low
|
||||||
|
|
||||||
Title: REMOVE TASK_DELETE
|
|
||||||
Description: Need to remove asychronous fix task_delete(). This interface
|
|
||||||
is non-standard and not safe. Arbitrary deleting tasks can
|
|
||||||
cause serious problems such as memory leaks and resources like
|
|
||||||
semaphores left in bad states.
|
|
||||||
|
|
||||||
Task/process exit callbacks registered via atexit() or
|
|
||||||
on_exit() will not work correctly with task_delete(): In
|
|
||||||
that case the callback would execute in the context the
|
|
||||||
caller of task_delete() cancel, not in the context of the
|
|
||||||
exiting task (or process).
|
|
||||||
|
|
||||||
Better to remove task_delete() than to retain it as a latent
|
|
||||||
bug.
|
|
||||||
|
|
||||||
Currently used within the OS and also part of the
|
|
||||||
implementation of pthread_cancel() and task_restart() (which
|
|
||||||
should also go for the same reasons). It is used in
|
|
||||||
NxWM::CNxConsole to terminate console tasks and also in
|
|
||||||
apps/netutils/thttpd to kill CGI tasks that timeout. So not
|
|
||||||
so simple to remove.
|
|
||||||
|
|
||||||
Option: With CONFIG_CANCELLATION_POINTS=y task_delete()
|
|
||||||
does not do asynchronous deletion but should rather do the
|
|
||||||
same kind of synchronization such as the pthread cancellation
|
|
||||||
points. In this configuration, none of the issues above
|
|
||||||
apply. It is only the asynchronous task deletion that cannot
|
|
||||||
be supported. These helper functions are also available to
|
|
||||||
help manage task deletion:
|
|
||||||
|
|
||||||
int task_setcancelstate(int state, FAR int *oldstate);
|
|
||||||
int task_setcanceltype(int type, FAR int *oldtype);
|
|
||||||
void task_testcancel(void);
|
|
||||||
|
|
||||||
Which are analogous to the similarly named pthread_ interfaces.
|
|
||||||
|
|
||||||
Status: Open
|
|
||||||
Priority: Low and not easily removable.
|
|
||||||
|
|
||||||
Title: RELEASE SEMAPHORES HELD BY CANCELED THREADS:
|
Title: RELEASE SEMAPHORES HELD BY CANCELED THREADS:
|
||||||
Description: Commit: fecb9040d0e54baf14b729e556a832febfe8229e: "In
|
Description: Commit: fecb9040d0e54baf14b729e556a832febfe8229e: "In
|
||||||
case a thread is doing a blocking operation (e.g. read())
|
case a thread is doing a blocking operation (e.g. read())
|
||||||
|
Loading…
Reference in New Issue
Block a user