summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPatrick Williams <iawillia@us.ibm.com>2011-04-19 20:51:32 -0500
committerAndrew J. Geissler <andrewg@us.ibm.com>2011-04-21 15:47:35 -0500
commitb4fd596e2c7bc6bfd884dcff9bf1d98b6ea4d153 (patch)
treea6c9f1c50607e21b1c8a7be636b33a4a3afe787f /src
parent9d3415aef8635c26f32fba09e7214bd26ded9c05 (diff)
downloadblackbird-hostboot-b4fd596e2c7bc6bfd884dcff9bf1d98b6ea4d153.tar.gz
blackbird-hostboot-b4fd596e2c7bc6bfd884dcff9bf1d98b6ea4d153.zip
Fix race conditions in syscall interfaces.
Change-Id: I19b7c1fc834927eda75231b08bfaef0f9efdd8a6 Reviewed-on: http://gfwr801.rchland.ibm.com:8080/gerrit/7 Tested-by: Jenkins Server Tested-by: Andrew J. Geissler <andrewg@us.ibm.com> Reviewed-by: Andrew J. Geissler <andrewg@us.ibm.com>
Diffstat (limited to 'src')
-rw-r--r--src/kernel/syscall.C4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/kernel/syscall.C b/src/kernel/syscall.C
index a61ddd6d9..340250f50 100644
--- a/src/kernel/syscall.C
+++ b/src/kernel/syscall.C
@@ -276,7 +276,6 @@ namespace Systemcalls
}
mq->lock.unlock();
- TASK_SETRTN(t,0);
}
void MsgRespond(task_t* t)
@@ -295,9 +294,10 @@ namespace Systemcalls
waiter->cpu = t->cpu;
TaskManager::setCurrentTask(waiter);
- t->cpu->scheduler->addTask(t);
+ TASK_SETRTN(waiter,0);
TASK_SETRTN(t,0);
+ t->cpu->scheduler->addTask(t);
}
else
{
OpenPOWER on IntegriCloud