Hi, > > I've played a bit with the thread priorities of main() and the delegate. > However, even with the delegates having a higher priority than main(), the > failure still showed up. > > I've tried the same, but with changed priorities I could *not* reproduce the > error. (I did 20 tries). > I've added the following lines: [...] > ecos-patched/ecos/packages/reconos/current/src/delegate.tmpl > 334: cyg_handle_t my = cyg_thread_self(); > 335: cyg_thread_set_priority(my, 1); > > Does this also work for you?
I've added the same modifications to delegate.tmpl, and it seems to work. This does however remove the possibility of an application to give hardware threads different scheduling priorities when creating them. Unfortunately, when trying it "the clean way" within the test routine by creating the hardware threads with the appropriate pthread_attr to set the POSIX scheduling priority, it didn't work reliably, but still sporadically produced the 'too early' error. We need to look more closely into this - maybe there's something wrong with the POSIX routines for creating hardware threads. I've also created our first issue (yay!) in the github repository for tracking this. Best, - Enno _______________________________________________ Reconos-devel_lists.reconos.de mailing list reconos-devel@lists.reconos.de https://ml01.ispgateway.de/mailman/listinfo/reconos-devel_lists.reconos.de