Hello, we are using Rtems 4.10 (RCC-1.2.16. RTEMS-4.10, GCC 4.4.6), compiling for two processor nodes and sharing data using global message queues. We have no issues when receiving messages if we set the "no wait" option: rtems_message_queue_receive(rtemsId, data, size, RTEMS_NO_WAIT, 0);
But if we set a wait, for example, of 1 second: rtems_message_queue_receive(rtemsId, data, size, RTEMS_WAIT, 100); then the node that is blocked in the queue reception crashes (stop running) after several calls to rtems_message_queue_receive. With a shared memory area of 0x1000 bytes rtems_message_queue_receive can be called 9 times and the next time it crashes. With 0x2000 bytes: 19 calls and it crash with the following one. With 0x3000 bytes: 29 calls and then it crashes. We do not see any errors, program just stop running (the other node runs correctly). For local queues we have no problems. Do you have any idea why this is happening? Are we missing some configuration for multiprocessing? thanks in advance Diego /* Override default SHM configuration */ shm_config_table BSP_shm_cfgtbl = { .base = (void *) 0x40000000, .length = 0x1000 }; Diego Mercado diego.me...@gmail.com +54 294 (15)4507222 +54 9 294 450 7222 San Carlos de Bariloche Rio Negro Patagonia Argentina
_______________________________________________ users mailing list users@rtems.org http://lists.rtems.org/mailman/listinfo/users