anchao commented on code in PR #13129:
URL: https://github.com/apache/nuttx/pull/13129#discussion_r1732140539
##########
sched/task/task_setup.c:
##########
@@ -155,14 +170,23 @@ static int nxtask_assign_pid(FAR struct tcb_s *tcb)
for (i = 0; i < g_npidhash / 2; i++)
{
+ if (g_pidhash[i] == NULL)
+ {
+ /* If the pid is not used, skip it.
+ * This may be triggered when a context switch occurs
+ * during mm_malloc and a thread is destroyed.
+ */
+
+ continue;
+ }
+
hash_ndx = PIDHASH(g_pidhash[i]->pid);
DEBUGASSERT(pidhash[hash_ndx] == NULL);
pidhash[hash_ndx] = g_pidhash[i];
}
/* Release resource for original g_pidhash, using new g_pidhash */
- temp = g_pidhash;
g_pidhash = pidhash;
kmm_free(temp);
Review Comment:
leave_critical_section() before free
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]