diff options
| author | Patrick Williams <iawillia@us.ibm.com> | 2014-02-17 13:32:15 -0600 |
|---|---|---|
| committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-02-27 11:20:44 -0600 |
| commit | 850f884974dac7973f22341920fbb7277cf80245 (patch) | |
| tree | 4a870919aa2b2e8dcfce16ebddbc5cc3cba0dcf8 /src/kernel/futexmgr.C | |
| parent | 19cd4e5ddb80c98365612590cc58e7d0de49f69c (diff) | |
| download | blackbird-hostboot-850f884974dac7973f22341920fbb7277cf80245.tar.gz blackbird-hostboot-850f884974dac7973f22341920fbb7277cf80245.zip | |
Clean up TODOs in Kernel.
* Ensure that unhandled SRESET will trigger TI.
Change-Id: I34807bc357ba6908327ede975afc9c6b6b17c098
RTC: 92848
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/8933
Tested-by: Jenkins Server
Reviewed-by: Douglas R. Gilbert <dgilbert@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/kernel/futexmgr.C')
| -rw-r--r-- | src/kernel/futexmgr.C | 51 |
1 files changed, 26 insertions, 25 deletions
diff --git a/src/kernel/futexmgr.C b/src/kernel/futexmgr.C index f66452543..b88bcf370 100644 --- a/src/kernel/futexmgr.C +++ b/src/kernel/futexmgr.C @@ -1,25 +1,25 @@ -// IBM_PROLOG_BEGIN_TAG -// This is an automatically generated prolog. -// -// $Source: src/kernel/futexmgr.C $ -// -// IBM CONFIDENTIAL -// -// COPYRIGHT International Business Machines Corp. 2011 -// -// p1 -// -// Object Code Only (OCO) source materials -// Licensed Internal Code Source Materials -// IBM HostBoot Licensed Internal Code -// -// The source code for this program is not published or other- -// wise divested of its trade secrets, irrespective of what has -// been deposited with the U.S. Copyright Office. -// -// Origin: 30 -// -// IBM_PROLOG_END +/* IBM_PROLOG_BEGIN_TAG */ +/* This is an automatically generated prolog. */ +/* */ +/* $Source: src/kernel/futexmgr.C $ */ +/* */ +/* IBM CONFIDENTIAL */ +/* */ +/* COPYRIGHT International Business Machines Corp. 2011,2014 */ +/* */ +/* p1 */ +/* */ +/* Object Code Only (OCO) source materials */ +/* Licensed Internal Code Source Materials */ +/* IBM HostBoot Licensed Internal Code */ +/* */ +/* The source code for this program is not published or otherwise */ +/* divested of its trade secrets, irrespective of what has been */ +/* deposited with the U.S. Copyright Office. */ +/* */ +/* Origin: 30 */ +/* */ +/* IBM_PROLOG_END_TAG */ /** * @file futexmgr.C * @brief Definition for kernel side futex management @@ -94,7 +94,7 @@ uint64_t FutexManager::_wake(uint64_t * i_futex1, uint64_t i_count1, uint64_t started = 0; iv_lock.lock(); - + // First start up to i_count1 task(s) while(started < i_count1) { @@ -123,8 +123,9 @@ uint64_t FutexManager::_wake(uint64_t * i_futex1, uint64_t i_count1, // Move up to i_count2 tasks to futex2 while(moved < i_count2) { - // What if *i_futex2 got modified !!!! TODO - // Do we need a safety check here (another val param) ???? + // Note: i_futex2 could be modified by this point due to tasks + // released from i_count1. Userspace has to handle this + // appropriately (currently only in sync_cond_wait). _FutexWait_t * waiter = iv_list.find(i_futex1); if(waiter == NULL) { |

