Changeset b295019 in rtems


Ignore:
Timestamp:
Oct 25, 2006, 11:27:28 AM (13 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Children:
32d19cb
Parents:
b94e68d
Message:

2006-10-25 Jennifer Averett <jennifer@…>

  • libcsupport/src/termios.c: Change attribute of semaphore. It was counting interrupts not acting as a condition synchronization mutex. Since the caller did not always need to obtain the semaphore, it was not being decremented until there was no data. This could occur after hours of running a system and thousands of interrupts. The code in fillBufferQueue would spin until it had consumed all of those semaphore counts.
Location:
cpukit
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • cpukit/ChangeLog

    rb94e68d rb295019  
     12006-10-25      Jennifer Averett <jennifer@oarcorp.com>
     2
     3        * libcsupport/src/termios.c: Change attribute of semaphore. It was
     4        counting interrupts not acting as a condition synchronization mutex.
     5        Since the caller did not always need to obtain the semaphore, it was
     6        not being decremented until there was no data. This could occur after
     7        hours of running a system and thousands of interrupts. The code in
     8        fillBufferQueue would spin until it had consumed all of those
     9        semaphore counts.
     10
    1112006-10-20      Ralf Corsépius <ralf.corsepius@rtems.org>
    212
  • cpukit/libcsupport/src/termios.c

    rb94e68d rb295019  
    260260                                rtems_build_name ('T', 'R', 'r', c),
    261261                                0,
    262                                 RTEMS_COUNTING_SEMAPHORE | RTEMS_PRIORITY,
     262                                RTEMS_SIMPLE_BINARY_SEMAPHORE | RTEMS_PRIORITY,
    263263                                RTEMS_NO_PRIORITY,
    264264                                &tty->rawInBuf.Semaphore);
Note: See TracChangeset for help on using the changeset viewer.