[rtems commit] rtems: Simplify _Event_Surrender()

Sebastian Huber sebh at rtems.org
Mon Jan 7 14:11:44 UTC 2013


Module:    rtems
Branch:    master
Commit:    1794f33a2f038d791d89a2a69ccca4855347bbe0
Changeset: http://git.rtems.org/rtems/commit/?id=1794f33a2f038d791d89a2a69ccca4855347bbe0

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Wed Jan  2 18:56:37 2013 +0100

rtems: Simplify _Event_Surrender()

Remove superfluous test for _ISR_Is_in_progress().

---

 cpukit/rtems/src/eventsurrender.c |   10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/cpukit/rtems/src/eventsurrender.c b/cpukit/rtems/src/eventsurrender.c
index ce7edc7..6e8dbbd 100644
--- a/cpukit/rtems/src/eventsurrender.c
+++ b/cpukit/rtems/src/eventsurrender.c
@@ -57,11 +57,13 @@ void _Event_Surrender(
   }
 
   /*
-   *  If we are in an ISR and sending to the current thread, then
-   *  we have a critical section issue to deal with.
+   *  If we are sending to the executing thread, then we have a critical
+   *  section issue to deal with.  The entity sending to the executing thread
+   *  can be either the executing thread or an ISR.  In case it is the
+   *  executing thread, then the blocking operation state is not equal to
+   *  THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED.
    */
-  if ( _ISR_Is_in_progress() &&
-       _Thread_Is_executing( the_thread ) &&
+  if ( _Thread_Is_executing( the_thread ) &&
        *sync_state == THREAD_BLOCKING_OPERATION_NOTHING_HAPPENED ) {
     if ( seized_events == event_condition || _Options_Is_any(option_set) ) {
       event->pending_events = _Event_sets_Clear(




More information about the vc mailing list