sched/group: change type of task group member to single queue

Change the type of task group member to single list chain to
avoid accessing the memory allocator to improve the performance

Signed-off-by: chao an <anchao@lixiang.com>
This commit is contained in:
chao an
2024-03-06 10:13:47 +08:00
committed by Xiang Xiao
parent eb6fe17baa
commit ec08031e4b
10 changed files with 72 additions and 293 deletions
+7 -3
View File
@@ -429,10 +429,8 @@ struct task_group_s
/* Group membership *******************************************************/
uint8_t tg_nmembers; /* Number of members in the group */
#ifdef HAVE_GROUP_MEMBERS
uint8_t tg_mxmembers; /* Number of members in allocation */
FAR pid_t *tg_members; /* Members of the group */
sq_queue_t tg_members; /* List of members for task */
#endif
#ifdef CONFIG_BINFMT_LOADABLE
@@ -538,6 +536,12 @@ struct tcb_s
FAR struct task_group_s *group; /* Pointer to shared task group data */
/* Group membership *******************************************************/
#ifdef HAVE_GROUP_MEMBERS
sq_entry_t member; /* List entry of task member */
#endif
/* Address Environment ****************************************************/
#ifdef CONFIG_ARCH_ADDRENV