change log for rtems (2011-09-09)
rtems-vc at rtems.org
rtems-vc at rtems.org
Fri Sep 9 12:10:16 UTC 2011
*sh*:
2011-09-09 Sebastian Huber <sebastian.huber at embedded-brains.de>
PR 1844/cpukit
* rtems/include/rtems/rtems/msgmp.h: Define
MESSAGE_QUEUE_MP_PACKET_SIZE.
* rtems/src/msgmp.c, rtems/src/msgqcreate.c: Use
MESSAGE_QUEUE_MP_PACKET_SIZE.
M 1.2916 cpukit/ChangeLog
M 1.23 cpukit/rtems/include/rtems/rtems/msgmp.h
M 1.31 cpukit/rtems/src/msgmp.c
M 1.18 cpukit/rtems/src/msgqcreate.c
diff -u rtems/cpukit/ChangeLog:1.2915 rtems/cpukit/ChangeLog:1.2916
--- rtems/cpukit/ChangeLog:1.2915 Fri Sep 9 06:02:02 2011
+++ rtems/cpukit/ChangeLog Fri Sep 9 06:19:42 2011
@@ -1,5 +1,13 @@
2011-09-09 Sebastian Huber <sebastian.huber at embedded-brains.de>
+ PR 1844/cpukit
+ * rtems/include/rtems/rtems/msgmp.h: Define
+ MESSAGE_QUEUE_MP_PACKET_SIZE.
+ * rtems/src/msgmp.c, rtems/src/msgqcreate.c: Use
+ MESSAGE_QUEUE_MP_PACKET_SIZE.
+
+2011-09-09 Sebastian Huber <sebastian.huber at embedded-brains.de>
+
PR 1873/cpukit
* score/include/rtems/score/heap.h: Revert previous commit.
* sapi/include/confdefs.h: Use proper constants in
diff -u rtems/cpukit/rtems/include/rtems/rtems/msgmp.h:1.22 rtems/cpukit/rtems/include/rtems/rtems/msgmp.h:1.23
--- rtems/cpukit/rtems/include/rtems/rtems/msgmp.h:1.22 Wed Aug 5 13:17:12 2009
+++ rtems/cpukit/rtems/include/rtems/rtems/msgmp.h Fri Sep 9 06:19:42 2011
@@ -76,6 +76,9 @@
CORE_message_queue_Buffer Buffer;
} Message_queue_MP_Packet;
+#define MESSAGE_QUEUE_MP_PACKET_SIZE \
+ offsetof(Message_queue_MP_Packet, Buffer.buffer)
+
/**
* @brief _Message_queue_MP_Send_process_packet
*
diff -u rtems/cpukit/rtems/src/msgmp.c:1.30 rtems/cpukit/rtems/src/msgmp.c:1.31
--- rtems/cpukit/rtems/src/msgmp.c:1.30 Fri Sep 9 05:57:58 2011
+++ rtems/cpukit/rtems/src/msgmp.c Fri Sep 9 06:19:42 2011
@@ -27,9 +27,6 @@
#include <rtems/score/watchdog.h>
#include <rtems/rtems/support.h>
-#define MESSAGE_QUEUE_MP_PACKET_SIZE \
- offsetof(Message_queue_MP_Packet, Buffer.buffer)
-
RTEMS_STATIC_ASSERT(
MESSAGE_QUEUE_MP_PACKET_SIZE <= MP_PACKET_MINIMUM_PACKET_SIZE,
Message_queue_MP_Packet
@@ -116,10 +113,10 @@
the_packet = _Message_queue_MP_Get_packet();
the_packet->Prefix.the_class = MP_PACKET_MESSAGE_QUEUE;
- the_packet->Prefix.length = sizeof(Message_queue_MP_Packet);
+ the_packet->Prefix.length = MESSAGE_QUEUE_MP_PACKET_SIZE;
if ( size_p )
the_packet->Prefix.length += *size_p;
- the_packet->Prefix.to_convert = sizeof(Message_queue_MP_Packet);
+ the_packet->Prefix.to_convert = MESSAGE_QUEUE_MP_PACKET_SIZE;
/*
* make sure message is not too big for our MPCI driver
@@ -162,8 +159,8 @@
the_packet = _Message_queue_MP_Get_packet();
the_packet->Prefix.the_class = MP_PACKET_MESSAGE_QUEUE;
- the_packet->Prefix.length = sizeof(Message_queue_MP_Packet);
- the_packet->Prefix.to_convert = sizeof(Message_queue_MP_Packet);
+ the_packet->Prefix.length = MESSAGE_QUEUE_MP_PACKET_SIZE;
+ the_packet->Prefix.to_convert = MESSAGE_QUEUE_MP_PACKET_SIZE;
if (! _Options_Is_no_wait(option_set))
the_packet->Prefix.timeout = timeout;
diff -u rtems/cpukit/rtems/src/msgqcreate.c:1.17 rtems/cpukit/rtems/src/msgqcreate.c:1.18
--- rtems/cpukit/rtems/src/msgqcreate.c:1.17 Sun Jul 24 18:55:10 2011
+++ rtems/cpukit/rtems/src/msgqcreate.c Fri Sep 9 06:19:42 2011
@@ -95,7 +95,7 @@
*/
max_packet_payload_size = _MPCI_table->maximum_packet_size
- - sizeof ( Message_queue_MP_Packet );
+ - MESSAGE_QUEUE_MP_PACKET_SIZE;
if ( is_global && max_packet_payload_size < max_message_size )
return RTEMS_INVALID_SIZE;
#endif
*sh*:
2011-09-09 Sebastian Huber <sebastian.huber at embedded-brains.de>
PR 1901/cpukit
* score/src/threadhandler.c: Do not use internal tasks for global
initialization in MP configuration.
M 1.2917 cpukit/ChangeLog
M 1.37 cpukit/score/src/threadhandler.c
diff -u rtems/cpukit/ChangeLog:1.2916 rtems/cpukit/ChangeLog:1.2917
--- rtems/cpukit/ChangeLog:1.2916 Fri Sep 9 06:19:42 2011
+++ rtems/cpukit/ChangeLog Fri Sep 9 06:25:23 2011
@@ -1,5 +1,11 @@
2011-09-09 Sebastian Huber <sebastian.huber at embedded-brains.de>
+ PR 1901/cpukit
+ * score/src/threadhandler.c: Do not use internal tasks for global
+ initialization in MP configuration.
+
+2011-09-09 Sebastian Huber <sebastian.huber at embedded-brains.de>
+
PR 1844/cpukit
* rtems/include/rtems/rtems/msgmp.h: Define
MESSAGE_QUEUE_MP_PACKET_SIZE.
diff -u rtems/cpukit/score/src/threadhandler.c:1.36 rtems/cpukit/score/src/threadhandler.c:1.37
--- rtems/cpukit/score/src/threadhandler.c:1.36 Mon Aug 29 16:30:32 2011
+++ rtems/cpukit/score/src/threadhandler.c Fri Sep 9 06:25:23 2011
@@ -89,8 +89,8 @@
ISR_Level level;
Thread_Control *executing;
#if defined(EXECUTE_GLOBAL_CONSTRUCTORS)
- static char doneConstructors;
- char doneCons;
+ static bool doneConstructors;
+ bool doCons;
#endif
executing = _Thread_Executing;
@@ -110,8 +110,15 @@
_ISR_Set_level(level);
#if defined(EXECUTE_GLOBAL_CONSTRUCTORS)
- doneCons = doneConstructors;
- doneConstructors = 1;
+ #if defined(RTEMS_MULTIPROCESSING)
+ doCons = !doneConstructors
+ && _Objects_Get_API( executing->Object.id ) != OBJECTS_INTERNAL_API;
+ if (doCons)
+ doneConstructors = true;
+ #else
+ doCons = !doneConstructors;
+ doneConstructors = true;
+ #endif
#endif
#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )
@@ -143,7 +150,7 @@
* in any configuration I know of and it generates a warning on every
* RTEMS target configuration. --joel (12 May 2007)
*/
- if (!doneCons) /* && (volatile void *)_init) */ {
+ if (doCons) /* && (volatile void *)_init) */ {
INIT_NAME ();
#if defined(RTEMS_SMP)
--
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/20110909/e2d44075/attachment-0001.html>
More information about the vc
mailing list