nuttx/sched/task
Ville Juven 57de6484e9 task/pthread_cancelpt: Fix task_delete from another task group
PR #11165 causes an unnecessary regression; task_delete no longer works,
if the deleted task is from another group.

The logic that prevents this comes from:

nxnotify_cancellation() ->
tls_get_info_pid() ->
nxsched_get_stackinfo()

Which checks for permissions, which does not make sense in this case since
it is the kernel asking for the stack information.

Fix this by partially reverting 11165 and implementing a direct path for
the kernel to query for any tasks TLS.
2023-11-22 08:05:58 -08:00
..
CMakeLists.txt task/pthread_cancelpt: Move cancel point handling to libc, data to TLS 2023-11-15 08:52:04 -08:00
exit.c libc/stdio: Flush streams in userspace when process exits 2022-12-22 20:16:11 +08:00
Make.defs task/pthread_cancelpt: Move cancel point handling to libc, data to TLS 2023-11-15 08:52:04 -08:00
spawn.h sched/task: Remove spawn_proxyattrs as obsolete implementation 2023-10-30 22:30:03 +08:00
task_activate.c nuttx/sched: merge up_block_task and up_unblock_task 2022-11-22 22:59:08 +08:00
task_cancelpt.c task/pthread_cancelpt: Fix task_delete from another task group 2023-11-22 08:05:58 -08:00
task_create.c sched/taskfiles: skip unnecessary file open/close operations to improve performance 2023-11-16 07:30:36 -08:00
task_delete.c sched: fix the minor style issue 2023-10-25 15:46:45 +08:00
task_execve.c libc/exit: Purge calls to userspace API exit() from kernel 2023-02-17 23:07:17 +08:00
task_exit.c libc/stdio: Flush streams in userspace when process exits 2022-12-22 20:16:11 +08:00
task_exithook.c task/pthread_cancelpt: Move cancel point handling to libc, data to TLS 2023-11-15 08:52:04 -08:00
task_fork.c sched/taskfiles: skip unnecessary file open/close operations to improve performance 2023-11-16 07:30:36 -08:00
task_getgroup.c
task_getpid.c sched/task: add kernel interface nxsched_* gettid/getpid/getppid 2023-02-02 10:33:01 +08:00
task_getppid.c sched/task: add kernel interface nxsched_* gettid/getpid/getppid 2023-02-02 10:33:01 +08:00
task_gettid.c sched/task: add kernel interface nxsched_* gettid/getpid/getppid 2023-02-02 10:33:01 +08:00
task_init.c sched/taskfiles: skip unnecessary file open/close operations to improve performance 2023-11-16 07:30:36 -08:00
task_posixspawn.c sched/task: Remove spawn_proxyattrs as obsolete implementation 2023-10-30 22:30:03 +08:00
task_prctl.c prctl: Replace strncpy with strlcpy for safety 2022-08-24 01:54:53 +08:00
task_recover.c sched/mqueue: make mqueue and mqueue sysv can disable separately 2022-11-16 20:03:40 +08:00
task_reparent.c Don't include assert.h from public header file 2021-06-03 08:36:03 -07:00
task_restart.c semantic/parser: fix compile warning found by sparse 2023-05-30 23:00:00 +08:00
task_setup.c task/pthread_cancelpt: Move cancel point handling to libc, data to TLS 2023-11-15 08:52:04 -08:00
task_spawn.c sched/taskfiles: skip unnecessary file open/close operations to improve performance 2023-11-16 07:30:36 -08:00
task_spawnparms.c sched/taskfiles: skip unnecessary file open/close operations to improve performance 2023-11-16 07:30:36 -08:00
task_start.c libc/exit: Purge calls to userspace API exit() from kernel 2023-02-17 23:07:17 +08:00
task_starthook.c Don't include assert.h from public header file 2021-06-03 08:36:03 -07:00
task_terminate.c sched: Fix nxstyle errors 2023-05-11 11:25:58 -03:00
task.h libc/stdio: Flush streams in userspace when process exits 2022-12-22 20:16:11 +08:00