summaryrefslogtreecommitdiff
path: root/nuttx/sched/os_internal.h
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2013-01-25 17:23:38 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2013-01-25 17:23:38 +0000
commitf2933cc4b65836a712f1ab996512999959a8c48a (patch)
treedd7f8afd13defdb90a4a8ffaba352f90efc3ec3a /nuttx/sched/os_internal.h
parent1520663dd52c25496f285eb2e08077318c600759 (diff)
downloadpx4-nuttx-f2933cc4b65836a712f1ab996512999959a8c48a.tar.gz
px4-nuttx-f2933cc4b65836a712f1ab996512999959a8c48a.tar.bz2
px4-nuttx-f2933cc4b65836a712f1ab996512999959a8c48a.zip
Add framework to support task groups
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5562 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'nuttx/sched/os_internal.h')
-rw-r--r--nuttx/sched/os_internal.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/nuttx/sched/os_internal.h b/nuttx/sched/os_internal.h
index dc87cb9a4..ee5ada165 100644
--- a/nuttx/sched/os_internal.h
+++ b/nuttx/sched/os_internal.h
@@ -268,7 +268,20 @@ int task_schedsetup(FAR _TCB *tcb, int priority, start_t start,
int task_argsetup(FAR _TCB *tcb, FAR const char *name, FAR const char *argv[]);
void task_exithook(FAR _TCB *tcb, int status);
int task_deletecurrent(void);
+
#ifdef CONFIG_SCHED_HAVE_PARENT
+int task_reparent(pid_t ppid, pid_t chpid);
+
+#ifdef HAVE_TASK_GROUP
+int group_create(FAR _TCB *tcb);
+void group_join(FAR _TCB *tcb);
+void group_leave(FAR _TCB *tcb);
+#else
+# define group_create(tcb)
+# define group_join(tcb)
+# define group_leave(tcb)
+#endif
+
#ifdef CONFIG_SCHED_CHILD_STATUS
void weak_function task_initialize(void);
FAR struct child_status_s *task_allocchild(void);
@@ -279,8 +292,8 @@ FAR struct child_status_s *task_findchild(FAR _TCB *tcb, pid_t pid);
FAR struct child_status_s *task_removechild(FAR _TCB *tcb, pid_t pid);
void task_removechildren(FAR _TCB *tcb);
#endif
-int task_reparent(pid_t ppid, pid_t chpid);
#endif
+
#ifndef CONFIG_CUSTOM_STACK
int kernel_thread(FAR const char *name, int priority, int stack_size,
main_t entry, FAR const char *argv[]);