change log for rtems (2010-11-09)

rtems-vc at rtems.org rtems-vc at rtems.org
Tue Nov 9 10:11:42 UTC 2010


 *sh*:
2010-11-09	Sebastian Huber <sebastian.huber at embedded-brains.de>

	* score/src/watchdoginsert.c: Removed superfluous cast and use
	appropriate API function.  This special case handling is obsolete
	since 2006 with the introduction of compiler memory barriers in the
	interrupt routines.  Removed obsolete comments.

M 1.2643  cpukit/ChangeLog
M   1.11  cpukit/score/src/watchdoginsert.c

diff -u rtems/cpukit/ChangeLog:1.2642 rtems/cpukit/ChangeLog:1.2643
--- rtems/cpukit/ChangeLog:1.2642	Thu Nov  4 18:00:04 2010
+++ rtems/cpukit/ChangeLog	Tue Nov  9 03:14:10 2010
@@ -1,3 +1,10 @@
+2010-11-09	Sebastian Huber <sebastian.huber at embedded-brains.de>
+
+	* score/src/watchdoginsert.c: Removed superfluous cast and use
+	appropriate API function.  This special case handling is obsolete
+	since 2006 with the introduction of compiler memory barriers in the
+	interrupt routines.  Removed obsolete comments.
+
 2010-11-04	Joel Sherrill <joel.sherrill at oarcorp.com>
 
 	* libmisc/stackchk/check.c: Make compile again.

diff -u rtems/cpukit/score/src/watchdoginsert.c:1.10 rtems/cpukit/score/src/watchdoginsert.c:1.11
--- rtems/cpukit/score/src/watchdoginsert.c:1.10	Wed Aug 17 17:49:56 2005
+++ rtems/cpukit/score/src/watchdoginsert.c	Tue Nov  9 03:14:10 2010
@@ -59,21 +59,7 @@
 restart:
   delta_interval = the_watchdog->initial;
 
-  /*
-   * We CANT use _Watchdog_First() here, because a TICK interrupt
-   * could modify the chain during the _ISR_Flash() below. Hence,
-   * the header is pointing to volatile data. The _Watchdog_First()
-   * INLINE routine (but not the macro - note the subtle difference)
-   * casts away the 'volatile'...
-   *
-   * Also, this is only necessary because we call no other routine
-   * from this piece of code, hence the compiler thinks it's safe to
-   * cache *header!!
-   *
-   *  Till Straumann, 7/2003 (gcc-3.2.2 -O4 on powerpc)
-   *
-   */
-  for ( after = (Watchdog_Control *) ((volatile Chain_Control *)header)->first ;
+  for ( after = _Watchdog_First( header ) ;
         ;
         after = _Watchdog_Next( after ) ) {
 
@@ -87,15 +73,6 @@
 
      delta_interval -= after->delta_interval;
 
-     /*
-      *  If you experience problems comment out the _ISR_Flash line.
-      *  3.2.0 was the first release with this critical section redesigned.
-      *  Under certain circumstances, the PREVIOUS critical section algorithm
-      *  used around this flash point allowed interrupts to execute
-      *  which violated the design assumptions.  The critical section
-      *  mechanism used here WAS redesigned to address this.
-      */
-
      _ISR_Flash( level );
 
      if ( the_watchdog->state != WATCHDOG_BEING_INSERTED ) {



--

Generated by Deluxe Loginfo [http://www.codewiz.org/projects/index.html#loginfo] 2.122 by Bernardo Innocenti <bernie at develer.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/vc/attachments/20101109/5e5d4d4f/attachment.html>


More information about the vc mailing list