> If you have 39 tasks in Runnable state, I guess that they are not all > blocked in libc read ? > So, you might investigate which task(s) are really still doing something > by doing e.g. > thread apply all bt > and/or put breakpoints at places that you know should be soon > encountered > by the runnable tasks and continue the execution. > And then control-c, and redo the above to see if some tasks are/have > still > progressed. > > Also, from gdb, you can do > monitor v.info scheduler > to have the valgrind status of the tasks/threads.
Thanks for the commands. All 38 threads are waiting on the 1st one (pthread_cond_wait). The first one is blocked on the file read. > You can also use the option --trace-sched=yes to see how and if valgrind > still schedules the threads. > > Note that at my work, we are using valgrind + Ada tasks without > any particular problem. The trace-sched option produces a lot of output continuously: --20282-- SCHED[1]: releasing lock (VG_(scheduler):timeslice) -> VgTs_Yielding --20282-- SCHED[1]: acquired lock (VG_(scheduler):timeslice) --20282-- SCHED[1]: releasing lock (VG_(client_syscall)[async]) -> VgTs_WaitSys --20282-- SCHED[1]: acquired lock (VG_(client_syscall)[async]) > Possibly also, the change in the way the threads are scheduled causes an > application deadlock. > > You might thus also try --tool=helgrind just in case this would reveal > some > non thread safe bug ... There seems to be some thread errors like: Lock at 0xD92BC0 was first observed Possible data race during read of size 8 at 0x7B459FD8 by thread #1 This conflicts with a previous write of size 8 by thread #2 Or can these be false positives? João M. S. Silva ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Valgrind-users mailing list Valgrind-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-users