Hi Nils, Yannick created a test case stress-testing forks with UST, and it seems we need to do some debugging before a release.
git://git.dorsal.polymtl.ca/~ybrosseau/ust.git forkmany branch tests/forkmany Problem 1: If we don't set ulimit -n to very high value, we bust the number of file descriptors (1024) in the "flat fork" test (it starts failing around 60 forks on my machine). This shows that the consumer threads seem to keep 2 file descriptors open per core per process, event after the processes have exited. It's not timing related, as I tried adding sleep(1) in there. The consumer thread loop seems to exit cleanly, but for some reason the file descriptors are still open (probably). Problem 2: Yannick experienced a crash due to open_buffers_list corruption. I expect that we are lacking some list protection (locking) in both init() and destructor of libust (race between listener thread, fork, init and destructor). I would like to serialize all these operations with the listener_thread_data_mutex. So I'm sending these leftover bugs to you, because I have gone way beyond the time I can allocate to UST debugging at the moment. We need many more stress tests like this. Thanks, Mathieu -- Mathieu Desnoyers Operating System Efficiency R&D Consultant EfficiOS Inc. http://www.efficios.com _______________________________________________ ltt-dev mailing list [email protected] http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
