summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2005-03-17 14:30:40 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2005-03-17 14:30:40 +0000
commit0be243352f2e2b263f5db2acf10d4a5390e94dc4 (patch)
tree765a20f55c21042510b6c4ceff040e22dc3047c8
parent2005-03-17 Joel Sherrill <joel@OARcorp.com> (diff)
downloadrtems-0be243352f2e2b263f5db2acf10d4a5390e94dc4.tar.bz2
2005-03-17 Joel Sherrill <joel@OARcorp.com>
PR 692/rtems * src/regiongetsegment.c, src/regionreturnsegment.c: The Region Manager did not follow the proper protocol when blocking and unblocking tasks waiting on buffers. This was a bug introduced with the transition to an Allocation Mutex.
-rw-r--r--cpukit/rtems/ChangeLog8
-rw-r--r--cpukit/rtems/src/regionreturnsegment.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/cpukit/rtems/ChangeLog b/cpukit/rtems/ChangeLog
index 872a271ea3..cc58bf5b38 100644
--- a/cpukit/rtems/ChangeLog
+++ b/cpukit/rtems/ChangeLog
@@ -1,3 +1,11 @@
+2005-03-17 Joel Sherrill <joel@OARcorp.com>
+
+ PR 692/rtems
+ * src/regiongetsegment.c, src/regionreturnsegment.c: The Region
+ Manager did not follow the proper protocol when blocking and
+ unblocking tasks waiting on buffers. This was a bug introduced with
+ the transition to an Allocation Mutex.
+
2005-03-17 Joel Sherrill <joel@OARcorp.com>
PR 745/rtems
diff --git a/cpukit/rtems/src/regionreturnsegment.c b/cpukit/rtems/src/regionreturnsegment.c
index c9c134e02b..990fd5a714 100644
--- a/cpukit/rtems/src/regionreturnsegment.c
+++ b/cpukit/rtems/src/regionreturnsegment.c
@@ -104,8 +104,8 @@ rtems_status_code rtems_region_return_segment(
* NOTE: The following loop is O(n) where n is the number of
* threads whose memory request is satisfied.
*/
- _RTEMS_Unlock_allocator();
_Thread_Disable_dispatch();
+ _RTEMS_Unlock_allocator();
for ( ; ; ) {
the_thread = _Thread_queue_First( &the_region->Wait_queue );